blob: b8d33624c5f56d390f738f8b5b94823800faf864 [file] [log] [blame]
Manivannan Sadhasivamae485b52018-06-14 23:38:35 +05301/* SPDX-License-Identifier: GPL-2.0+ */
2/*
Amit Singh Tomar8b520ac2020-04-19 19:28:30 +05303 * Actions Semi SoCs Clock Definitions
Manivannan Sadhasivamae485b52018-06-14 23:38:35 +05304 *
5 * Copyright (C) 2015 Actions Semi Co., Ltd.
6 * Copyright (C) 2018 Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
7 *
8 */
9
Amit Singh Tomar8b520ac2020-04-19 19:28:30 +053010#ifndef _OWL_CLK_H_
11#define _OWL_CLK_H_
Manivannan Sadhasivamae485b52018-06-14 23:38:35 +053012
13#include <clk-uclass.h>
14
Amit Singh Tomar8b520ac2020-04-19 19:28:30 +053015enum owl_soc {
16 S700,
17 S900,
18};
19
Manivannan Sadhasivamae485b52018-06-14 23:38:35 +053020struct owl_clk_priv {
21 phys_addr_t base;
22};
23
24/* BUSCLK register definitions */
25#define CMU_PDBGDIV_8 7
26#define CMU_PDBGDIV_SHIFT 26
27#define CMU_PDBGDIV_DIV (CMU_PDBGDIV_8 << CMU_PDBGDIV_SHIFT)
28#define CMU_PERDIV_8 7
29#define CMU_PERDIV_SHIFT 20
30#define CMU_PERDIV_DIV (CMU_PERDIV_8 << CMU_PERDIV_SHIFT)
31#define CMU_NOCDIV_2 1
32#define CMU_NOCDIV_SHIFT 19
33#define CMU_NOCDIV_DIV (CMU_NOCDIV_2 << CMU_NOCDIV_SHIFT)
34#define CMU_DMMCLK_SRC_APLL 2
35#define CMU_DMMCLK_SRC_SHIFT 10
36#define CMU_DMMCLK_SRC (CMU_DMMCLK_SRC_APLL << CMU_DMMCLK_SRC_SHIFT)
37#define CMU_APBCLK_DIV BIT(8)
38#define CMU_NOCCLK_SRC BIT(7)
39#define CMU_AHBCLK_DIV BIT(4)
40#define CMU_CORECLK_MASK 3
41#define CMU_CORECLK_CPLL BIT(1)
42#define CMU_CORECLK_HOSC BIT(0)
43
44/* COREPLL register definitions */
45#define CMU_COREPLL_EN BIT(9)
46#define CMU_COREPLL_HOSC_EN BIT(8)
47#define CMU_COREPLL_OUT (1104 / 24)
48
49/* DEVPLL register definitions */
50#define CMU_DEVPLL_CLK BIT(12)
51#define CMU_DEVPLL_EN BIT(8)
52#define CMU_DEVPLL_OUT (660 / 6)
53
54/* UARTCLK register definitions */
55#define CMU_UARTCLK_SRC_DEVPLL BIT(16)
56
Manivannan Sadhasivamae485b52018-06-14 23:38:35 +053057#define PLL_STABILITY_WAIT_US 50
58
Amit Singh Tomar8b520ac2020-04-19 19:28:30 +053059#define CMU_DEVCLKEN1_UART5 BIT(21)
60#define CMU_DEVCLKEN1_UART3 BIT(11)
61
62#define CMU_DEVCLKEN1_ETH_S700 BIT(23)
63
Manivannan Sadhasivamae485b52018-06-14 23:38:35 +053064#endif