xref: /rk3399_rockchip-uboot/arch/arm/include/asm/arch-mx5/crm_regs.h (revision 5a1095a830299aef8dd32495e505e92ab1749e89)
1ff9f475dSJason Liu /*
2ff9f475dSJason Liu  * (C) Copyright 2009 Freescale Semiconductor, Inc.
3ff9f475dSJason Liu  *
41a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
5ff9f475dSJason Liu  */
6ff9f475dSJason Liu 
7ff9f475dSJason Liu #ifndef __ARCH_ARM_MACH_MX51_CRM_REGS_H__
8ff9f475dSJason Liu #define __ARCH_ARM_MACH_MX51_CRM_REGS_H__
9ff9f475dSJason Liu 
10ff9f475dSJason Liu #define MXC_CCM_BASE	CCM_BASE_ADDR
11ff9f475dSJason Liu 
12ff9f475dSJason Liu /* DPLL register mapping structure */
13ff9f475dSJason Liu struct mxc_pll_reg {
14ff9f475dSJason Liu 	u32 ctrl;
15ff9f475dSJason Liu 	u32 config;
16ff9f475dSJason Liu 	u32 op;
17ff9f475dSJason Liu 	u32 mfd;
18ff9f475dSJason Liu 	u32 mfn;
19ff9f475dSJason Liu 	u32 mfn_minus;
20ff9f475dSJason Liu 	u32 mfn_plus;
21ff9f475dSJason Liu 	u32 hfs_op;
22ff9f475dSJason Liu 	u32 hfs_mfd;
23ff9f475dSJason Liu 	u32 hfs_mfn;
24ff9f475dSJason Liu 	u32 mfn_togc;
25ff9f475dSJason Liu 	u32 destat;
26ff9f475dSJason Liu };
27ff9f475dSJason Liu 
28ff9f475dSJason Liu /* Register maping of CCM*/
29ff9f475dSJason Liu struct mxc_ccm_reg {
30ff9f475dSJason Liu 	u32 ccr;	/* 0x0000 */
31ff9f475dSJason Liu 	u32 ccdr;
32ff9f475dSJason Liu 	u32 csr;
33ff9f475dSJason Liu 	u32 ccsr;
34ff9f475dSJason Liu 	u32 cacrr;	/* 0x0010*/
35ff9f475dSJason Liu 	u32 cbcdr;
36ff9f475dSJason Liu 	u32 cbcmr;
37ff9f475dSJason Liu 	u32 cscmr1;
38ff9f475dSJason Liu 	u32 cscmr2;	/* 0x0020 */
39ff9f475dSJason Liu 	u32 cscdr1;
40ff9f475dSJason Liu 	u32 cs1cdr;
41ff9f475dSJason Liu 	u32 cs2cdr;
42ff9f475dSJason Liu 	u32 cdcdr;	/* 0x0030 */
43*68968901SMarek Vasut 	u32 chsccdr;
44ff9f475dSJason Liu 	u32 cscdr2;
45ff9f475dSJason Liu 	u32 cscdr3;
46ff9f475dSJason Liu 	u32 cscdr4;	/* 0x0040 */
47ff9f475dSJason Liu 	u32 cwdr;
48ff9f475dSJason Liu 	u32 cdhipr;
49ff9f475dSJason Liu 	u32 cdcr;
50ff9f475dSJason Liu 	u32 ctor;	/* 0x0050 */
51ff9f475dSJason Liu 	u32 clpcr;
52ff9f475dSJason Liu 	u32 cisr;
53ff9f475dSJason Liu 	u32 cimr;
54ff9f475dSJason Liu 	u32 ccosr;	/* 0x0060 */
55ff9f475dSJason Liu 	u32 cgpr;
56ff9f475dSJason Liu 	u32 CCGR0;
57ff9f475dSJason Liu 	u32 CCGR1;
58ff9f475dSJason Liu 	u32 CCGR2;	/* 0x0070 */
59ff9f475dSJason Liu 	u32 CCGR3;
60ff9f475dSJason Liu 	u32 CCGR4;
61ff9f475dSJason Liu 	u32 CCGR5;
62ff9f475dSJason Liu 	u32 CCGR6;	/* 0x0080 */
6370cc86a6SFabio Estevam #ifdef CONFIG_MX53
6470cc86a6SFabio Estevam 	u32 CCGR7;      /* 0x0084 */
6570cc86a6SFabio Estevam #endif
66ff9f475dSJason Liu 	u32 cmeor;
67ff9f475dSJason Liu };
68ff9f475dSJason Liu 
69b9479298SBenoît Thébaudeau /* Define the bits in register CCR */
70b9479298SBenoît Thébaudeau #define MXC_CCM_CCR_COSC_EN			(0x1 << 12)
71b9479298SBenoît Thébaudeau #if defined(CONFIG_MX51)
72b9479298SBenoît Thébaudeau #define MXC_CCM_CCR_FPM_MULT			(0x1 << 11)
73b9479298SBenoît Thébaudeau #endif
74b9479298SBenoît Thébaudeau #define MXC_CCM_CCR_CAMP2_EN			(0x1 << 10)
75b9479298SBenoît Thébaudeau #define MXC_CCM_CCR_CAMP1_EN			(0x1 << 9)
76b9479298SBenoît Thébaudeau #if defined(CONFIG_MX51)
77b9479298SBenoît Thébaudeau #define MXC_CCM_CCR_FPM_EN			(0x1 << 8)
78b9479298SBenoît Thébaudeau #endif
79b9479298SBenoît Thébaudeau #define MXC_CCM_CCR_OSCNT_OFFSET		0
80b9479298SBenoît Thébaudeau #define MXC_CCM_CCR_OSCNT_MASK			0xFF
81b9479298SBenoît Thébaudeau #define MXC_CCM_CCR_OSCNT(v)			((v) & 0xFF)
82b9479298SBenoît Thébaudeau #define MXC_CCM_CCR_OSCNT_RD(r)			((r) & 0xFF)
83b9479298SBenoît Thébaudeau 
84649dc8abSBenoît Thébaudeau /* Define the bits in register CCSR */
85649dc8abSBenoît Thébaudeau #if defined(CONFIG_MX51)
86649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_LP_APM			(0x1 << 9)
87649dc8abSBenoît Thébaudeau #elif defined(CONFIG_MX53)
88649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_LP_APM			(0x1 << 10)
89649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_PLL4_SW_CLK_SEL		(0x1 << 9)
90649dc8abSBenoît Thébaudeau #endif
91649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_STEP_SEL_OFFSET		7
92649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_STEP_SEL_MASK		(0x3 << 7)
93649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_STEP_SEL(v)		(((v) & 0x3) << 7)
94649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_STEP_SEL_RD(r)		(((r) >> 7) & 0x3)
95649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_PLL2_DIV_PODF_OFFSET	5
96649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_PLL2_DIV_PODF_MASK		(0x3 << 5)
97649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_PLL2_DIV_PODF(v)		(((v) & 0x3) << 5)
98649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_PLL2_DIV_PODF_RD(r)	(((r) >> 5) & 0x3)
99649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_PLL3_DIV_PODF_OFFSET	3
100649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_PLL3_DIV_PODF_MASK		(0x3 << 3)
101649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_PLL3_DIV_PODF(v)		(((v) & 0x3) << 3)
102649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_PLL3_DIV_PODF_RD(r)	(((r) >> 3) & 0x3)
103649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_PLL1_SW_CLK_SEL		(0x1 << 2)
104649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_PLL2_SW_CLK_SEL		(0x1 << 1)
105649dc8abSBenoît Thébaudeau #define MXC_CCM_CCSR_PLL3_SW_CLK_SEL		0x1
106649dc8abSBenoît Thébaudeau 
107ff9f475dSJason Liu /* Define the bits in register CACRR */
108ff9f475dSJason Liu #define MXC_CCM_CACRR_ARM_PODF_OFFSET		0
109ff9f475dSJason Liu #define MXC_CCM_CACRR_ARM_PODF_MASK		0x7
110846b3898SBenoît Thébaudeau #define MXC_CCM_CACRR_ARM_PODF(v)		((v) & 0x7)
111846b3898SBenoît Thébaudeau #define MXC_CCM_CACRR_ARM_PODF_RD(r)		((r) & 0x7)
112ff9f475dSJason Liu 
113ff9f475dSJason Liu /* Define the bits in register CBCDR */
11470cc86a6SFabio Estevam #define MXC_CCM_CBCDR_DDR_HIFREQ_SEL		(0x1 << 30)
11570cc86a6SFabio Estevam #define MXC_CCM_CBCDR_DDR_PODF_OFFSET		27
116846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_DDR_PODF_MASK		(0x7 << 27)
117846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_DDR_PODF(v)		(((v) & 0x7) << 27)
118846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_DDR_PODF_RD(r)		(((r) >> 27) & 0x7)
119ff9f475dSJason Liu #define MXC_CCM_CBCDR_EMI_CLK_SEL		(0x1 << 26)
120ff9f475dSJason Liu #define MXC_CCM_CBCDR_PERIPH_CLK_SEL		(0x1 << 25)
121ff9f475dSJason Liu #define MXC_CCM_CBCDR_EMI_PODF_OFFSET		22
122ff9f475dSJason Liu #define MXC_CCM_CBCDR_EMI_PODF_MASK		(0x7 << 22)
123846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_EMI_PODF(v)		(((v) & 0x7) << 22)
124846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_EMI_PODF_RD(r)		(((r) >> 22) & 0x7)
125ff9f475dSJason Liu #define MXC_CCM_CBCDR_AXI_B_PODF_OFFSET		19
126ff9f475dSJason Liu #define MXC_CCM_CBCDR_AXI_B_PODF_MASK		(0x7 << 19)
127846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_AXI_B_PODF(v)		(((v) & 0x7) << 19)
128846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_AXI_B_PODF_RD(r)		(((r) >> 19) & 0x7)
129ff9f475dSJason Liu #define MXC_CCM_CBCDR_AXI_A_PODF_OFFSET		16
130ff9f475dSJason Liu #define MXC_CCM_CBCDR_AXI_A_PODF_MASK		(0x7 << 16)
131846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_AXI_A_PODF(v)		(((v) & 0x7) << 16)
132846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_AXI_A_PODF_RD(r)		(((r) >> 16) & 0x7)
133ff9f475dSJason Liu #define MXC_CCM_CBCDR_NFC_PODF_OFFSET		13
134ff9f475dSJason Liu #define MXC_CCM_CBCDR_NFC_PODF_MASK		(0x7 << 13)
135846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_NFC_PODF(v)		(((v) & 0x7) << 13)
136846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_NFC_PODF_RD(r)		(((r) >> 13) & 0x7)
137ff9f475dSJason Liu #define MXC_CCM_CBCDR_AHB_PODF_OFFSET		10
138ff9f475dSJason Liu #define MXC_CCM_CBCDR_AHB_PODF_MASK		(0x7 << 10)
139846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_AHB_PODF(v)		(((v) & 0x7) << 10)
140846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_AHB_PODF_RD(r)		(((r) >> 10) & 0x7)
141ff9f475dSJason Liu #define MXC_CCM_CBCDR_IPG_PODF_OFFSET		8
142ff9f475dSJason Liu #define MXC_CCM_CBCDR_IPG_PODF_MASK		(0x3 << 8)
143846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_IPG_PODF(v)		(((v) & 0x3) << 8)
144846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_IPG_PODF_RD(r)		(((r) >> 8) & 0x3)
145ff9f475dSJason Liu #define MXC_CCM_CBCDR_PERCLK_PRED1_OFFSET	6
146ff9f475dSJason Liu #define MXC_CCM_CBCDR_PERCLK_PRED1_MASK		(0x3 << 6)
147846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_PERCLK_PRED1(v)		(((v) & 0x3) << 6)
148846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_PERCLK_PRED1_RD(r)	(((r) >> 6) & 0x3)
149ff9f475dSJason Liu #define MXC_CCM_CBCDR_PERCLK_PRED2_OFFSET	3
150ff9f475dSJason Liu #define MXC_CCM_CBCDR_PERCLK_PRED2_MASK		(0x7 << 3)
151846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_PERCLK_PRED2(v)		(((v) & 0x7) << 3)
152846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_PERCLK_PRED2_RD(r)	(((r) >> 3) & 0x7)
153ff9f475dSJason Liu #define MXC_CCM_CBCDR_PERCLK_PODF_OFFSET	0
154ff9f475dSJason Liu #define MXC_CCM_CBCDR_PERCLK_PODF_MASK		0x7
155846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_PERCLK_PODF(v)		((v) & 0x7)
156846b3898SBenoît Thébaudeau #define MXC_CCM_CBCDR_PERCLK_PODF_RD(r)		((r) & 0x7)
157ff9f475dSJason Liu 
158ff9f475dSJason Liu /* Define the bits in register CSCMR1 */
159ff9f475dSJason Liu #define MXC_CCM_CSCMR1_SSI_EXT2_CLK_SEL_OFFSET		30
160ff9f475dSJason Liu #define MXC_CCM_CSCMR1_SSI_EXT2_CLK_SEL_MASK		(0x3 << 30)
161846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_SSI_EXT2_CLK_SEL(v)		(((v) & 0x3) << 30)
162846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_SSI_EXT2_CLK_SEL_RD(r)		(((r) >> 30) & 0x3)
163ff9f475dSJason Liu #define MXC_CCM_CSCMR1_SSI_EXT1_CLK_SEL_OFFSET		28
164ff9f475dSJason Liu #define MXC_CCM_CSCMR1_SSI_EXT1_CLK_SEL_MASK		(0x3 << 28)
165846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_SSI_EXT1_CLK_SEL(v)		(((v) & 0x3) << 28)
166846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_SSI_EXT1_CLK_SEL_RD(r)		(((r) >> 28) & 0x3)
167ff9f475dSJason Liu #define MXC_CCM_CSCMR1_USB_PHY_CLK_SEL			(0x1 << 26)
168ff9f475dSJason Liu #define MXC_CCM_CSCMR1_UART_CLK_SEL_OFFSET		24
169ff9f475dSJason Liu #define MXC_CCM_CSCMR1_UART_CLK_SEL_MASK		(0x3 << 24)
170846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_UART_CLK_SEL(v)			(((v) & 0x3) << 24)
171846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_UART_CLK_SEL_RD(r)		(((r) >> 24) & 0x3)
172ff9f475dSJason Liu #define MXC_CCM_CSCMR1_USBOH3_CLK_SEL_OFFSET		22
173ff9f475dSJason Liu #define MXC_CCM_CSCMR1_USBOH3_CLK_SEL_MASK		(0x3 << 22)
174846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_USBOH3_CLK_SEL(v)		(((v) & 0x3) << 22)
175846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_USBOH3_CLK_SEL_RD(r)		(((r) >> 22) & 0x3)
176ff9f475dSJason Liu #define MXC_CCM_CSCMR1_ESDHC1_MSHC1_CLK_SEL_OFFSET	20
177ff9f475dSJason Liu #define MXC_CCM_CSCMR1_ESDHC1_MSHC1_CLK_SEL_MASK	(0x3 << 20)
178846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_ESDHC1_MSHC1_CLK_SEL(v)		(((v) & 0x3) << 20)
179846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_ESDHC1_MSHC1_CLK_SEL_RD(r)	(((r) >> 20) & 0x3)
180ff9f475dSJason Liu #define MXC_CCM_CSCMR1_ESDHC3_CLK_SEL			(0x1 << 19)
181ff9f475dSJason Liu #define MXC_CCM_CSCMR1_ESDHC4_CLK_SEL			(0x1 << 18)
182ff9f475dSJason Liu #define MXC_CCM_CSCMR1_ESDHC2_MSHC2_CLK_SEL_OFFSET	16
183ff9f475dSJason Liu #define MXC_CCM_CSCMR1_ESDHC2_MSHC2_CLK_SEL_MASK	(0x3 << 16)
184846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_ESDHC2_MSHC2_CLK_SEL(v)		(((v) & 0x3) << 16)
185846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_ESDHC2_MSHC2_CLK_SEL_RD(r)	(((r) >> 16) & 0x3)
186ff9f475dSJason Liu #define MXC_CCM_CSCMR1_SSI1_CLK_SEL_OFFSET		14
187ff9f475dSJason Liu #define MXC_CCM_CSCMR1_SSI1_CLK_SEL_MASK		(0x3 << 14)
188846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_SSI1_CLK_SEL(v)			(((v) & 0x3) << 14)
189846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_SSI1_CLK_SEL_RD(r)		(((r) >> 14) & 0x3)
190ff9f475dSJason Liu #define MXC_CCM_CSCMR1_SSI2_CLK_SEL_OFFSET		12
191ff9f475dSJason Liu #define MXC_CCM_CSCMR1_SSI2_CLK_SEL_MASK		(0x3 << 12)
192846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_SSI2_CLK_SEL(v)			(((v) & 0x3) << 12)
193846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_SSI2_CLK_SEL_RD(r)		(((r) >> 12) & 0x3)
194ff9f475dSJason Liu #define MXC_CCM_CSCMR1_SSI3_CLK_SEL			(0x1 << 11)
195ff9f475dSJason Liu #define MXC_CCM_CSCMR1_VPU_RCLK_SEL			(0x1 << 10)
196ff9f475dSJason Liu #define MXC_CCM_CSCMR1_SSI_APM_CLK_SEL_OFFSET		8
197ff9f475dSJason Liu #define MXC_CCM_CSCMR1_SSI_APM_CLK_SEL_MASK		(0x3 << 8)
198846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_SSI_APM_CLK_SEL(v)		(((v) & 0x3) << 8)
199846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_SSI_APM_CLK_SEL_RD(r)		(((r) >> 8) & 0x3)
200ff9f475dSJason Liu #define MXC_CCM_CSCMR1_TVE_CLK_SEL			(0x1 << 7)
201ff9f475dSJason Liu #define MXC_CCM_CSCMR1_TVE_EXT_CLK_SEL			(0x1 << 6)
202ff9f475dSJason Liu #define MXC_CCM_CSCMR1_CSPI_CLK_SEL_OFFSET		4
203ff9f475dSJason Liu #define MXC_CCM_CSCMR1_CSPI_CLK_SEL_MASK		(0x3 << 4)
204846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_CSPI_CLK_SEL(v)			(((v) & 0x3) << 4)
205846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_CSPI_CLK_SEL_RD(r)		(((r) >> 4) & 0x3)
206ff9f475dSJason Liu #define MXC_CCM_CSCMR1_SPDIF_CLK_SEL_OFFSET		2
207ff9f475dSJason Liu #define MXC_CCM_CSCMR1_SPDIF_CLK_SEL_MASK		(0x3 << 2)
208846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_SPDIF_CLK_SEL(v)			(((v) & 0x3) << 2)
209846b3898SBenoît Thébaudeau #define MXC_CCM_CSCMR1_SPDIF_CLK_SEL_RD(r)		(((r) >> 2) & 0x3)
210ff9f475dSJason Liu #define MXC_CCM_CSCMR1_SSI_EXT2_COM_CLK_SEL		(0x1 << 1)
211ff9f475dSJason Liu #define MXC_CCM_CSCMR1_SSI_EXT1_COM_CLK_SEL		0x1
212ff9f475dSJason Liu 
213ff9f475dSJason Liu /* Define the bits in register CSCDR2 */
214ff9f475dSJason Liu #define MXC_CCM_CSCDR2_CSPI_CLK_PRED_OFFSET		25
215ff9f475dSJason Liu #define MXC_CCM_CSCDR2_CSPI_CLK_PRED_MASK		(0x7 << 25)
216846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR2_CSPI_CLK_PRED(v)			(((v) & 0x7) << 25)
217846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR2_CSPI_CLK_PRED_RD(r)		(((r) >> 25) & 0x7)
218ff9f475dSJason Liu #define MXC_CCM_CSCDR2_CSPI_CLK_PODF_OFFSET		19
219ff9f475dSJason Liu #define MXC_CCM_CSCDR2_CSPI_CLK_PODF_MASK		(0x3F << 19)
220846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR2_CSPI_CLK_PODF(v)			(((v) & 0x3F) << 19)
221846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR2_CSPI_CLK_PODF_RD(r)		(((r) >> 19) & 0x3F)
222ff9f475dSJason Liu #define MXC_CCM_CSCDR2_SIM_CLK_PRED_OFFSET		16
223ff9f475dSJason Liu #define MXC_CCM_CSCDR2_SIM_CLK_PRED_MASK		(0x7 << 16)
224846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR2_SIM_CLK_PRED(v)			(((v) & 0x7) << 16)
225846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR2_SIM_CLK_PRED_RD(r)		(((r) >> 16) & 0x7)
226ff9f475dSJason Liu #define MXC_CCM_CSCDR2_SIM_CLK_PODF_OFFSET		9
227ff9f475dSJason Liu #define MXC_CCM_CSCDR2_SIM_CLK_PODF_MASK		(0x3F << 9)
228846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR2_SIM_CLK_PODF(v)			(((v) & 0x3F) << 9)
229846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR2_SIM_CLK_PODF_RD(r)		(((r) >> 9) & 0x3F)
230ff9f475dSJason Liu #define MXC_CCM_CSCDR2_SLIMBUS_CLK_PRED_OFFSET		6
231846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR2_SLIMBUS_CLK_PRED_MASK		(0x7 << 6)
232846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR2_SLIMBUS_CLK_PRED(v)		(((v) & 0x7) << 6)
233846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR2_SLIMBUS_CLK_PRED_RD(r)		(((r) >> 6) & 0x7)
234846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR2_SLIMBUS_CLK_PODF_OFFSET		0
235846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR2_SLIMBUS_CLK_PODF_MASK		0x3F
236846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR2_SLIMBUS_CLK_PODF(v)		((v) & 0x3F)
237846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR2_SLIMBUS_CLK_PODF_RD(r)		((r) & 0x3F)
238ff9f475dSJason Liu 
239ff9f475dSJason Liu /* Define the bits in register CBCMR */
240ff9f475dSJason Liu #define MXC_CCM_CBCMR_VPU_AXI_CLK_SEL_OFFSET		14
241ff9f475dSJason Liu #define MXC_CCM_CBCMR_VPU_AXI_CLK_SEL_MASK		(0x3 << 14)
242846b3898SBenoît Thébaudeau #define MXC_CCM_CBCMR_VPU_AXI_CLK_SEL(v)		(((v) & 0x3) << 14)
243846b3898SBenoît Thébaudeau #define MXC_CCM_CBCMR_VPU_AXI_CLK_SEL_RD(r)		(((r) >> 14) & 0x3)
244ff9f475dSJason Liu #define MXC_CCM_CBCMR_PERIPH_CLK_SEL_OFFSET		12
245ff9f475dSJason Liu #define MXC_CCM_CBCMR_PERIPH_CLK_SEL_MASK		(0x3 << 12)
246846b3898SBenoît Thébaudeau #define MXC_CCM_CBCMR_PERIPH_CLK_SEL(v)			(((v) & 0x3) << 12)
247846b3898SBenoît Thébaudeau #define MXC_CCM_CBCMR_PERIPH_CLK_SEL_RD(r)		(((r) >> 12) & 0x3)
248ff9f475dSJason Liu #define MXC_CCM_CBCMR_DDR_CLK_SEL_OFFSET		10
249ff9f475dSJason Liu #define MXC_CCM_CBCMR_DDR_CLK_SEL_MASK			(0x3 << 10)
250846b3898SBenoît Thébaudeau #define MXC_CCM_CBCMR_DDR_CLK_SEL(v)			(((v) & 0x3) << 10)
251846b3898SBenoît Thébaudeau #define MXC_CCM_CBCMR_DDR_CLK_SEL_RD(r)			(((r) >> 10) & 0x3)
252ff9f475dSJason Liu #define MXC_CCM_CBCMR_ARM_AXI_CLK_SEL_OFFSET		8
253ff9f475dSJason Liu #define MXC_CCM_CBCMR_ARM_AXI_CLK_SEL_MASK		(0x3 << 8)
254846b3898SBenoît Thébaudeau #define MXC_CCM_CBCMR_ARM_AXI_CLK_SEL(v)		(((v) & 0x3) << 8)
255846b3898SBenoît Thébaudeau #define MXC_CCM_CBCMR_ARM_AXI_CLK_SEL_RD(r)		(((r) >> 8) & 0x3)
256ff9f475dSJason Liu #define MXC_CCM_CBCMR_IPU_HSP_CLK_SEL_OFFSET		6
257ff9f475dSJason Liu #define MXC_CCM_CBCMR_IPU_HSP_CLK_SEL_MASK		(0x3 << 6)
258846b3898SBenoît Thébaudeau #define MXC_CCM_CBCMR_IPU_HSP_CLK_SEL(v)		(((v) & 0x3) << 6)
259846b3898SBenoît Thébaudeau #define MXC_CCM_CBCMR_IPU_HSP_CLK_SEL_RD(r)		(((r) >> 6) & 0x3)
260ff9f475dSJason Liu #define MXC_CCM_CBCMR_GPU_CLK_SEL_OFFSET		4
261ff9f475dSJason Liu #define MXC_CCM_CBCMR_GPU_CLK_SEL_MASK			(0x3 << 4)
262846b3898SBenoît Thébaudeau #define MXC_CCM_CBCMR_GPU_CLK_SEL(v)			(((v) & 0x3) << 4)
263846b3898SBenoît Thébaudeau #define MXC_CCM_CBCMR_GPU_CLK_SEL_RD(r)			(((r) >> 4) & 0x3)
264ff9f475dSJason Liu #define MXC_CCM_CBCMR_PERCLK_LP_APM_CLK_SEL		(0x1 << 1)
265ff9f475dSJason Liu #define MXC_CCM_CBCMR_PERCLK_IPG_CLK_SEL		(0x1 << 0)
266ff9f475dSJason Liu 
267ff9f475dSJason Liu /* Define the bits in register CSCDR1 */
268ff9f475dSJason Liu #define MXC_CCM_CSCDR1_ESDHC2_MSHC2_CLK_PRED_OFFSET	22
269ff9f475dSJason Liu #define MXC_CCM_CSCDR1_ESDHC2_MSHC2_CLK_PRED_MASK	(0x7 << 22)
270846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_ESDHC2_MSHC2_CLK_PRED(v)		(((v) & 0x7) << 22)
271846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_ESDHC2_MSHC2_CLK_PRED_RD(r)	(((r) >> 22) & 0x7)
272ff9f475dSJason Liu #define MXC_CCM_CSCDR1_ESDHC2_MSHC2_CLK_PODF_OFFSET	19
273ff9f475dSJason Liu #define MXC_CCM_CSCDR1_ESDHC2_MSHC2_CLK_PODF_MASK	(0x7 << 19)
274846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_ESDHC2_MSHC2_CLK_PODF(v)		(((v) & 0x7) << 19)
275846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_ESDHC2_MSHC2_CLK_PODF_RD(r)	(((r) >> 19) & 0x7)
276ff9f475dSJason Liu #define MXC_CCM_CSCDR1_ESDHC1_MSHC1_CLK_PRED_OFFSET	16
277ff9f475dSJason Liu #define MXC_CCM_CSCDR1_ESDHC1_MSHC1_CLK_PRED_MASK	(0x7 << 16)
278846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_ESDHC1_MSHC1_CLK_PRED(v)		(((v) & 0x7) << 16)
279846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_ESDHC1_MSHC1_CLK_PRED_RD(r)	(((r) >> 16) & 0x7)
280ff9f475dSJason Liu #define MXC_CCM_CSCDR1_PGC_CLK_PODF_OFFSET		14
281ff9f475dSJason Liu #define MXC_CCM_CSCDR1_PGC_CLK_PODF_MASK		(0x3 << 14)
282846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_PGC_CLK_PODF(v)			(((v) & 0x3) << 14)
283846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_PGC_CLK_PODF_RD(r)		(((r) >> 14) & 0x3)
284ff9f475dSJason Liu #define MXC_CCM_CSCDR1_ESDHC1_MSHC1_CLK_PODF_OFFSET	11
285ff9f475dSJason Liu #define MXC_CCM_CSCDR1_ESDHC1_MSHC1_CLK_PODF_MASK	(0x7 << 11)
286846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_ESDHC1_MSHC1_CLK_PODF(v)		(((v) & 0x7) << 11)
287846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_ESDHC1_MSHC1_CLK_PODF_RD(r)	(((r) >> 11) & 0x7)
288ff9f475dSJason Liu #define MXC_CCM_CSCDR1_USBOH3_CLK_PRED_OFFSET		8
289ff9f475dSJason Liu #define MXC_CCM_CSCDR1_USBOH3_CLK_PRED_MASK		(0x7 << 8)
290846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_USBOH3_CLK_PRED(v)		(((v) & 0x7) << 8)
291846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_USBOH3_CLK_PRED_RD(r)		(((r) >> 8) & 0x7)
292ff9f475dSJason Liu #define MXC_CCM_CSCDR1_USBOH3_CLK_PODF_OFFSET		6
293ff9f475dSJason Liu #define MXC_CCM_CSCDR1_USBOH3_CLK_PODF_MASK		(0x3 << 6)
294846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_USBOH3_CLK_PODF(v)		(((v) & 0x3) << 6)
295846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_USBOH3_CLK_PODF_RD(r)		(((r) >> 6) & 0x3)
296ff9f475dSJason Liu #define MXC_CCM_CSCDR1_UART_CLK_PRED_OFFSET		3
297ff9f475dSJason Liu #define MXC_CCM_CSCDR1_UART_CLK_PRED_MASK		(0x7 << 3)
298846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_UART_CLK_PRED(v)			(((v) & 0x7) << 3)
299846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_UART_CLK_PRED_RD(r)		(((r) >> 3) & 0x7)
300ff9f475dSJason Liu #define MXC_CCM_CSCDR1_UART_CLK_PODF_OFFSET		0
301ff9f475dSJason Liu #define MXC_CCM_CSCDR1_UART_CLK_PODF_MASK		0x7
302846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_UART_CLK_PODF(v)			((v) & 0x7)
303846b3898SBenoît Thébaudeau #define MXC_CCM_CSCDR1_UART_CLK_PODF_RD(r)		((r) & 0x7)
304ff9f475dSJason Liu 
305575001e4SStefano Babic /* Define the bits in register CCDR */
306575001e4SStefano Babic #define MXC_CCM_CCDR_IPU_HS_MASK			(0x1 << 17)
307575001e4SStefano Babic 
3084611d5baSSergey Alyoshin /* Define the bits in register CGPR */
3094611d5baSSergey Alyoshin #define MXC_CCM_CGPR_EFUSE_PROG_SUPPLY_GATE		(1 << 4)
3104611d5baSSergey Alyoshin 
311575001e4SStefano Babic /* Define the bits in register CCGRx */
312575001e4SStefano Babic #define MXC_CCM_CCGR_CG_MASK				0x3
313248cdf0bSBenoît Thébaudeau #define MXC_CCM_CCGR_CG_OFF				0x0
314248cdf0bSBenoît Thébaudeau #define MXC_CCM_CCGR_CG_RUN_ON				0x1
315248cdf0bSBenoît Thébaudeau #define MXC_CCM_CCGR_CG_ON				0x3
316575001e4SStefano Babic 
3171f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_ARM_BUS_OFFSET			0
3181f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_ARM_BUS(v)			(((v) & 0x3) << 0)
3191f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_ARM_AXI_OFFSET			2
3201f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_ARM_AXI(v)			(((v) & 0x3) << 2)
3211f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_ARM_DEBUG_OFFSET			4
3221f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_ARM_DEBUG(v)			(((v) & 0x3) << 4)
3231f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_TZIC_OFFSET			6
3241f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_TZIC(v)				(((v) & 0x3) << 6)
3251f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_DAP_OFFSET			8
3261f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_DAP(v)				(((v) & 0x3) << 8)
3271f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_TPIU_OFFSET			10
3281f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_TPIU(v)				(((v) & 0x3) << 10)
3291f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_CTI2_OFFSET			12
3301f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_CTI2(v)				(((v) & 0x3) << 12)
3311f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_CTI3_OFFSET			14
3321f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_CTI3(v)				(((v) & 0x3) << 14)
3331f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_AHBMUX1_OFFSET			16
3341f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_AHBMUX1(v)			(((v) & 0x3) << 16)
3351f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_AHBMUX2_OFFSET			18
3361f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_AHBMUX2(v)			(((v) & 0x3) << 18)
3371f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_ROMCP_OFFSET			20
3381f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_ROMCP(v)				(((v) & 0x3) << 20)
3391f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_ROM_OFFSET			22
3401f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_ROM(v)				(((v) & 0x3) << 22)
3411f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_AIPS_TZ1_OFFSET			24
3421f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_AIPS_TZ1(v)			(((v) & 0x3) << 24)
3431f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_AIPS_TZ2_OFFSET			26
3441f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_AIPS_TZ2(v)			(((v) & 0x3) << 26)
3451f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_AHB_MAX_OFFSET			28
3461f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_AHB_MAX(v)			(((v) & 0x3) << 28)
3471f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_IIM_OFFSET			30
3481f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR0_IIM(v)				(((v) & 0x3) << 30)
3491f5e4ee0SBenoît Thébaudeau 
3501f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_TMAX1_OFFSET			0
3511f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_TMAX1(v)				(((v) & 0x3) << 0)
3521f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_TMAX2_OFFSET			2
3531f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_TMAX2(v)				(((v) & 0x3) << 2)
3541f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_TMAX3_OFFSET			4
3551f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_TMAX3(v)				(((v) & 0x3) << 4)
3561f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_UART1_IPG_OFFSET			6
3571f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_UART1_IPG(v)			(((v) & 0x3) << 6)
3581f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_UART1_PER_OFFSET			8
3591f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_UART1_PER(v)			(((v) & 0x3) << 8)
3601f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_UART2_IPG_OFFSET			10
3611f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_UART2_IPG(v)			(((v) & 0x3) << 10)
3621f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_UART2_PER_OFFSET			12
3631f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_UART2_PER(v)			(((v) & 0x3) << 12)
3641f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_UART3_IPG_OFFSET			14
3651f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_UART3_IPG(v)			(((v) & 0x3) << 14)
3661f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_UART3_PER_OFFSET			16
3671f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_UART3_PER(v)			(((v) & 0x3) << 16)
3681f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_I2C1_OFFSET			18
3691f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_I2C1(v)				(((v) & 0x3) << 18)
3701f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_I2C2_OFFSET			20
3711f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_I2C2(v)				(((v) & 0x3) << 20)
3721f5e4ee0SBenoît Thébaudeau #if defined(CONFIG_MX51)
3731f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_HSI2C_IPG_OFFSET			22
3741f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_HSI2C_IPG(v)			(((v) & 0x3) << 22)
3751f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_HSI2C_SERIAL_OFFSET		24
3761f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_HSI2C_SERIAL(v)			(((v) & 0x3) << 24)
3771f5e4ee0SBenoît Thébaudeau #elif defined(CONFIG_MX53)
3781f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_I2C3_OFFSET			22
3791f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_I2C3(v)				(((v) & 0x3) << 22)
3801f5e4ee0SBenoît Thébaudeau #endif
3811f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_FIRI_IPG_OFFSET			26
3821f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_FIRI_IPG(v)			(((v) & 0x3) << 26)
3831f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_FIRI_SERIAL_OFFSET		28
3841f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_FIRI_SERIAL(v)			(((v) & 0x3) << 28)
3851f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_SCC_OFFSET			30
3861f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR1_SCC(v)				(((v) & 0x3) << 30)
3871f5e4ee0SBenoît Thébaudeau 
3881f5e4ee0SBenoît Thébaudeau #if defined(CONFIG_MX51)
3891f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_USB_PHY_OFFSET			0
3901f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_USB_PHY(v)			(((v) & 0x3) << 0)
3911f5e4ee0SBenoît Thébaudeau #endif
3921f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_EPIT1_IPG_OFFSET			2
3931f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_EPIT1_IPG(v)			(((v) & 0x3) << 2)
3941f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_EPIT1_HF_OFFSET			4
3951f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_EPIT1_HF(v)			(((v) & 0x3) << 4)
3961f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_EPIT2_IPG_OFFSET			6
3971f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_EPIT2_IPG(v)			(((v) & 0x3) << 6)
3981f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_EPIT2_HF_OFFSET			8
3991f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_EPIT2_HF(v)			(((v) & 0x3) << 8)
4001f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_PWM1_IPG_OFFSET			10
4011f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_PWM1_IPG(v)			(((v) & 0x3) << 10)
4021f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_PWM1_HF_OFFSET			12
4031f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_PWM1_HF(v)			(((v) & 0x3) << 12)
4041f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_PWM2_IPG_OFFSET			14
4051f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_PWM2_IPG(v)			(((v) & 0x3) << 14)
4061f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_PWM2_HF_OFFSET			16
4071f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_PWM2_HF(v)			(((v) & 0x3) << 16)
4081f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_GPT_IPG_OFFSET			18
4091f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_GPT_IPG(v)			(((v) & 0x3) << 18)
4101f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_GPT_HF_OFFSET			20
4111f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_GPT_HF(v)				(((v) & 0x3) << 20)
4121f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_OWIRE_OFFSET			22
4131f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_OWIRE(v)				(((v) & 0x3) << 22)
4141f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_FEC_OFFSET			24
4151f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_FEC(v)				(((v) & 0x3) << 24)
4161f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_USBOH3_IPG_AHB_OFFSET		26
4171f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_USBOH3_IPG_AHB(v)			(((v) & 0x3) << 26)
4181f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_USBOH3_60M_OFFSET			28
4191f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_USBOH3_60M(v)			(((v) & 0x3) << 28)
4201f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_TVE_OFFSET			30
4211f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR2_TVE(v)				(((v) & 0x3) << 30)
4221f5e4ee0SBenoît Thébaudeau 
4231f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_ESDHC1_IPG_OFFSET			0
4241f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_ESDHC1_IPG(v)			(((v) & 0x3) << 0)
4251f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_ESDHC1_PER_OFFSET			2
4261f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_ESDHC1_PER(v)			(((v) & 0x3) << 2)
4271f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_ESDHC2_IPG_OFFSET			4
4281f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_ESDHC2_IPG(v)			(((v) & 0x3) << 4)
4291f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_ESDHC2_PER_OFFSET			6
4301f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_ESDHC2_PER(v)			(((v) & 0x3) << 6)
4311f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_ESDHC3_IPG_OFFSET			8
4321f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_ESDHC3_IPG(v)			(((v) & 0x3) << 8)
4331f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_ESDHC3_PER_OFFSET			10
4341f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_ESDHC3_PER(v)			(((v) & 0x3) << 10)
4351f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_ESDHC4_IPG_OFFSET			12
4361f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_ESDHC4_IPG(v)			(((v) & 0x3) << 12)
4371f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_ESDHC4_PER_OFFSET			14
4381f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_ESDHC4_PER(v)			(((v) & 0x3) << 14)
4391f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_SSI1_IPG_OFFSET			16
4401f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_SSI1_IPG(v)			(((v) & 0x3) << 16)
4411f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_SSI1_SSI_OFFSET			18
4421f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_SSI1_SSI(v)			(((v) & 0x3) << 18)
4431f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_SSI2_IPG_OFFSET			20
4441f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_SSI2_IPG(v)			(((v) & 0x3) << 20)
4451f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_SSI2_SSI_OFFSET			22
4461f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_SSI2_SSI(v)			(((v) & 0x3) << 22)
4471f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_SSI3_IPG_OFFSET			24
4481f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_SSI3_IPG(v)			(((v) & 0x3) << 24)
4491f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_SSI3_SSI_OFFSET			26
4501f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_SSI3_SSI(v)			(((v) & 0x3) << 26)
4511f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_SSI_EXT1_OFFSET			28
4521f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_SSI_EXT1(v)			(((v) & 0x3) << 28)
4531f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_SSI_EXT2_OFFSET			30
4541f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR3_SSI_EXT2(v)			(((v) & 0x3) << 30)
4551f5e4ee0SBenoît Thébaudeau 
4561f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_PATA_OFFSET			0
4571f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_PATA(v)				(((v) & 0x3) << 0)
4581f5e4ee0SBenoît Thébaudeau #if defined(CONFIG_MX51)
4591f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_SIM_IPG_OFFSET			2
4601f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_SIM_IPG(v)			(((v) & 0x3) << 2)
4611f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_SIM_SERIAL_OFFSET			4
4621f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_SIM_SERIAL(v)			(((v) & 0x3) << 4)
4631f5e4ee0SBenoît Thébaudeau #elif defined(CONFIG_MX53)
4641f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_SATA_OFFSET			2
4651f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_SATA(v)				(((v) & 0x3) << 2)
4661f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_CAN2_IPG_OFFSET			6
4671f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_CAN2_IPG(v)			(((v) & 0x3) << 6)
4681f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_CAN2_SERIAL_OFFSET		8
4691f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_CAN2_SERIAL(v)			(((v) & 0x3) << 8)
4701f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_USB_PHY1_OFFSET			10
4711f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_USB_PHY1(v)			(((v) & 0x3) << 10)
4721f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_USB_PHY2_OFFSET			12
4731f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_USB_PHY2(v)			(((v) & 0x3) << 12)
4741f5e4ee0SBenoît Thébaudeau #endif
4751f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_SAHARA_OFFSET			14
4761f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_SAHARA(v)				(((v) & 0x3) << 14)
4771f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_RTIC_OFFSET			16
4781f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_RTIC(v)				(((v) & 0x3) << 16)
4791f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_ECSPI1_IPG_OFFSET			18
4801f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_ECSPI1_IPG(v)			(((v) & 0x3) << 18)
4811f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_ECSPI1_PER_OFFSET			20
4821f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_ECSPI1_PER(v)			(((v) & 0x3) << 20)
4831f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_ECSPI2_IPG_OFFSET			22
4841f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_ECSPI2_IPG(v)			(((v) & 0x3) << 22)
4851f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_ECSPI2_PER_OFFSET			24
4861f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_ECSPI2_PER(v)			(((v) & 0x3) << 24)
4871f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_CSPI_IPG_OFFSET			26
4881f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_CSPI_IPG(v)			(((v) & 0x3) << 26)
4891f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_SRTC_OFFSET			28
4901f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_SRTC(v)				(((v) & 0x3) << 28)
4911f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_SDMA_OFFSET			30
4921f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR4_SDMA(v)				(((v) & 0x3) << 30)
4931f5e4ee0SBenoît Thébaudeau 
4941f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_SPBA_OFFSET			0
4951f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_SPBA(v)				(((v) & 0x3) << 0)
4961f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_GPU_OFFSET			2
4971f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_GPU(v)				(((v) & 0x3) << 2)
4981f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_GARB_OFFSET			4
4991f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_GARB(v)				(((v) & 0x3) << 4)
5001f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_VPU_OFFSET			6
5011f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_VPU(v)				(((v) & 0x3) << 6)
5021f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_VPU_REF_OFFSET			8
5031f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_VPU_REF(v)			(((v) & 0x3) << 8)
5041f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_IPU_OFFSET			10
5051f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_IPU(v)				(((v) & 0x3) << 10)
5061f5e4ee0SBenoît Thébaudeau #if defined(CONFIG_MX51)
5071f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_IPUMUX12_OFFSET			12
5081f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_IPUMUX12(v)			(((v) & 0x3) << 12)
5091f5e4ee0SBenoît Thébaudeau #elif defined(CONFIG_MX53)
5101f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_IPUMUX1_OFFSET			12
5111f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_IPUMUX1(v)			(((v) & 0x3) << 12)
5121f5e4ee0SBenoît Thébaudeau #endif
5131f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_EMI_FAST_OFFSET			14
5141f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_EMI_FAST(v)			(((v) & 0x3) << 14)
5151f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_EMI_SLOW_OFFSET			16
5161f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_EMI_SLOW(v)			(((v) & 0x3) << 16)
5171f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_EMI_INT1_OFFSET			18
5181f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_EMI_INT1(v)			(((v) & 0x3) << 18)
5191f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_EMI_ENFC_OFFSET			20
5201f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_EMI_ENFC(v)			(((v) & 0x3) << 20)
5211f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_EMI_WRCK_OFFSET			22
5221f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_EMI_WRCK(v)			(((v) & 0x3) << 22)
5231f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_GPC_IPG_OFFSET			24
5241f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_GPC_IPG(v)			(((v) & 0x3) << 24)
5251f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_SPDIF0_OFFSET			26
5261f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_SPDIF0(v)				(((v) & 0x3) << 26)
5271f5e4ee0SBenoît Thébaudeau #if defined(CONFIG_MX51)
5281f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_SPDIF1_OFFSET			28
5291f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_SPDIF1(v)				(((v) & 0x3) << 28)
5301f5e4ee0SBenoît Thébaudeau #endif
5311f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_SPDIF_IPG_OFFSET			30
5321f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR5_SPDIF_IPG(v)			(((v) & 0x3) << 30)
5331f5e4ee0SBenoît Thébaudeau 
5341f5e4ee0SBenoît Thébaudeau #if defined(CONFIG_MX53)
5351f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_IPUMUX2_OFFSET			0
5361f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_IPUMUX2(v)			(((v) & 0x3) << 0)
5371f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_OCRAM_OFFSET			2
5381f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_OCRAM(v)				(((v) & 0x3) << 2)
5391f5e4ee0SBenoît Thébaudeau #endif
5401f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_CSI_MCLK1_OFFSET			4
5411f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_CSI_MCLK1(v)			(((v) & 0x3) << 4)
5421f5e4ee0SBenoît Thébaudeau #if defined(CONFIG_MX51)
5431f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_CSI_MCLK2_OFFSET			6
5441f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_CSI_MCLK2(v)			(((v) & 0x3) << 6)
5451f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_EMI_GARB_OFFSET			8
5461f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_EMI_GARB(v)			(((v) & 0x3) << 8)
5471f5e4ee0SBenoît Thébaudeau #elif defined(CONFIG_MX53)
5481f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_EMI_INT2_OFFSET			8
5491f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_EMI_INT2(v)			(((v) & 0x3) << 8)
5501f5e4ee0SBenoît Thébaudeau #endif
5511f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_IPU_DI0_OFFSET			10
5521f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_IPU_DI0(v)			(((v) & 0x3) << 10)
5531f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_IPU_DI1_OFFSET			12
5541f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_IPU_DI1(v)			(((v) & 0x3) << 12)
5551f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_GPU2D_OFFSET			14
5561f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_GPU2D(v)				(((v) & 0x3) << 14)
5571f5e4ee0SBenoît Thébaudeau #if defined(CONFIG_MX53)
5581f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_ESAI_IPG_OFFSET			16
5591f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_ESAI_IPG(v)			(((v) & 0x3) << 16)
5601f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_ESAI_ROOT_OFFSET			18
5611f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_ESAI_ROOT(v)			(((v) & 0x3) << 18)
5621f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_CAN1_IPG_OFFSET			20
5631f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_CAN1_IPG(v)			(((v) & 0x3) << 20)
5641f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_CAN1_SERIAL_OFFSET		22
5651f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_CAN1_SERIAL(v)			(((v) & 0x3) << 22)
5661f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_PL301_4X1_OFFSET			24
5671f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_PL301_4X1(v)			(((v) & 0x3) << 24)
5681f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_PL301_2X2_OFFSET			26
5691f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_PL301_2X2(v)			(((v) & 0x3) << 26)
5701f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_LDB_DI0_OFFSET			28
5711f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_LDB_DI0(v)			(((v) & 0x3) << 28)
5721f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_LDB_DI1_OFFSET			30
5731f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR6_LDB_DI1(v)			(((v) & 0x3) << 30)
5741f5e4ee0SBenoît Thébaudeau 
5751f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR7_ASRC_IPG_OFFSET			0
5761f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR7_ASRC_IPG(v)			(((v) & 0x3) << 0)
5771f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR7_ASRC_ASRCK_OFFSET			2
5781f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR7_ASRC_ASRCK(v)			(((v) & 0x3) << 2)
5791f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR7_MLB_OFFSET			4
5801f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR7_MLB(v)				(((v) & 0x3) << 4)
5811f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR7_IEEE1588_OFFSET			6
5821f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR7_IEEE1588(v)			(((v) & 0x3) << 6)
5831f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR7_UART4_IPG_OFFSET			8
5841f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR7_UART4_IPG(v)			(((v) & 0x3) << 8)
5851f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR7_UART4_PER_OFFSET			10
5861f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR7_UART4_PER(v)			(((v) & 0x3) << 10)
5871f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR7_UART5_IPG_OFFSET			12
5881f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR7_UART5_IPG(v)			(((v) & 0x3) << 12)
5891f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR7_UART5_PER_OFFSET			14
5901f5e4ee0SBenoît Thébaudeau #define MXC_CCM_CCGR7_UART5_PER(v)			(((v) & 0x3) << 14)
5911f5e4ee0SBenoît Thébaudeau #endif
592575001e4SStefano Babic 
593575001e4SStefano Babic /* Define the bits in register CLPCR */
594575001e4SStefano Babic #define MXC_CCM_CLPCR_BYPASS_IPU_LPM_HS                 (0x1 << 18)
595575001e4SStefano Babic 
596bf2eaf51SMarek Vasut #define	MXC_DPLLC_CTL_HFSM				(1 << 7)
597bf2eaf51SMarek Vasut #define	MXC_DPLLC_CTL_DPDCK0_2_EN			(1 << 12)
598bf2eaf51SMarek Vasut 
599bf2eaf51SMarek Vasut #define	MXC_DPLLC_OP_PDF_MASK				0xf
600bf2eaf51SMarek Vasut #define	MXC_DPLLC_OP_MFI_OFFSET				4
601846b3898SBenoît Thébaudeau #define	MXC_DPLLC_OP_MFI_MASK				(0xf << 4)
602846b3898SBenoît Thébaudeau #define	MXC_DPLLC_OP_MFI(v)				(((v) & 0xf) << 4)
603846b3898SBenoît Thébaudeau #define	MXC_DPLLC_OP_MFI_RD(r)				(((r) >> 4) & 0xf)
604bf2eaf51SMarek Vasut 
605bf2eaf51SMarek Vasut #define	MXC_DPLLC_MFD_MFD_MASK				0x7ffffff
606bf2eaf51SMarek Vasut 
607bf2eaf51SMarek Vasut #define	MXC_DPLLC_MFN_MFN_MASK				0x7ffffff
608bf2eaf51SMarek Vasut 
609ff9f475dSJason Liu #endif				/* __ARCH_ARM_MACH_MX51_CRM_REGS_H__ */
610