16a376046SFabio Estevam /* 26a376046SFabio Estevam * Copyright 2011 Freescale Semiconductor, Inc. All Rights Reserved. 36a376046SFabio Estevam * 41a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 56a376046SFabio Estevam */ 66a376046SFabio Estevam 76a376046SFabio Estevam #ifndef __ARCH_ARM_MACH_MX6_CCM_REGS_H__ 86a376046SFabio Estevam #define __ARCH_ARM_MACH_MX6_CCM_REGS_H__ 96a376046SFabio Estevam 10492938a3SFabio Estevam #define CCM_CCOSR 0x020c4060 114f60c49aSEric Nelson #define CCM_CCGR0 0x020C4068 124f60c49aSEric Nelson #define CCM_CCGR1 0x020C406c 134f60c49aSEric Nelson #define CCM_CCGR2 0x020C4070 144f60c49aSEric Nelson #define CCM_CCGR3 0x020C4074 154f60c49aSEric Nelson #define CCM_CCGR4 0x020C4078 164f60c49aSEric Nelson #define CCM_CCGR5 0x020C407c 174f60c49aSEric Nelson #define CCM_CCGR6 0x020C4080 184f60c49aSEric Nelson 194f60c49aSEric Nelson #define PMU_MISC2 0x020C8170 204f60c49aSEric Nelson 214f60c49aSEric Nelson #ifndef __ASSEMBLY__ 226a376046SFabio Estevam struct mxc_ccm_reg { 236a376046SFabio Estevam u32 ccr; /* 0x0000 */ 246a376046SFabio Estevam u32 ccdr; 256a376046SFabio Estevam u32 csr; 266a376046SFabio Estevam u32 ccsr; 276a376046SFabio Estevam u32 cacrr; /* 0x0010*/ 286a376046SFabio Estevam u32 cbcdr; 296a376046SFabio Estevam u32 cbcmr; 306a376046SFabio Estevam u32 cscmr1; 316a376046SFabio Estevam u32 cscmr2; /* 0x0020 */ 326a376046SFabio Estevam u32 cscdr1; 336a376046SFabio Estevam u32 cs1cdr; 346a376046SFabio Estevam u32 cs2cdr; 356a376046SFabio Estevam u32 cdcdr; /* 0x0030 */ 36da6df2d1SEric Nelson u32 chsccdr; 376a376046SFabio Estevam u32 cscdr2; 386a376046SFabio Estevam u32 cscdr3; 396a376046SFabio Estevam u32 cscdr4; /* 0x0040 */ 406a376046SFabio Estevam u32 resv0; 416a376046SFabio Estevam u32 cdhipr; 426a376046SFabio Estevam u32 cdcr; 436a376046SFabio Estevam u32 ctor; /* 0x0050 */ 446a376046SFabio Estevam u32 clpcr; 456a376046SFabio Estevam u32 cisr; 466a376046SFabio Estevam u32 cimr; 476a376046SFabio Estevam u32 ccosr; /* 0x0060 */ 486a376046SFabio Estevam u32 cgpr; 496a376046SFabio Estevam u32 CCGR0; 506a376046SFabio Estevam u32 CCGR1; 516a376046SFabio Estevam u32 CCGR2; /* 0x0070 */ 526a376046SFabio Estevam u32 CCGR3; 536a376046SFabio Estevam u32 CCGR4; 546a376046SFabio Estevam u32 CCGR5; 556a376046SFabio Estevam u32 CCGR6; /* 0x0080 */ 566a376046SFabio Estevam u32 CCGR7; 576a376046SFabio Estevam u32 cmeor; 586a376046SFabio Estevam u32 resv[0xfdd]; 596a376046SFabio Estevam u32 analog_pll_sys; /* 0x4000 */ 606a376046SFabio Estevam u32 analog_pll_sys_set; 616a376046SFabio Estevam u32 analog_pll_sys_clr; 626a376046SFabio Estevam u32 analog_pll_sys_tog; 636a376046SFabio Estevam u32 analog_usb1_pll_480_ctrl; /* 0x4010 */ 646a376046SFabio Estevam u32 analog_usb1_pll_480_ctrl_set; 656a376046SFabio Estevam u32 analog_usb1_pll_480_ctrl_clr; 666a376046SFabio Estevam u32 analog_usb1_pll_480_ctrl_tog; 676a376046SFabio Estevam u32 analog_reserved0[4]; 686a376046SFabio Estevam u32 analog_pll_528; /* 0x4030 */ 696a376046SFabio Estevam u32 analog_pll_528_set; 706a376046SFabio Estevam u32 analog_pll_528_clr; 716a376046SFabio Estevam u32 analog_pll_528_tog; 726a376046SFabio Estevam u32 analog_pll_528_ss; /* 0x4040 */ 736a376046SFabio Estevam u32 analog_reserved1[3]; 746a376046SFabio Estevam u32 analog_pll_528_num; /* 0x4050 */ 756a376046SFabio Estevam u32 analog_reserved2[3]; 766a376046SFabio Estevam u32 analog_pll_528_denom; /* 0x4060 */ 776a376046SFabio Estevam u32 analog_reserved3[3]; 786a376046SFabio Estevam u32 analog_pll_audio; /* 0x4070 */ 796a376046SFabio Estevam u32 analog_pll_audio_set; 806a376046SFabio Estevam u32 analog_pll_audio_clr; 816a376046SFabio Estevam u32 analog_pll_audio_tog; 826a376046SFabio Estevam u32 analog_pll_audio_num; /* 0x4080*/ 836a376046SFabio Estevam u32 analog_reserved4[3]; 846a376046SFabio Estevam u32 analog_pll_audio_denom; /* 0x4090 */ 856a376046SFabio Estevam u32 analog_reserved5[3]; 866a376046SFabio Estevam u32 analog_pll_video; /* 0x40a0 */ 876a376046SFabio Estevam u32 analog_pll_video_set; 886a376046SFabio Estevam u32 analog_pll_video_clr; 896a376046SFabio Estevam u32 analog_pll_video_tog; 906a376046SFabio Estevam u32 analog_pll_video_num; /* 0x40b0 */ 916a376046SFabio Estevam u32 analog_reserved6[3]; 929c56936eSAnatolij Gustschin u32 analog_pll_video_denom; /* 0x40c0 */ 936a376046SFabio Estevam u32 analog_reserved7[7]; 946a376046SFabio Estevam u32 analog_pll_enet; /* 0x40e0 */ 956a376046SFabio Estevam u32 analog_pll_enet_set; 966a376046SFabio Estevam u32 analog_pll_enet_clr; 976a376046SFabio Estevam u32 analog_pll_enet_tog; 986a376046SFabio Estevam u32 analog_pfd_480; /* 0x40f0 */ 996a376046SFabio Estevam u32 analog_pfd_480_set; 1006a376046SFabio Estevam u32 analog_pfd_480_clr; 1016a376046SFabio Estevam u32 analog_pfd_480_tog; 1026a376046SFabio Estevam u32 analog_pfd_528; /* 0x4100 */ 1036a376046SFabio Estevam u32 analog_pfd_528_set; 1046a376046SFabio Estevam u32 analog_pfd_528_clr; 1056a376046SFabio Estevam u32 analog_pfd_528_tog; 106234dc633SPeng Fan /* PMU Memory Map/Register Definition */ 107234dc633SPeng Fan u32 pmu_reg_1p1; 108234dc633SPeng Fan u32 pmu_reg_1p1_set; 109234dc633SPeng Fan u32 pmu_reg_1p1_clr; 110234dc633SPeng Fan u32 pmu_reg_1p1_tog; 111234dc633SPeng Fan u32 pmu_reg_3p0; 112234dc633SPeng Fan u32 pmu_reg_3p0_set; 113234dc633SPeng Fan u32 pmu_reg_3p0_clr; 114234dc633SPeng Fan u32 pmu_reg_3p0_tog; 115234dc633SPeng Fan u32 pmu_reg_2p5; 116234dc633SPeng Fan u32 pmu_reg_2p5_set; 117234dc633SPeng Fan u32 pmu_reg_2p5_clr; 118234dc633SPeng Fan u32 pmu_reg_2p5_tog; 119234dc633SPeng Fan u32 pmu_reg_core; 120234dc633SPeng Fan u32 pmu_reg_core_set; 121234dc633SPeng Fan u32 pmu_reg_core_clr; 122234dc633SPeng Fan u32 pmu_reg_core_tog; 123234dc633SPeng Fan u32 pmu_misc0; 124234dc633SPeng Fan u32 pmu_misc0_set; 125234dc633SPeng Fan u32 pmu_misc0_clr; 126234dc633SPeng Fan u32 pmu_misc0_tog; 127234dc633SPeng Fan u32 pmu_misc1; 128234dc633SPeng Fan u32 pmu_misc1_set; 129234dc633SPeng Fan u32 pmu_misc1_clr; 130234dc633SPeng Fan u32 pmu_misc1_tog; 131234dc633SPeng Fan u32 pmu_misc2; 132234dc633SPeng Fan u32 pmu_misc2_set; 133234dc633SPeng Fan u32 pmu_misc2_clr; 134234dc633SPeng Fan u32 pmu_misc2_tog; 135234dc633SPeng Fan /* TEMPMON Memory Map/Register Definition */ 136234dc633SPeng Fan u32 tempsense0; 137234dc633SPeng Fan u32 tempsense0_set; 138234dc633SPeng Fan u32 tempsense0_clr; 139234dc633SPeng Fan u32 tempsense0_tog; 140234dc633SPeng Fan u32 tempsense1; 141234dc633SPeng Fan u32 tempsense1_set; 142234dc633SPeng Fan u32 tempsense1_clr; 143234dc633SPeng Fan u32 tempsense1_tog; 144234dc633SPeng Fan /* USB Analog Memory Map/Register Definition */ 145234dc633SPeng Fan u32 usb1_vbus_detect; 146234dc633SPeng Fan u32 usb1_vbus_detect_set; 147234dc633SPeng Fan u32 usb1_vbus_detect_clr; 148234dc633SPeng Fan u32 usb1_vbus_detect_tog; 149234dc633SPeng Fan u32 usb1_chrg_detect; 150234dc633SPeng Fan u32 usb1_chrg_detect_set; 151234dc633SPeng Fan u32 usb1_chrg_detect_clr; 152234dc633SPeng Fan u32 usb1_chrg_detect_tog; 153234dc633SPeng Fan u32 usb1_vbus_det_stat; 154234dc633SPeng Fan u32 usb1_vbus_det_stat_set; 155234dc633SPeng Fan u32 usb1_vbus_det_stat_clr; 156234dc633SPeng Fan u32 usb1_vbus_det_stat_tog; 157234dc633SPeng Fan u32 usb1_chrg_det_stat; 158234dc633SPeng Fan u32 usb1_chrg_det_stat_set; 159234dc633SPeng Fan u32 usb1_chrg_det_stat_clr; 160234dc633SPeng Fan u32 usb1_chrg_det_stat_tog; 161234dc633SPeng Fan u32 usb1_loopback; 162234dc633SPeng Fan u32 usb1_loopback_set; 163234dc633SPeng Fan u32 usb1_loopback_clr; 164234dc633SPeng Fan u32 usb1_loopback_tog; 165234dc633SPeng Fan u32 usb1_misc; 166234dc633SPeng Fan u32 usb1_misc_set; 167234dc633SPeng Fan u32 usb1_misc_clr; 168234dc633SPeng Fan u32 usb1_misc_tog; 169234dc633SPeng Fan u32 usb2_vbus_detect; 170234dc633SPeng Fan u32 usb2_vbus_detect_set; 171234dc633SPeng Fan u32 usb2_vbus_detect_clr; 172234dc633SPeng Fan u32 usb2_vbus_detect_tog; 173234dc633SPeng Fan u32 usb2_chrg_detect; 174234dc633SPeng Fan u32 usb2_chrg_detect_set; 175234dc633SPeng Fan u32 usb2_chrg_detect_clr; 176234dc633SPeng Fan u32 usb2_chrg_detect_tog; 177234dc633SPeng Fan u32 usb2_vbus_det_stat; 178234dc633SPeng Fan u32 usb2_vbus_det_stat_set; 179234dc633SPeng Fan u32 usb2_vbus_det_stat_clr; 180234dc633SPeng Fan u32 usb2_vbus_det_stat_tog; 181234dc633SPeng Fan u32 usb2_chrg_det_stat; 182234dc633SPeng Fan u32 usb2_chrg_det_stat_set; 183234dc633SPeng Fan u32 usb2_chrg_det_stat_clr; 184234dc633SPeng Fan u32 usb2_chrg_det_stat_tog; 185234dc633SPeng Fan u32 usb2_loopback; 186234dc633SPeng Fan u32 usb2_loopback_set; 187234dc633SPeng Fan u32 usb2_loopback_clr; 188234dc633SPeng Fan u32 usb2_loopback_tog; 189234dc633SPeng Fan u32 usb2_misc; 190234dc633SPeng Fan u32 usb2_misc_set; 191234dc633SPeng Fan u32 usb2_misc_clr; 192234dc633SPeng Fan u32 usb2_misc_tog; 193234dc633SPeng Fan u32 digprog; 194234dc633SPeng Fan u32 reserved1[7]; 195234dc633SPeng Fan /* For i.MX 6SoloLite */ 196234dc633SPeng Fan u32 digprog_sololite; 1976a376046SFabio Estevam }; 1984f60c49aSEric Nelson #endif 1996a376046SFabio Estevam 2006a376046SFabio Estevam /* Define the bits in register CCR */ 2016a376046SFabio Estevam #define MXC_CCM_CCR_RBC_EN (1 << 27) 2026a376046SFabio Estevam #define MXC_CCM_CCR_REG_BYPASS_CNT_MASK (0x3F << 21) 2036a376046SFabio Estevam #define MXC_CCM_CCR_REG_BYPASS_CNT_OFFSET 21 20443cb127bSPeng Fan /* CCR_WB does not exist on i.MX6SX/UL */ 2056a376046SFabio Estevam #define MXC_CCM_CCR_WB_COUNT_MASK 0x7 2066a376046SFabio Estevam #define MXC_CCM_CCR_WB_COUNT_OFFSET (1 << 16) 2076a376046SFabio Estevam #define MXC_CCM_CCR_COSC_EN (1 << 12) 20805d54b82SFabio Estevam #ifdef CONFIG_MX6SX 20905d54b82SFabio Estevam #define MXC_CCM_CCR_OSCNT_MASK 0x7F 21005d54b82SFabio Estevam #else 2116a376046SFabio Estevam #define MXC_CCM_CCR_OSCNT_MASK 0xFF 21205d54b82SFabio Estevam #endif 2136a376046SFabio Estevam #define MXC_CCM_CCR_OSCNT_OFFSET 0 2146a376046SFabio Estevam 2156a376046SFabio Estevam /* Define the bits in register CCDR */ 2166a376046SFabio Estevam #define MXC_CCM_CCDR_MMDC_CH1_HS_MASK (1 << 16) 2176a376046SFabio Estevam #define MXC_CCM_CCDR_MMDC_CH0_HS_MASK (1 << 17) 218e1c2d68bSPeng Fan /* Exists on i.MX6QP */ 219e1c2d68bSPeng Fan #define MXC_CCM_CCDR_MMDC_CH1_AXI_ROOT_CG (1 << 18) 2206a376046SFabio Estevam 2216a376046SFabio Estevam /* Define the bits in register CSR */ 2226a376046SFabio Estevam #define MXC_CCM_CSR_COSC_READY (1 << 5) 2236a376046SFabio Estevam #define MXC_CCM_CSR_REF_EN_B (1 << 0) 2246a376046SFabio Estevam 2256a376046SFabio Estevam /* Define the bits in register CCSR */ 2266a376046SFabio Estevam #define MXC_CCM_CCSR_PDF_540M_AUTO_DIS (1 << 15) 2276a376046SFabio Estevam #define MXC_CCM_CCSR_PDF_720M_AUTO_DIS (1 << 14) 2286a376046SFabio Estevam #define MXC_CCM_CCSR_PDF_454M_AUTO_DIS (1 << 13) 2296a376046SFabio Estevam #define MXC_CCM_CCSR_PDF_508M_AUTO_DIS (1 << 12) 2306a376046SFabio Estevam #define MXC_CCM_CCSR_PDF_594M_AUTO_DIS (1 << 11) 2316a376046SFabio Estevam #define MXC_CCM_CCSR_PDF_352M_AUTO_DIS (1 << 10) 2326a376046SFabio Estevam #define MXC_CCM_CCSR_PDF_400M_AUTO_DIS (1 << 9) 2336a376046SFabio Estevam #define MXC_CCM_CCSR_STEP_SEL (1 << 8) 2346a376046SFabio Estevam #define MXC_CCM_CCSR_PLL1_SW_CLK_SEL (1 << 2) 2356a376046SFabio Estevam #define MXC_CCM_CCSR_PLL2_SW_CLK_SEL (1 << 1) 2366a376046SFabio Estevam #define MXC_CCM_CCSR_PLL3_SW_CLK_SEL (1 << 0) 2376a376046SFabio Estevam 2386a376046SFabio Estevam /* Define the bits in register CACRR */ 2396a376046SFabio Estevam #define MXC_CCM_CACRR_ARM_PODF_OFFSET 0 2406a376046SFabio Estevam #define MXC_CCM_CACRR_ARM_PODF_MASK 0x7 2416a376046SFabio Estevam 2426a376046SFabio Estevam /* Define the bits in register CBCDR */ 2436a376046SFabio Estevam #define MXC_CCM_CBCDR_PERIPH_CLK2_PODF_MASK (0x7 << 27) 2446a376046SFabio Estevam #define MXC_CCM_CBCDR_PERIPH_CLK2_PODF_OFFSET 27 24543cb127bSPeng Fan #define MXC_CCM_CBCDR_PERIPH2_CLK_SEL (1 << 26) 2466a376046SFabio Estevam #define MXC_CCM_CBCDR_PERIPH_CLK_SEL (1 << 25) 24743cb127bSPeng Fan /* MMDC_CH0 not exists on i.MX6SX */ 2486a376046SFabio Estevam #define MXC_CCM_CBCDR_MMDC_CH0_PODF_MASK (0x7 << 19) 2496a376046SFabio Estevam #define MXC_CCM_CBCDR_MMDC_CH0_PODF_OFFSET 19 2506a376046SFabio Estevam #define MXC_CCM_CBCDR_AXI_PODF_MASK (0x7 << 16) 2516a376046SFabio Estevam #define MXC_CCM_CBCDR_AXI_PODF_OFFSET 16 2526a376046SFabio Estevam #define MXC_CCM_CBCDR_AHB_PODF_MASK (0x7 << 10) 2536a376046SFabio Estevam #define MXC_CCM_CBCDR_AHB_PODF_OFFSET 10 2546a376046SFabio Estevam #define MXC_CCM_CBCDR_IPG_PODF_MASK (0x3 << 8) 2556a376046SFabio Estevam #define MXC_CCM_CBCDR_IPG_PODF_OFFSET 8 2566a376046SFabio Estevam #define MXC_CCM_CBCDR_AXI_ALT_SEL (1 << 7) 2576a376046SFabio Estevam #define MXC_CCM_CBCDR_AXI_SEL (1 << 6) 2586a376046SFabio Estevam #define MXC_CCM_CBCDR_MMDC_CH1_PODF_MASK (0x7 << 3) 2596a376046SFabio Estevam #define MXC_CCM_CBCDR_MMDC_CH1_PODF_OFFSET 3 2606a376046SFabio Estevam #define MXC_CCM_CBCDR_PERIPH2_CLK2_PODF_MASK (0x7 << 0) 2616a376046SFabio Estevam #define MXC_CCM_CBCDR_PERIPH2_CLK2_PODF_OFFSET 0 2626a376046SFabio Estevam 2636a376046SFabio Estevam /* Define the bits in register CBCMR */ 2646a376046SFabio Estevam #define MXC_CCM_CBCMR_GPU3D_SHADER_PODF_MASK (0x7 << 29) 2656a376046SFabio Estevam #define MXC_CCM_CBCMR_GPU3D_SHADER_PODF_OFFSET 29 2666a376046SFabio Estevam #define MXC_CCM_CBCMR_GPU3D_CORE_PODF_MASK (0x7 << 26) 2676a376046SFabio Estevam #define MXC_CCM_CBCMR_GPU3D_CORE_PODF_OFFSET 26 26864ffef05SPeng Fan /* LCDIF on i.MX6SX/UL */ 26964ffef05SPeng Fan #define MXC_CCM_CBCMR_LCDIF1_PODF_MASK (0x7 << 23) 27064ffef05SPeng Fan #define MXC_CCM_CBCMR_LCDIF1_PODF_OFFSET 23 2716a376046SFabio Estevam #define MXC_CCM_CBCMR_GPU2D_CORE_PODF_MASK (0x7 << 23) 2726a376046SFabio Estevam #define MXC_CCM_CBCMR_GPU2D_CORE_PODF_OFFSET 23 2736a376046SFabio Estevam #define MXC_CCM_CBCMR_PRE_PERIPH2_CLK_SEL_MASK (0x3 << 21) 2746a376046SFabio Estevam #define MXC_CCM_CBCMR_PRE_PERIPH2_CLK_SEL_OFFSET 21 27543cb127bSPeng Fan #define MXC_CCM_CBCMR_PERIPH2_CLK2_SEL (1 << 20) 2766a376046SFabio Estevam #define MXC_CCM_CBCMR_PRE_PERIPH_CLK_SEL_MASK (0x3 << 18) 2776a376046SFabio Estevam #define MXC_CCM_CBCMR_PRE_PERIPH_CLK_SEL_OFFSET 18 27805d54b82SFabio Estevam #ifndef CONFIG_MX6SX 2796a376046SFabio Estevam #define MXC_CCM_CBCMR_GPU2D_CLK_SEL_MASK (0x3 << 16) 2806a376046SFabio Estevam #define MXC_CCM_CBCMR_GPU2D_CLK_SEL_OFFSET 16 2816a376046SFabio Estevam #define MXC_CCM_CBCMR_VPU_AXI_CLK_SEL_MASK (0x3 << 14) 2826a376046SFabio Estevam #define MXC_CCM_CBCMR_VPU_AXI_CLK_SEL_OFFSET 14 28305d54b82SFabio Estevam #endif 2846a376046SFabio Estevam #define MXC_CCM_CBCMR_PERIPH_CLK2_SEL_MASK (0x3 << 12) 2856a376046SFabio Estevam #define MXC_CCM_CBCMR_PERIPH_CLK2_SEL_OFFSET 12 28605d54b82SFabio Estevam #ifndef CONFIG_MX6SX 2876a376046SFabio Estevam #define MXC_CCM_CBCMR_VDOAXI_CLK_SEL (1 << 11) 28805d54b82SFabio Estevam #endif 2896a376046SFabio Estevam #define MXC_CCM_CBCMR_PCIE_AXI_CLK_SEL (1 << 10) 2906a376046SFabio Estevam #define MXC_CCM_CBCMR_GPU3D_SHADER_CLK_SEL_MASK (0x3 << 8) 2916a376046SFabio Estevam #define MXC_CCM_CBCMR_GPU3D_SHADER_CLK_SEL_OFFSET 8 2926a376046SFabio Estevam #define MXC_CCM_CBCMR_GPU3D_CORE_CLK_SEL_MASK (0x3 << 4) 2936a376046SFabio Estevam #define MXC_CCM_CBCMR_GPU3D_CORE_CLK_SEL_OFFSET 4 294e1c2d68bSPeng Fan /* Exists on i.MX6QP */ 295e1c2d68bSPeng Fan #define MXC_CCM_CBCMR_PRE_CLK_SEL (1 << 1) 2966a376046SFabio Estevam 2976a376046SFabio Estevam /* Define the bits in register CSCMR1 */ 2986a376046SFabio Estevam #define MXC_CCM_CSCMR1_ACLK_EMI_SLOW_MASK (0x3 << 29) 2996a376046SFabio Estevam #define MXC_CCM_CSCMR1_ACLK_EMI_SLOW_OFFSET 29 30043cb127bSPeng Fan /* QSPI1 exist on i.MX6SX/UL */ 30105d54b82SFabio Estevam #define MXC_CCM_CSCMR1_QSPI1_PODF_MASK (0x7 << 26) 30205d54b82SFabio Estevam #define MXC_CCM_CSCMR1_QSPI1_PODF_OFFSET 26 3036a376046SFabio Estevam #define MXC_CCM_CSCMR1_ACLK_EMI_MASK (0x3 << 27) 3046a376046SFabio Estevam #define MXC_CCM_CSCMR1_ACLK_EMI_OFFSET 27 3056a376046SFabio Estevam #define MXC_CCM_CSCMR1_ACLK_EMI_SLOW_PODF_MASK (0x7 << 23) 3066a376046SFabio Estevam #define MXC_CCM_CSCMR1_ACLK_EMI_SLOW_PODF_OFFSET 23 30764ffef05SPeng Fan /* LCFIF2_PODF on i.MX6SX */ 30864ffef05SPeng Fan #define MXC_CCM_CSCMR1_LCDIF2_PODF_MASK (0x7 << 20) 30964ffef05SPeng Fan #define MXC_CCM_CSCMR1_LCDIF2_PODF_OFFSET 20 310*e332623bSPeng Fan /* LCDIF_PIX_PODF on i.MX6SL */ 311*e332623bSPeng Fan #define MXC_CCM_CSCMR1_LCDIF_PIX_PODF_MASK (0x7 << 20) 312*e332623bSPeng Fan #define MXC_CCM_CSCMR1_LCDIF_PIX_PODF_OFFSET 20 31364ffef05SPeng Fan /* ACLK_EMI on i.MX6DQ/SDL/DQP */ 3146a376046SFabio Estevam #define MXC_CCM_CSCMR1_ACLK_EMI_PODF_MASK (0x7 << 20) 3156a376046SFabio Estevam #define MXC_CCM_CSCMR1_ACLK_EMI_PODF_OFFSET 20 31643cb127bSPeng Fan /* CSCMR1_GPMI/BCH exist on i.MX6UL */ 31743cb127bSPeng Fan #define MXC_CCM_CSCMR1_GPMI_CLK_SEL (1 << 19) 31843cb127bSPeng Fan #define MXC_CCM_CSCMR1_BCH_CLK_SEL (1 << 18) 3196a376046SFabio Estevam #define MXC_CCM_CSCMR1_USDHC4_CLK_SEL (1 << 19) 3206a376046SFabio Estevam #define MXC_CCM_CSCMR1_USDHC3_CLK_SEL (1 << 18) 3216a376046SFabio Estevam #define MXC_CCM_CSCMR1_USDHC2_CLK_SEL (1 << 17) 3226a376046SFabio Estevam #define MXC_CCM_CSCMR1_USDHC1_CLK_SEL (1 << 16) 3236a376046SFabio Estevam #define MXC_CCM_CSCMR1_SSI3_CLK_SEL_MASK (0x3 << 14) 3246a376046SFabio Estevam #define MXC_CCM_CSCMR1_SSI3_CLK_SEL_OFFSET 14 3256a376046SFabio Estevam #define MXC_CCM_CSCMR1_SSI2_CLK_SEL_MASK (0x3 << 12) 3266a376046SFabio Estevam #define MXC_CCM_CSCMR1_SSI2_CLK_SEL_OFFSET 12 3276a376046SFabio Estevam #define MXC_CCM_CSCMR1_SSI1_CLK_SEL_MASK (0x3 << 10) 3286a376046SFabio Estevam #define MXC_CCM_CSCMR1_SSI1_CLK_SEL_OFFSET 10 32943cb127bSPeng Fan /* QSPI1 exist on i.MX6SX/UL */ 33005d54b82SFabio Estevam #define MXC_CCM_CSCMR1_QSPI1_CLK_SEL_MASK (0x7 << 7) 33105d54b82SFabio Estevam #define MXC_CCM_CSCMR1_QSPI1_CLK_SEL_OFFSET 7 332e1c2d68bSPeng Fan /* CSCMR1_PER_CLK exists on i.MX6SX/SL/QP */ 33305d54b82SFabio Estevam #define MXC_CCM_CSCMR1_PER_CLK_SEL_MASK (1 << 6) 33405d54b82SFabio Estevam #define MXC_CCM_CSCMR1_PER_CLK_SEL_OFFSET 6 335e1c2d68bSPeng Fan 3366a376046SFabio Estevam #define MXC_CCM_CSCMR1_PERCLK_PODF_MASK 0x3F 3376a376046SFabio Estevam 3386a376046SFabio Estevam /* Define the bits in register CSCMR2 */ 33905d54b82SFabio Estevam #ifdef CONFIG_MX6SX 34005d54b82SFabio Estevam #define MXC_CCM_CSCMR2_VID_CLK_SEL_MASK (0x7 << 21) 34105d54b82SFabio Estevam #define MXC_CCM_CSCMR2_VID_CLK_SEL_OFFSET 21 34205d54b82SFabio Estevam #endif 3436a376046SFabio Estevam #define MXC_CCM_CSCMR2_ESAI_PRE_SEL_MASK (0x3 << 19) 3446a376046SFabio Estevam #define MXC_CCM_CSCMR2_ESAI_PRE_SEL_OFFSET 19 3456a376046SFabio Estevam #define MXC_CCM_CSCMR2_LDB_DI1_IPU_DIV (1 << 11) 3466a376046SFabio Estevam #define MXC_CCM_CSCMR2_LDB_DI0_IPU_DIV (1 << 10) 347e1c2d68bSPeng Fan /* CSCMR1_CAN_CLK exists on i.MX6SX/QP */ 34805d54b82SFabio Estevam #define MXC_CCM_CSCMR2_CAN_CLK_SEL_MASK (0x3 << 8) 34905d54b82SFabio Estevam #define MXC_CCM_CSCMR2_CAN_CLK_SEL_OFFSET 8 350e1c2d68bSPeng Fan 35105d54b82SFabio Estevam #define MXC_CCM_CSCMR2_CAN_CLK_PODF_MASK (0x3F << 2) 35205d54b82SFabio Estevam #define MXC_CCM_CSCMR2_CAN_CLK_PODF_OFFSET 2 3536a376046SFabio Estevam 3546a376046SFabio Estevam /* Define the bits in register CSCDR1 */ 35505d54b82SFabio Estevam #ifndef CONFIG_MX6SX 3566a376046SFabio Estevam #define MXC_CCM_CSCDR1_VPU_AXI_PODF_MASK (0x7 << 25) 3576a376046SFabio Estevam #define MXC_CCM_CSCDR1_VPU_AXI_PODF_OFFSET 25 35805d54b82SFabio Estevam #endif 35943cb127bSPeng Fan /* CSCDR1_GPMI/BCH exist on i.MX6UL */ 36043cb127bSPeng Fan #define MXC_CCM_CSCDR1_GPMI_PODF_MASK (0x7 << 22) 36143cb127bSPeng Fan #define MXC_CCM_CSCDR1_GPMI_PODF_OFFSET 22 36243cb127bSPeng Fan #define MXC_CCM_CSCDR1_BCH_PODF_MASK (0x7 << 19) 36343cb127bSPeng Fan #define MXC_CCM_CSCDR1_BCH_PODF_OFFSET 19 36443cb127bSPeng Fan 3656a376046SFabio Estevam #define MXC_CCM_CSCDR1_USDHC4_PODF_MASK (0x7 << 22) 3666a376046SFabio Estevam #define MXC_CCM_CSCDR1_USDHC4_PODF_OFFSET 22 3676a376046SFabio Estevam #define MXC_CCM_CSCDR1_USDHC3_PODF_MASK (0x7 << 19) 3686a376046SFabio Estevam #define MXC_CCM_CSCDR1_USDHC3_PODF_OFFSET 19 3696a376046SFabio Estevam #define MXC_CCM_CSCDR1_USDHC2_PODF_MASK (0x7 << 16) 3706a376046SFabio Estevam #define MXC_CCM_CSCDR1_USDHC2_PODF_OFFSET 16 3716a376046SFabio Estevam #define MXC_CCM_CSCDR1_USDHC1_PODF_MASK (0x7 << 11) 3726a376046SFabio Estevam #define MXC_CCM_CSCDR1_USDHC1_PODF_OFFSET 11 37305d54b82SFabio Estevam #ifndef CONFIG_MX6SX 3746a376046SFabio Estevam #define MXC_CCM_CSCDR1_USBOH3_CLK_PRED_OFFSET 8 3756a376046SFabio Estevam #define MXC_CCM_CSCDR1_USBOH3_CLK_PRED_MASK (0x7 << 8) 3766a376046SFabio Estevam #define MXC_CCM_CSCDR1_USBOH3_CLK_PODF_OFFSET 6 3776a376046SFabio Estevam #define MXC_CCM_CSCDR1_USBOH3_CLK_PODF_MASK (0x3 << 6) 37805d54b82SFabio Estevam #endif 3796a376046SFabio Estevam #define MXC_CCM_CSCDR1_UART_CLK_PODF_MASK 0x3F 3806a376046SFabio Estevam #define MXC_CCM_CSCDR1_UART_CLK_PODF_OFFSET 0 381e1c2d68bSPeng Fan /* UART_CLK_SEL exists on i.MX6SL/SX/QP */ 382e1c2d68bSPeng Fan #define MXC_CCM_CSCDR1_UART_CLK_SEL (1 << 6) 3836a376046SFabio Estevam 3846a376046SFabio Estevam /* Define the bits in register CS1CDR */ 3853974b7f6SPeng Fan /* MX6UL, !MX6ULL */ 3863974b7f6SPeng Fan #define MXC_CCM_CS1CDR_SAI3_CLK_PRED_MASK (0x7 << 22) 3873974b7f6SPeng Fan #define MXC_CCM_CS1CDR_SAI3_CLK_PRED_OFFSET 22 3883974b7f6SPeng Fan #define MXC_CCM_CS1CDR_SAI3_CLK_PODF_MASK (0x3F << 16) 3893974b7f6SPeng Fan #define MXC_CCM_CS1CDR_SAI3_CLK_PODF_OFFSET 16 3903974b7f6SPeng Fan #define MXC_CCM_CS1CDR_SAI1_CLK_PRED_MASK (0x7 << 6) 3913974b7f6SPeng Fan #define MXC_CCM_CS1CDR_SAI1_CLK_PRED_OFFSET 6 3923974b7f6SPeng Fan #define MXC_CCM_CS1CDR_SAI1_CLK_PODF_MASK 0x3F 3933974b7f6SPeng Fan #define MXC_CCM_CS1CDR_SAI1_CLK_PODF_OFFSET 0 3943974b7f6SPeng Fan 3956a376046SFabio Estevam #define MXC_CCM_CS1CDR_ESAI_CLK_PODF_MASK (0x3F << 25) 3966a376046SFabio Estevam #define MXC_CCM_CS1CDR_ESAI_CLK_PODF_OFFSET 25 39705d54b82SFabio Estevam #define MXC_CCM_CS1CDR_SSI3_CLK_PRED_MASK (0x7 << 22) 39805d54b82SFabio Estevam #define MXC_CCM_CS1CDR_SSI3_CLK_PRED_OFFSET 22 3996a376046SFabio Estevam #define MXC_CCM_CS1CDR_SSI3_CLK_PODF_MASK (0x3F << 16) 4006a376046SFabio Estevam #define MXC_CCM_CS1CDR_SSI3_CLK_PODF_OFFSET 16 4016a376046SFabio Estevam #define MXC_CCM_CS1CDR_ESAI_CLK_PRED_MASK (0x3 << 9) 4026a376046SFabio Estevam #define MXC_CCM_CS1CDR_ESAI_CLK_PRED_OFFSET 9 4036a376046SFabio Estevam #define MXC_CCM_CS1CDR_SSI1_CLK_PRED_MASK (0x7 << 6) 4046a376046SFabio Estevam #define MXC_CCM_CS1CDR_SSI1_CLK_PRED_OFFSET 6 4056a376046SFabio Estevam #define MXC_CCM_CS1CDR_SSI1_CLK_PODF_MASK 0x3F 4066a376046SFabio Estevam #define MXC_CCM_CS1CDR_SSI1_CLK_PODF_OFFSET 0 4076a376046SFabio Estevam 4086a376046SFabio Estevam /* Define the bits in register CS2CDR */ 40943cb127bSPeng Fan /* QSPI2 on i.MX6SX */ 41005d54b82SFabio Estevam #define MXC_CCM_CS2CDR_QSPI2_CLK_PODF_MASK (0x3F << 21) 41105d54b82SFabio Estevam #define MXC_CCM_CS2CDR_QSPI2_CLK_PODF_OFFSET 21 41205d54b82SFabio Estevam #define MXC_CCM_CS2CDR_QSPI2_CLK_PODF(v) (((v) & 0x3f) << 21) 41305d54b82SFabio Estevam #define MXC_CCM_CS2CDR_QSPI2_CLK_PRED_MASK (0x7 << 18) 41405d54b82SFabio Estevam #define MXC_CCM_CS2CDR_QSPI2_CLK_PRED_OFFSET 18 41505d54b82SFabio Estevam #define MXC_CCM_CS2CDR_QSPI2_CLK_PRED(v) (((v) & 0x7) << 18) 41605d54b82SFabio Estevam #define MXC_CCM_CS2CDR_QSPI2_CLK_SEL_MASK (0x7 << 15) 41705d54b82SFabio Estevam #define MXC_CCM_CS2CDR_QSPI2_CLK_SEL_OFFSET 15 41805d54b82SFabio Estevam #define MXC_CCM_CS2CDR_QSPI2_CLK_SEL(v) (((v) & 0x7) << 15) 41943cb127bSPeng Fan 4206a376046SFabio Estevam #define MXC_CCM_CS2CDR_ENFC_CLK_PODF_MASK (0x3F << 21) 4216a376046SFabio Estevam #define MXC_CCM_CS2CDR_ENFC_CLK_PODF_OFFSET 21 422b29ca4a1SStefan Roese #define MXC_CCM_CS2CDR_ENFC_CLK_PODF(v) (((v) & 0x3f) << 21) 4236a376046SFabio Estevam #define MXC_CCM_CS2CDR_ENFC_CLK_PRED_MASK (0x7 << 18) 4246a376046SFabio Estevam #define MXC_CCM_CS2CDR_ENFC_CLK_PRED_OFFSET 18 425b29ca4a1SStefan Roese #define MXC_CCM_CS2CDR_ENFC_CLK_PRED(v) (((v) & 0x7) << 18) 426e1c2d68bSPeng Fan 42743cb127bSPeng Fan #define MXC_CCM_CS2CDR_ENFC_CLK_SEL_MASK_DQP (0x7 << 15) 42843cb127bSPeng Fan #define MXC_CCM_CS2CDR_ENFC_CLK_SEL_OFFSET_DQP 15 42943cb127bSPeng Fan #define MXC_CCM_CS2CDR_ENFC_CLK_SEL_DQP(v) (((v) & 0x7) << 15) 43043cb127bSPeng Fan #define MXC_CCM_CS2CDR_ENFC_CLK_SEL_MASK_DQ (0x3 << 16) 43143cb127bSPeng Fan #define MXC_CCM_CS2CDR_ENFC_CLK_SEL_OFFSET_DQ 16 43243cb127bSPeng Fan #define MXC_CCM_CS2CDR_ENFC_CLK_SEL_DQ(v) (((v) & 0x3) << 16) 433e1c2d68bSPeng Fan 43443cb127bSPeng Fan #define MXC_CCM_CS2CDR_ENFC_CLK_SEL_MASK \ 43543cb127bSPeng Fan ((is_mx6dqp() || is_cpu_type(MXC_CPU_MX6UL)) ? \ 43643cb127bSPeng Fan MXC_CCM_CS2CDR_ENFC_CLK_SEL_MASK_DQP : \ 43743cb127bSPeng Fan MXC_CCM_CS2CDR_ENFC_CLK_SEL_MASK_DQ) 43843cb127bSPeng Fan #define MXC_CCM_CS2CDR_ENFC_CLK_SEL_OFFSET \ 43943cb127bSPeng Fan ((is_mx6dqp() || is_cpu_type(MXC_CPU_MX6UL)) ? \ 44043cb127bSPeng Fan MXC_CCM_CS2CDR_ENFC_CLK_SEL_OFFSET_DQP : \ 44143cb127bSPeng Fan MXC_CCM_CS2CDR_ENFC_CLK_SEL_OFFSET_DQ) 44243cb127bSPeng Fan #define MXC_CCM_CS2CDR_ENFC_CLK_SEL(v) \ 44343cb127bSPeng Fan ((is_mx6dqp() || is_cpu_type(MXC_CPU_MX6UL)) ? \ 44443cb127bSPeng Fan MXC_CCM_CS2CDR_ENFC_CLK_SEL_DQP(v) : \ 44543cb127bSPeng Fan MXC_CCM_CS2CDR_ENFC_CLK_SEL_DQ(v)) 44643cb127bSPeng Fan 4476a376046SFabio Estevam #define MXC_CCM_CS2CDR_LDB_DI1_CLK_SEL_MASK (0x7 << 12) 4486a376046SFabio Estevam #define MXC_CCM_CS2CDR_LDB_DI1_CLK_SEL_OFFSET 12 4496a376046SFabio Estevam #define MXC_CCM_CS2CDR_LDB_DI0_CLK_SEL_MASK (0x7 << 9) 4506a376046SFabio Estevam #define MXC_CCM_CS2CDR_LDB_DI0_CLK_SEL_OFFSET 9 4516a376046SFabio Estevam #define MXC_CCM_CS2CDR_SSI2_CLK_PRED_MASK (0x7 << 6) 4526a376046SFabio Estevam #define MXC_CCM_CS2CDR_SSI2_CLK_PRED_OFFSET 6 4536a376046SFabio Estevam #define MXC_CCM_CS2CDR_SSI2_CLK_PODF_MASK 0x3F 4546a376046SFabio Estevam #define MXC_CCM_CS2CDR_SSI2_CLK_PODF_OFFSET 0 4556a376046SFabio Estevam 4566a376046SFabio Estevam /* Define the bits in register CDCDR */ 45705d54b82SFabio Estevam #ifndef CONFIG_MX6SX 4586a376046SFabio Estevam #define MXC_CCM_CDCDR_HSI_TX_PODF_MASK (0x7 << 29) 4596a376046SFabio Estevam #define MXC_CCM_CDCDR_HSI_TX_PODF_OFFSET 29 4606a376046SFabio Estevam #define MXC_CCM_CDCDR_HSI_TX_CLK_SEL (1 << 28) 46105d54b82SFabio Estevam #endif 4626a376046SFabio Estevam #define MXC_CCM_CDCDR_SPDIF0_CLK_PRED_MASK (0x7 << 25) 4636a376046SFabio Estevam #define MXC_CCM_CDCDR_SPDIF0_CLK_PRED_OFFSET 25 464338c9da6SFabio Estevam #define MXC_CCM_CDCDR_SPDIF0_CLK_PODF_MASK (0x7 << 22) 465338c9da6SFabio Estevam #define MXC_CCM_CDCDR_SPDIF0_CLK_PODF_OFFSET 22 4666a376046SFabio Estevam #define MXC_CCM_CDCDR_SPDIF0_CLK_SEL_MASK (0x3 << 20) 4676a376046SFabio Estevam #define MXC_CCM_CDCDR_SPDIF0_CLK_SEL_OFFSET 20 4686a376046SFabio Estevam #define MXC_CCM_CDCDR_SPDIF1_CLK_PRED_MASK (0x7 << 12) 4696a376046SFabio Estevam #define MXC_CCM_CDCDR_SPDIF1_CLK_PRED_OFFSET 12 4706a376046SFabio Estevam #define MXC_CCM_CDCDR_SPDIF1_CLK_PODF_MASK (0x7 << 9) 4716a376046SFabio Estevam #define MXC_CCM_CDCDR_SPDIF1_CLK_PODF_OFFSET 9 4726a376046SFabio Estevam #define MXC_CCM_CDCDR_SPDIF1_CLK_SEL_MASK (0x3 << 7) 4736a376046SFabio Estevam #define MXC_CCM_CDCDR_SPDIF1_CLK_SEL_OFFSET 7 4746a376046SFabio Estevam 4756a376046SFabio Estevam /* Define the bits in register CHSCCDR */ 4763974b7f6SPeng Fan /* i.MX6SX */ 47705d54b82SFabio Estevam #define MXC_CCM_CHSCCDR_ENET_PRE_CLK_SEL_MASK (0x7 << 15) 47805d54b82SFabio Estevam #define MXC_CCM_CHSCCDR_ENET_PRE_CLK_SEL_OFFSET 15 47905d54b82SFabio Estevam #define MXC_CCM_CHSCCDR_ENET_PODF_MASK (0x7 << 12) 48005d54b82SFabio Estevam #define MXC_CCM_CHSCCDR_ENET_PODF_OFFSET 12 48105d54b82SFabio Estevam #define MXC_CCM_CHSCCDR_ENET_CLK_SEL_MASK (0x7 << 9) 48205d54b82SFabio Estevam #define MXC_CCM_CHSCCDR_ENET_CLK_SEL_OFFSET 9 48305d54b82SFabio Estevam #define MXC_CCM_CHSCCDR_M4_PRE_CLK_SEL_MASK (0x7 << 6) 48405d54b82SFabio Estevam #define MXC_CCM_CHSCCDR_M4_PRE_CLK_SEL_OFFSET 6 48505d54b82SFabio Estevam #define MXC_CCM_CHSCCDR_M4_PODF_MASK (0x7 << 3) 48605d54b82SFabio Estevam #define MXC_CCM_CHSCCDR_M4_PODF_OFFSET 3 48705d54b82SFabio Estevam #define MXC_CCM_CHSCCDR_M4_CLK_SEL_MASK (0x7) 48805d54b82SFabio Estevam #define MXC_CCM_CHSCCDR_M4_CLK_SEL_OFFSET 0 4893974b7f6SPeng Fan 4906a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU1_DI1_PRE_CLK_SEL_MASK (0x7 << 15) 4916a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU1_DI1_PRE_CLK_SEL_OFFSET 15 4926a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU1_DI1_PODF_MASK (0x7 << 12) 4936a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU1_DI1_PODF_OFFSET 12 4946a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU1_DI1_CLK_SEL_MASK (0x7 << 9) 4956a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU1_DI1_CLK_SEL_OFFSET 9 4966a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU1_DI0_PRE_CLK_SEL_MASK (0x7 << 6) 4976a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU1_DI0_PRE_CLK_SEL_OFFSET 6 4986a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU1_DI0_PODF_MASK (0x7 << 3) 4996a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU1_DI0_PODF_OFFSET 3 5006a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU1_DI0_CLK_SEL_MASK (0x7) 5016a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU1_DI0_CLK_SEL_OFFSET 0 5023974b7f6SPeng Fan 5033974b7f6SPeng Fan /* i.MX6ULL */ 5043974b7f6SPeng Fan #define MXC_CCM_CHSCCDR_EPDC_PRE_CLK_SEL_MASK (0x7 << 15) 5053974b7f6SPeng Fan #define MXC_CCM_CHSCCDR_EPDC_PRE_CLK_SEL_OFFSET 15 5063974b7f6SPeng Fan #define MXC_CCM_CHSCCDR_EPDC_PODF_MASK (0x7 << 12) 5073974b7f6SPeng Fan #define MXC_CCM_CHSCCDR_EPDC_PODF_OFFSET 12 5083974b7f6SPeng Fan #define MXC_CCM_CHSCCDR_EPDC_CLK_SEL_MASK (0x7 << 9) 5093974b7f6SPeng Fan #define MXC_CCM_CHSCCDR_EPDC_CLK_SEL_OFFSET 9 5106a376046SFabio Estevam 511344da71aSEric Nelson #define CHSCCDR_CLK_SEL_LDB_DI0 3 512344da71aSEric Nelson #define CHSCCDR_PODF_DIVIDE_BY_3 2 513344da71aSEric Nelson #define CHSCCDR_IPU_PRE_CLK_540M_PFD 5 514344da71aSEric Nelson 5156a376046SFabio Estevam /* Define the bits in register CSCDR2 */ 5166a376046SFabio Estevam #define MXC_CCM_CSCDR2_ECSPI_CLK_PODF_MASK (0x3F << 19) 5176a376046SFabio Estevam #define MXC_CCM_CSCDR2_ECSPI_CLK_PODF_OFFSET 19 518e1c2d68bSPeng Fan /* ECSPI_CLK_SEL exists on i.MX6SX/SL/QP */ 519e1c2d68bSPeng Fan #define MXC_CCM_CSCDR2_ECSPI_CLK_SEL_MASK (0x1 << 18) 52064ffef05SPeng Fan /* LCDIF1 on i.MX6SX/UL */ 52164ffef05SPeng Fan #define MXC_CCM_CSCDR2_LCDIF1_PRED_SEL_MASK (0x7 << 15) 52264ffef05SPeng Fan #define MXC_CCM_CSCDR2_LCDIF1_PRED_SEL_OFFSET 15 52364ffef05SPeng Fan #define MXC_CCM_CSCDR2_LCDIF1_PRE_DIV_MASK (0x7 << 12) 52464ffef05SPeng Fan #define MXC_CCM_CSCDR2_LCDIF1_PRE_DIV_OFFSET 12 52564ffef05SPeng Fan #define MXC_CCM_CSCDR2_LCDIF1_CLK_SEL_MASK (0x7 << 9) 52664ffef05SPeng Fan #define MXC_CCM_CSCDR2_LCDIF1_CLK_SEL_OFFSET 9 52764ffef05SPeng Fan /* LCDIF2 on i.MX6SX */ 52864ffef05SPeng Fan #define MXC_CCM_CSCDR2_LCDIF2_PRED_SEL_MASK (0x7 << 6) 52964ffef05SPeng Fan #define MXC_CCM_CSCDR2_LCDIF2_PRED_SEL_OFFSET 6 53064ffef05SPeng Fan #define MXC_CCM_CSCDR2_LCDIF2_PRE_DIV_MASK (0x7 << 3) 53164ffef05SPeng Fan #define MXC_CCM_CSCDR2_LCDIF2_PRE_DIV_OFFSET 3 53264ffef05SPeng Fan #define MXC_CCM_CSCDR2_LCDIF2_CLK_SEL_MASK (0x7 << 0) 53364ffef05SPeng Fan #define MXC_CCM_CSCDR2_LCDIF2_CLK_SEL_OFFSET 0 534e1c2d68bSPeng Fan 535*e332623bSPeng Fan /*LCD on i.MX6SL */ 536*e332623bSPeng Fan #define MXC_CCM_CSCDR2_LCDIF_PIX_CLK_SEL_MASK (0x7 << 6) 537*e332623bSPeng Fan #define MXC_CCM_CSCDR2_LCDIF_PIX_CLK_SEL_OFFSET 6 538*e332623bSPeng Fan #define MXC_CCM_CSCDR2_LCDIF_PIX_PRE_DIV_MASK (0x7 << 3) 539*e332623bSPeng Fan #define MXC_CCM_CSCDR2_LCDIF_PIX_PRE_DIV_OFFSET 3 540*e332623bSPeng Fan 54105d54b82SFabio Estevam /* All IPU2_DI1 are LCDIF1 on MX6SX */ 5426a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU2_DI1_PRE_CLK_SEL_MASK (0x7 << 15) 5436a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU2_DI1_PRE_CLK_SEL_OFFSET 15 5446a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU2_DI1_PODF_MASK (0x7 << 12) 5456a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU2_DI1_PODF_OFFSET 12 5466a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU2_DI1_CLK_SEL_MASK (0x7 << 9) 5476a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU2_DI1_CLK_SEL_OFFSET 9 54805d54b82SFabio Estevam /* All IPU2_DI0 are LCDIF2 on MX6SX */ 5496a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU2_DI0_PRE_CLK_SEL_MASK (0x7 << 6) 5506a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU2_DI0_PRE_CLK_SEL_OFFSET 6 5516a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU2_DI0_PODF_MASK (0x7 << 3) 5526a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU2_DI0_PODF_OFFSET 3 5536a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU2_DI0_CLK_SEL_MASK 0x7 5546a376046SFabio Estevam #define MXC_CCM_CHSCCDR_IPU2_DI0_CLK_SEL_OFFSET 0 5556a376046SFabio Estevam 5566a376046SFabio Estevam /* Define the bits in register CSCDR3 */ 5576a376046SFabio Estevam #define MXC_CCM_CSCDR3_IPU2_HSP_PODF_MASK (0x7 << 16) 5586a376046SFabio Estevam #define MXC_CCM_CSCDR3_IPU2_HSP_PODF_OFFSET 16 5596a376046SFabio Estevam #define MXC_CCM_CSCDR3_IPU2_HSP_CLK_SEL_MASK (0x3 << 14) 5606a376046SFabio Estevam #define MXC_CCM_CSCDR3_IPU2_HSP_CLK_SEL_OFFSET 14 5616a376046SFabio Estevam #define MXC_CCM_CSCDR3_IPU1_HSP_PODF_MASK (0x7 << 11) 5626a376046SFabio Estevam #define MXC_CCM_CSCDR3_IPU1_HSP_PODF_OFFSET 11 5636a376046SFabio Estevam #define MXC_CCM_CSCDR3_IPU1_HSP_CLK_SEL_MASK (0x3 << 9) 5646a376046SFabio Estevam #define MXC_CCM_CSCDR3_IPU1_HSP_CLK_SEL_OFFSET 9 5656a376046SFabio Estevam 566*e332623bSPeng Fan /* For i.MX6SL */ 567*e332623bSPeng Fan #define MXC_CCM_CSCDR3_LCDIF_AXI_PODF_MASK (0x7 << 16) 568*e332623bSPeng Fan #define MXC_CCM_CSCDR3_LCDIF_AXI_PODF_OFFSET 16 569*e332623bSPeng Fan #define MXC_CCM_CSCDR3_LCDIF_AXI_CLK_SEL_MASK (0x3 << 14) 570*e332623bSPeng Fan #define MXC_CCM_CSCDR3_LCDIF_AXI_CLK_SEL_OFFSET 14 571*e332623bSPeng Fan 5726a376046SFabio Estevam /* Define the bits in register CDHIPR */ 5736a376046SFabio Estevam #define MXC_CCM_CDHIPR_ARM_PODF_BUSY (1 << 16) 5746a376046SFabio Estevam #define MXC_CCM_CDHIPR_PERIPH_CLK_SEL_BUSY (1 << 5) 57505d54b82SFabio Estevam #ifndef CONFIG_MX6SX 5766a376046SFabio Estevam #define MXC_CCM_CDHIPR_MMDC_CH0_PODF_BUSY (1 << 4) 57705d54b82SFabio Estevam #endif 5786a376046SFabio Estevam #define MXC_CCM_CDHIPR_PERIPH2_CLK_SEL_BUSY (1 << 3) 5796a376046SFabio Estevam #define MXC_CCM_CDHIPR_MMDC_CH1_PODF_BUSY (1 << 2) 5806a376046SFabio Estevam #define MXC_CCM_CDHIPR_AHB_PODF_BUSY (1 << 1) 5816a376046SFabio Estevam #define MXC_CCM_CDHIPR_AXI_PODF_BUSY 1 5826a376046SFabio Estevam 5836a376046SFabio Estevam /* Define the bits in register CLPCR */ 5846a376046SFabio Estevam #define MXC_CCM_CLPCR_MASK_L2CC_IDLE (1 << 27) 5856a376046SFabio Estevam #define MXC_CCM_CLPCR_MASK_SCU_IDLE (1 << 26) 58605d54b82SFabio Estevam #ifndef CONFIG_MX6SX 5876a376046SFabio Estevam #define MXC_CCM_CLPCR_MASK_CORE3_WFI (1 << 25) 5886a376046SFabio Estevam #define MXC_CCM_CLPCR_MASK_CORE2_WFI (1 << 24) 5896a376046SFabio Estevam #define MXC_CCM_CLPCR_MASK_CORE1_WFI (1 << 23) 59005d54b82SFabio Estevam #endif 5916a376046SFabio Estevam #define MXC_CCM_CLPCR_MASK_CORE0_WFI (1 << 22) 5926a376046SFabio Estevam #define MXC_CCM_CLPCR_BYP_MMDC_CH1_LPM_HS (1 << 21) 59305d54b82SFabio Estevam #ifndef CONFIG_MX6SX 5946a376046SFabio Estevam #define MXC_CCM_CLPCR_BYP_MMDC_CH0_LPM_HS (1 << 19) 5956a376046SFabio Estevam #define MXC_CCM_CLPCR_WB_CORE_AT_LPM (1 << 17) 59605d54b82SFabio Estevam #endif 597326454a8SFabio Estevam #define MXC_CCM_CLPCR_WB_PER_AT_LPM (1 << 16) 5986a376046SFabio Estevam #define MXC_CCM_CLPCR_COSC_PWRDOWN (1 << 11) 5996a376046SFabio Estevam #define MXC_CCM_CLPCR_STBY_COUNT_MASK (0x3 << 9) 6006a376046SFabio Estevam #define MXC_CCM_CLPCR_STBY_COUNT_OFFSET 9 6016a376046SFabio Estevam #define MXC_CCM_CLPCR_VSTBY (1 << 8) 6026a376046SFabio Estevam #define MXC_CCM_CLPCR_DIS_REF_OSC (1 << 7) 6036a376046SFabio Estevam #define MXC_CCM_CLPCR_SBYOS (1 << 6) 6046a376046SFabio Estevam #define MXC_CCM_CLPCR_ARM_CLK_DIS_ON_LPM (1 << 5) 60505d54b82SFabio Estevam #ifndef CONFIG_MX6SX 6066a376046SFabio Estevam #define MXC_CCM_CLPCR_LPSR_CLK_SEL_MASK (0x3 << 3) 6076a376046SFabio Estevam #define MXC_CCM_CLPCR_LPSR_CLK_SEL_OFFSET 3 6086a376046SFabio Estevam #define MXC_CCM_CLPCR_BYPASS_PMIC_VFUNC_READY (1 << 2) 60905d54b82SFabio Estevam #endif 6106a376046SFabio Estevam #define MXC_CCM_CLPCR_LPM_MASK 0x3 6116a376046SFabio Estevam #define MXC_CCM_CLPCR_LPM_OFFSET 0 6126a376046SFabio Estevam 6136a376046SFabio Estevam /* Define the bits in register CISR */ 6146a376046SFabio Estevam #define MXC_CCM_CISR_ARM_PODF_LOADED (1 << 26) 61505d54b82SFabio Estevam #ifndef CONFIG_MX6SX 6166a376046SFabio Estevam #define MXC_CCM_CISR_MMDC_CH0_PODF_LOADED (1 << 23) 61705d54b82SFabio Estevam #endif 6186a376046SFabio Estevam #define MXC_CCM_CISR_PERIPH_CLK_SEL_LOADED (1 << 22) 6196a376046SFabio Estevam #define MXC_CCM_CISR_MMDC_CH1_PODF_LOADED (1 << 21) 6206a376046SFabio Estevam #define MXC_CCM_CISR_AHB_PODF_LOADED (1 << 20) 6216a376046SFabio Estevam #define MXC_CCM_CISR_PERIPH2_CLK_SEL_LOADED (1 << 19) 6226a376046SFabio Estevam #define MXC_CCM_CISR_AXI_PODF_LOADED (1 << 17) 6236a376046SFabio Estevam #define MXC_CCM_CISR_COSC_READY (1 << 6) 6246a376046SFabio Estevam #define MXC_CCM_CISR_LRF_PLL 1 6256a376046SFabio Estevam 6266a376046SFabio Estevam /* Define the bits in register CIMR */ 6276a376046SFabio Estevam #define MXC_CCM_CIMR_MASK_ARM_PODF_LOADED (1 << 26) 62805d54b82SFabio Estevam #ifndef CONFIG_MX6SX 6296a376046SFabio Estevam #define MXC_CCM_CIMR_MASK_MMDC_CH0_PODF_LOADED (1 << 23) 63005d54b82SFabio Estevam #endif 6316a376046SFabio Estevam #define MXC_CCM_CIMR_MASK_PERIPH_CLK_SEL_LOADED (1 << 22) 6326a376046SFabio Estevam #define MXC_CCM_CIMR_MASK_MMDC_CH1_PODF_LOADED (1 << 21) 6336a376046SFabio Estevam #define MXC_CCM_CIMR_MASK_AHB_PODF_LOADED (1 << 20) 6349cd744ffSFabio Estevam #define MXC_CCM_CIMR_MASK_PERIPH2_CLK_SEL_LOADED (1 << 19) 6356a376046SFabio Estevam #define MXC_CCM_CIMR_MASK_AXI_PODF_LOADED (1 << 17) 6366a376046SFabio Estevam #define MXC_CCM_CIMR_MASK_COSC_READY (1 << 6) 6376a376046SFabio Estevam #define MXC_CCM_CIMR_MASK_LRF_PLL 1 6386a376046SFabio Estevam 6396a376046SFabio Estevam /* Define the bits in register CCOSR */ 6406a376046SFabio Estevam #define MXC_CCM_CCOSR_CKO2_EN_OFFSET (1 << 24) 6416a376046SFabio Estevam #define MXC_CCM_CCOSR_CKO2_DIV_MASK (0x7 << 21) 6426a376046SFabio Estevam #define MXC_CCM_CCOSR_CKO2_DIV_OFFSET 21 6436a376046SFabio Estevam #define MXC_CCM_CCOSR_CKO2_SEL_OFFSET 16 6446a376046SFabio Estevam #define MXC_CCM_CCOSR_CKO2_SEL_MASK (0x1F << 16) 64505d54b82SFabio Estevam #define MXC_CCM_CCOSR_CLK_OUT_SEL (0x1 << 8) 6466a376046SFabio Estevam #define MXC_CCM_CCOSR_CKOL_EN (0x1 << 7) 6476a376046SFabio Estevam #define MXC_CCM_CCOSR_CKOL_DIV_MASK (0x7 << 4) 6486a376046SFabio Estevam #define MXC_CCM_CCOSR_CKOL_DIV_OFFSET 4 6496a376046SFabio Estevam #define MXC_CCM_CCOSR_CKOL_SEL_MASK 0xF 6506a376046SFabio Estevam #define MXC_CCM_CCOSR_CKOL_SEL_OFFSET 0 6516a376046SFabio Estevam 6526a376046SFabio Estevam /* Define the bits in registers CGPR */ 65305d54b82SFabio Estevam #define MXC_CCM_CGPR_FAST_PLL_EN (1 << 16) 6546a376046SFabio Estevam #define MXC_CCM_CGPR_EFUSE_PROG_SUPPLY_GATE (1 << 4) 6556a376046SFabio Estevam #define MXC_CCM_CGPR_MMDC_EXT_CLK_DIS (1 << 2) 6566a376046SFabio Estevam #define MXC_CCM_CGPR_PMIC_DELAY_SCALER 1 6576a376046SFabio Estevam 6586a376046SFabio Estevam /* Define the bits in registers CCGRx */ 6596a376046SFabio Estevam #define MXC_CCM_CCGR_CG_MASK 3 6606a376046SFabio Estevam 6613974b7f6SPeng Fan /* i.MX 6ULL */ 6623974b7f6SPeng Fan #define MXC_CCM_CCGR0_DCP_CLK_OFFSET 10 6633974b7f6SPeng Fan #define MXC_CCM_CCGR0_DCP_CLK_MASK (3 << MXC_CCM_CCGR0_DCP_CLK_OFFSET) 6643974b7f6SPeng Fan #define MXC_CCM_CCGR0_ENET_CLK_ENABLE_OFFSET 12 6653974b7f6SPeng Fan #define MXC_CCM_CCGR0_ENET_CLK_ENABLE_MASK (3 << MXC_CCM_CCGR0_ENET_CLK_ENABLE_OFFSET) 6663974b7f6SPeng Fan 6670bb7e316SEric Nelson #define MXC_CCM_CCGR0_AIPS_TZ1_OFFSET 0 6680bb7e316SEric Nelson #define MXC_CCM_CCGR0_AIPS_TZ1_MASK (3 << MXC_CCM_CCGR0_AIPS_TZ1_OFFSET) 6690bb7e316SEric Nelson #define MXC_CCM_CCGR0_AIPS_TZ2_OFFSET 2 6700bb7e316SEric Nelson #define MXC_CCM_CCGR0_AIPS_TZ2_MASK (3 << MXC_CCM_CCGR0_AIPS_TZ2_OFFSET) 671b29ca4a1SStefan Roese #define MXC_CCM_CCGR0_APBHDMA_OFFSET 4 672b29ca4a1SStefan Roese #define MXC_CCM_CCGR0_APBHDMA_MASK (3 << MXC_CCM_CCGR0_APBHDMA_OFFSET) 6730bb7e316SEric Nelson #define MXC_CCM_CCGR0_ASRC_OFFSET 6 6740bb7e316SEric Nelson #define MXC_CCM_CCGR0_ASRC_MASK (3 << MXC_CCM_CCGR0_ASRC_OFFSET) 6750bb7e316SEric Nelson #define MXC_CCM_CCGR0_CAAM_SECURE_MEM_OFFSET 8 6760bb7e316SEric Nelson #define MXC_CCM_CCGR0_CAAM_SECURE_MEM_MASK (3 << MXC_CCM_CCGR0_CAAM_SECURE_MEM_OFFSET) 6770bb7e316SEric Nelson #define MXC_CCM_CCGR0_CAAM_WRAPPER_ACLK_OFFSET 10 6780bb7e316SEric Nelson #define MXC_CCM_CCGR0_CAAM_WRAPPER_ACLK_MASK (3 << MXC_CCM_CCGR0_CAAM_WRAPPER_ACLK_OFFSET) 6790bb7e316SEric Nelson #define MXC_CCM_CCGR0_CAAM_WRAPPER_IPG_OFFSET 12 6800bb7e316SEric Nelson #define MXC_CCM_CCGR0_CAAM_WRAPPER_IPG_MASK (3 << MXC_CCM_CCGR0_CAAM_WRAPPER_IPG_OFFSET) 6810bb7e316SEric Nelson #define MXC_CCM_CCGR0_CAN1_OFFSET 14 6820bb7e316SEric Nelson #define MXC_CCM_CCGR0_CAN1_MASK (3 << MXC_CCM_CCGR0_CAN1_OFFSET) 6830bb7e316SEric Nelson #define MXC_CCM_CCGR0_CAN1_SERIAL_OFFSET 16 6840bb7e316SEric Nelson #define MXC_CCM_CCGR0_CAN1_SERIAL_MASK (3 << MXC_CCM_CCGR0_CAN1_SERIAL_OFFSET) 6850bb7e316SEric Nelson #define MXC_CCM_CCGR0_CAN2_OFFSET 18 6860bb7e316SEric Nelson #define MXC_CCM_CCGR0_CAN2_MASK (3 << MXC_CCM_CCGR0_CAN2_OFFSET) 6870bb7e316SEric Nelson #define MXC_CCM_CCGR0_CAN2_SERIAL_OFFSET 20 6880bb7e316SEric Nelson #define MXC_CCM_CCGR0_CAN2_SERIAL_MASK (3 << MXC_CCM_CCGR0_CAN2_SERIAL_OFFSET) 6890bb7e316SEric Nelson #define MXC_CCM_CCGR0_CHEETAH_DBG_CLK_OFFSET 22 6900bb7e316SEric Nelson #define MXC_CCM_CCGR0_CHEETAH_DBG_CLK_MASK (3 << MXC_CCM_CCGR0_CHEETAH_DBG_CLK_OFFSET) 6910bb7e316SEric Nelson #define MXC_CCM_CCGR0_DCIC1_OFFSET 24 6920bb7e316SEric Nelson #define MXC_CCM_CCGR0_DCIC1_MASK (3 << MXC_CCM_CCGR0_DCIC1_OFFSET) 6930bb7e316SEric Nelson #define MXC_CCM_CCGR0_DCIC2_OFFSET 26 6940bb7e316SEric Nelson #define MXC_CCM_CCGR0_DCIC2_MASK (3 << MXC_CCM_CCGR0_DCIC2_OFFSET) 69505d54b82SFabio Estevam #ifdef CONFIG_MX6SX 69605d54b82SFabio Estevam #define MXC_CCM_CCGR0_AIPS_TZ3_OFFSET 30 69705d54b82SFabio Estevam #define MXC_CCM_CCGR0_AIPS_TZ3_MASK (3 << MXC_CCM_CCGR0_AIPS_TZ3_OFFSET) 69805d54b82SFabio Estevam #else 6990bb7e316SEric Nelson #define MXC_CCM_CCGR0_DTCP_OFFSET 28 7000bb7e316SEric Nelson #define MXC_CCM_CCGR0_DTCP_MASK (3 << MXC_CCM_CCGR0_DTCP_OFFSET) 70105d54b82SFabio Estevam #endif 7026a376046SFabio Estevam 7030bb7e316SEric Nelson #define MXC_CCM_CCGR1_ECSPI1S_OFFSET 0 7040bb7e316SEric Nelson #define MXC_CCM_CCGR1_ECSPI1S_MASK (3 << MXC_CCM_CCGR1_ECSPI1S_OFFSET) 7050bb7e316SEric Nelson #define MXC_CCM_CCGR1_ECSPI2S_OFFSET 2 7060bb7e316SEric Nelson #define MXC_CCM_CCGR1_ECSPI2S_MASK (3 << MXC_CCM_CCGR1_ECSPI2S_OFFSET) 7070bb7e316SEric Nelson #define MXC_CCM_CCGR1_ECSPI3S_OFFSET 4 7080bb7e316SEric Nelson #define MXC_CCM_CCGR1_ECSPI3S_MASK (3 << MXC_CCM_CCGR1_ECSPI3S_OFFSET) 7090bb7e316SEric Nelson #define MXC_CCM_CCGR1_ECSPI4S_OFFSET 6 7100bb7e316SEric Nelson #define MXC_CCM_CCGR1_ECSPI4S_MASK (3 << MXC_CCM_CCGR1_ECSPI4S_OFFSET) 7110bb7e316SEric Nelson #define MXC_CCM_CCGR1_ECSPI5S_OFFSET 8 7120bb7e316SEric Nelson #define MXC_CCM_CCGR1_ECSPI5S_MASK (3 << MXC_CCM_CCGR1_ECSPI5S_OFFSET) 71343cb127bSPeng Fan /* CCGR1_ENET does not exist on i.MX6SX/UL */ 71443cb127bSPeng Fan #define MXC_CCM_CCGR1_ENET_OFFSET 10 71543cb127bSPeng Fan #define MXC_CCM_CCGR1_ENET_MASK (3 << MXC_CCM_CCGR1_ENET_OFFSET) 7160bb7e316SEric Nelson #define MXC_CCM_CCGR1_EPIT1S_OFFSET 12 7170bb7e316SEric Nelson #define MXC_CCM_CCGR1_EPIT1S_MASK (3 << MXC_CCM_CCGR1_EPIT1S_OFFSET) 7180bb7e316SEric Nelson #define MXC_CCM_CCGR1_EPIT2S_OFFSET 14 7190bb7e316SEric Nelson #define MXC_CCM_CCGR1_EPIT2S_MASK (3 << MXC_CCM_CCGR1_EPIT2S_OFFSET) 7200bb7e316SEric Nelson #define MXC_CCM_CCGR1_ESAIS_OFFSET 16 7210bb7e316SEric Nelson #define MXC_CCM_CCGR1_ESAIS_MASK (3 << MXC_CCM_CCGR1_ESAIS_OFFSET) 72205d54b82SFabio Estevam #ifdef CONFIG_MX6SX 72305d54b82SFabio Estevam #define MXC_CCM_CCGR1_WAKEUP_OFFSET 18 72405d54b82SFabio Estevam #define MXC_CCM_CCGR1_WAKEUP_MASK (3 << MXC_CCM_CCGR1_WAKEUP_OFFSET) 72505d54b82SFabio Estevam #endif 7260bb7e316SEric Nelson #define MXC_CCM_CCGR1_GPT_BUS_OFFSET 20 7270bb7e316SEric Nelson #define MXC_CCM_CCGR1_GPT_BUS_MASK (3 << MXC_CCM_CCGR1_GPT_BUS_OFFSET) 7280bb7e316SEric Nelson #define MXC_CCM_CCGR1_GPT_SERIAL_OFFSET 22 7290bb7e316SEric Nelson #define MXC_CCM_CCGR1_GPT_SERIAL_MASK (3 << MXC_CCM_CCGR1_GPT_SERIAL_OFFSET) 73005d54b82SFabio Estevam #ifndef CONFIG_MX6SX 7310bb7e316SEric Nelson #define MXC_CCM_CCGR1_GPU2D_OFFSET 24 7320bb7e316SEric Nelson #define MXC_CCM_CCGR1_GPU2D_MASK (3 << MXC_CCM_CCGR1_GPU2D_OFFSET) 73305d54b82SFabio Estevam #endif 7340bb7e316SEric Nelson #define MXC_CCM_CCGR1_GPU3D_OFFSET 26 7350bb7e316SEric Nelson #define MXC_CCM_CCGR1_GPU3D_MASK (3 << MXC_CCM_CCGR1_GPU3D_OFFSET) 73605d54b82SFabio Estevam #ifdef CONFIG_MX6SX 73705d54b82SFabio Estevam #define MXC_CCM_CCGR1_OCRAM_S_OFFSET 28 73805d54b82SFabio Estevam #define MXC_CCM_CCGR1_OCRAM_S_MASK (3 << MXC_CCM_CCGR1_OCRAM_S_OFFSET) 73905d54b82SFabio Estevam #define MXC_CCM_CCGR1_CANFD_OFFSET 30 74005d54b82SFabio Estevam #define MXC_CCM_CCGR1_CANFD_MASK (3 << MXC_CCM_CCGR1_CANFD_OFFSET) 74105d54b82SFabio Estevam #endif 7426a376046SFabio Estevam 7430bb7e316SEric Nelson #define MXC_CCM_CCGR2_HDMI_TX_IAHBCLK_OFFSET 0 7440bb7e316SEric Nelson #define MXC_CCM_CCGR2_HDMI_TX_IAHBCLK_MASK (3 << MXC_CCM_CCGR2_HDMI_TX_IAHBCLK_OFFSET) 7453974b7f6SPeng Fan /* i.MX6SX/UL */ 74605d54b82SFabio Estevam #define MXC_CCM_CCGR2_CSI_OFFSET 2 74705d54b82SFabio Estevam #define MXC_CCM_CCGR2_CSI_MASK (3 << MXC_CCM_CCGR2_CSI_OFFSET) 7483974b7f6SPeng Fan 74905d54b82SFabio Estevam #ifndef CONFIG_MX6SX 7500bb7e316SEric Nelson #define MXC_CCM_CCGR2_HDMI_TX_ISFRCLK_OFFSET 4 7510bb7e316SEric Nelson #define MXC_CCM_CCGR2_HDMI_TX_ISFRCLK_MASK (3 << MXC_CCM_CCGR2_HDMI_TX_ISFRCLK_OFFSET) 75205d54b82SFabio Estevam #endif 7530bb7e316SEric Nelson #define MXC_CCM_CCGR2_I2C1_SERIAL_OFFSET 6 7540bb7e316SEric Nelson #define MXC_CCM_CCGR2_I2C1_SERIAL_MASK (3 << MXC_CCM_CCGR2_I2C1_SERIAL_OFFSET) 7550bb7e316SEric Nelson #define MXC_CCM_CCGR2_I2C2_SERIAL_OFFSET 8 7560bb7e316SEric Nelson #define MXC_CCM_CCGR2_I2C2_SERIAL_MASK (3 << MXC_CCM_CCGR2_I2C2_SERIAL_OFFSET) 7570bb7e316SEric Nelson #define MXC_CCM_CCGR2_I2C3_SERIAL_OFFSET 10 7580bb7e316SEric Nelson #define MXC_CCM_CCGR2_I2C3_SERIAL_MASK (3 << MXC_CCM_CCGR2_I2C3_SERIAL_OFFSET) 75921a26940SHeiko Schocher #define MXC_CCM_CCGR1_I2C4_SERIAL_OFFSET 8 76021a26940SHeiko Schocher #define MXC_CCM_CCGR1_I2C4_SERIAL_MASK (3 << MXC_CCM_CCGR1_I2C4_SERIAL_OFFSET) 7610bb7e316SEric Nelson #define MXC_CCM_CCGR2_OCOTP_CTRL_OFFSET 12 7620bb7e316SEric Nelson #define MXC_CCM_CCGR2_OCOTP_CTRL_MASK (3 << MXC_CCM_CCGR2_OCOTP_CTRL_OFFSET) 7630bb7e316SEric Nelson #define MXC_CCM_CCGR2_IOMUX_IPT_CLK_IO_OFFSET 14 7640bb7e316SEric Nelson #define MXC_CCM_CCGR2_IOMUX_IPT_CLK_IO_MASK (3 << MXC_CCM_CCGR2_IOMUX_IPT_CLK_IO_OFFSET) 7650bb7e316SEric Nelson #define MXC_CCM_CCGR2_IPMUX1_OFFSET 16 7660bb7e316SEric Nelson #define MXC_CCM_CCGR2_IPMUX1_MASK (3 << MXC_CCM_CCGR2_IPMUX1_OFFSET) 7670bb7e316SEric Nelson #define MXC_CCM_CCGR2_IPMUX2_OFFSET 18 7680bb7e316SEric Nelson #define MXC_CCM_CCGR2_IPMUX2_MASK (3 << MXC_CCM_CCGR2_IPMUX2_OFFSET) 7690bb7e316SEric Nelson #define MXC_CCM_CCGR2_IPMUX3_OFFSET 20 7700bb7e316SEric Nelson #define MXC_CCM_CCGR2_IPMUX3_MASK (3 << MXC_CCM_CCGR2_IPMUX3_OFFSET) 7710bb7e316SEric Nelson #define MXC_CCM_CCGR2_IPSYNC_IP2APB_TZASC1_IPGS_OFFSET 22 7720bb7e316SEric Nelson #define MXC_CCM_CCGR2_IPSYNC_IP2APB_TZASC1_IPGS_MASK (3 << MXC_CCM_CCGR2_IPSYNC_IP2APB_TZASC1_IPGS_OFFSET) 77364ffef05SPeng Fan /* i.MX6SX/UL LCD and PXP */ 77405d54b82SFabio Estevam #define MXC_CCM_CCGR2_LCD_OFFSET 28 77505d54b82SFabio Estevam #define MXC_CCM_CCGR2_LCD_MASK (3 << MXC_CCM_CCGR2_LCD_OFFSET) 77605d54b82SFabio Estevam #define MXC_CCM_CCGR2_PXP_OFFSET 30 77705d54b82SFabio Estevam #define MXC_CCM_CCGR2_PXP_MASK (3 << MXC_CCM_CCGR2_PXP_OFFSET) 77864ffef05SPeng Fan 7790bb7e316SEric Nelson #define MXC_CCM_CCGR2_IPSYNC_IP2APB_TZASC2_IPG_OFFSET 24 7800bb7e316SEric Nelson #define MXC_CCM_CCGR2_IPSYNC_IP2APB_TZASC2_IPG_MASK (3 << MXC_CCM_CCGR2_IPSYNC_IP2APB_TZASC2_IPG_OFFSET) 7810bb7e316SEric Nelson #define MXC_CCM_CCGR2_IPSYNC_VDOA_IPG_MASTER_CLK_OFFSET 26 7820bb7e316SEric Nelson #define MXC_CCM_CCGR2_IPSYNC_VDOA_IPG_MASTER_CLK_MASK (3 << MXC_CCM_CCGR2_IPSYNC_VDOA_IPG_MASTER_CLK_OFFSET) 7836a376046SFabio Estevam 7843974b7f6SPeng Fan /* i.MX6ULL */ 7853974b7f6SPeng Fan #define MXC_CCM_CCGR2_ESAI_CLK_OFFSET 0 7863974b7f6SPeng Fan #define MXC_CCM_CCGR2_ESAI_CLK_MASK (3 << MXC_CCM_CCGR2_ESAI_CLK_OFFSET) 7873974b7f6SPeng Fan #define MXC_CCM_CCGR2_IOMUXC_SNVS_CLK_OFFSET 4 7883974b7f6SPeng Fan #define MXC_CCM_CCGR2_IOMUXC_SNVS_CLK_MASK (3 << MXC_CCM_CCGR2_IOMUXC_SNVS_CLK_OFFSET) 7893974b7f6SPeng Fan 79043cb127bSPeng Fan /* Exist on i.MX6SX */ 79105d54b82SFabio Estevam #define MXC_CCM_CCGR3_M4_OFFSET 2 79205d54b82SFabio Estevam #define MXC_CCM_CCGR3_M4_MASK (3 << MXC_CCM_CCGR3_M4_OFFSET) 7933974b7f6SPeng Fan /* i.MX6ULL */ 7943974b7f6SPeng Fan #define MXC_CCM_CCGR3_EPDC_CLK_ENABLE_OFFSET 4 7953974b7f6SPeng Fan #define MXC_CCM_CCGR3_EPDC_CLK_ENABLE_MASK (3 << MXC_CCM_CCGR3_EPDC_CLK_ENABLE_OFFSET) 79605d54b82SFabio Estevam #define MXC_CCM_CCGR3_ENET_OFFSET 4 79705d54b82SFabio Estevam #define MXC_CCM_CCGR3_ENET_MASK (3 << MXC_CCM_CCGR3_ENET_OFFSET) 79805d54b82SFabio Estevam #define MXC_CCM_CCGR3_QSPI_OFFSET 14 79905d54b82SFabio Estevam #define MXC_CCM_CCGR3_QSPI_MASK (3 << MXC_CCM_CCGR3_QSPI_OFFSET) 80043cb127bSPeng Fan 801*e332623bSPeng Fan /* i.MX6SL */ 802*e332623bSPeng Fan #define MXC_CCM_CCGR3_LCDIF_AXI_OFFSET 6 803*e332623bSPeng Fan #define MXC_CCM_CCGR3_LCDIF_AXI_MASK (3 << MXC_CCM_CCGR3_LCDIF_AXI_OFFSET) 804*e332623bSPeng Fan #define MXC_CCM_CCGR3_LCDIF_PIX_OFFSET 8 805*e332623bSPeng Fan #define MXC_CCM_CCGR3_LCDIF_PIX_MASK (3 << MXC_CCM_CCGR3_LCDIF_PIX_OFFSET) 806*e332623bSPeng Fan 8070bb7e316SEric Nelson #define MXC_CCM_CCGR3_IPU1_IPU_OFFSET 0 8080bb7e316SEric Nelson #define MXC_CCM_CCGR3_IPU1_IPU_MASK (3 << MXC_CCM_CCGR3_IPU1_IPU_OFFSET) 8090bb7e316SEric Nelson #define MXC_CCM_CCGR3_IPU1_IPU_DI0_OFFSET 2 8100bb7e316SEric Nelson #define MXC_CCM_CCGR3_IPU1_IPU_DI0_MASK (3 << MXC_CCM_CCGR3_IPU1_IPU_DI0_OFFSET) 8110bb7e316SEric Nelson #define MXC_CCM_CCGR3_IPU1_IPU_DI1_OFFSET 4 8120bb7e316SEric Nelson #define MXC_CCM_CCGR3_IPU1_IPU_DI1_MASK (3 << MXC_CCM_CCGR3_IPU1_IPU_DI1_OFFSET) 81343cb127bSPeng Fan 8140bb7e316SEric Nelson #define MXC_CCM_CCGR3_IPU2_IPU_OFFSET 6 8150bb7e316SEric Nelson #define MXC_CCM_CCGR3_IPU2_IPU_MASK (3 << MXC_CCM_CCGR3_IPU2_IPU_OFFSET) 8160bb7e316SEric Nelson #define MXC_CCM_CCGR3_IPU2_IPU_DI0_OFFSET 8 8170bb7e316SEric Nelson #define MXC_CCM_CCGR3_IPU2_IPU_DI0_MASK (3 << MXC_CCM_CCGR3_IPU2_IPU_DI0_OFFSET) 8180bb7e316SEric Nelson #define MXC_CCM_CCGR3_IPU2_IPU_DI1_OFFSET 10 8190bb7e316SEric Nelson #define MXC_CCM_CCGR3_IPU2_IPU_DI1_MASK (3 << MXC_CCM_CCGR3_IPU2_IPU_DI1_OFFSET) 8200bb7e316SEric Nelson #define MXC_CCM_CCGR3_LDB_DI0_OFFSET 12 8210bb7e316SEric Nelson #define MXC_CCM_CCGR3_LDB_DI0_MASK (3 << MXC_CCM_CCGR3_LDB_DI0_OFFSET) 82243cb127bSPeng Fan 82343cb127bSPeng Fan /* QSPI1 exists on i.MX6SX/UL */ 82405d54b82SFabio Estevam #define MXC_CCM_CCGR3_QSPI1_OFFSET 14 82505d54b82SFabio Estevam #define MXC_CCM_CCGR3_QSPI1_MASK (3 << MXC_CCM_CCGR3_QSPI1_OFFSET) 82643cb127bSPeng Fan 8270bb7e316SEric Nelson #define MXC_CCM_CCGR3_LDB_DI1_OFFSET 14 8280bb7e316SEric Nelson #define MXC_CCM_CCGR3_LDB_DI1_MASK (3 << MXC_CCM_CCGR3_LDB_DI1_OFFSET) 8290bb7e316SEric Nelson #define MXC_CCM_CCGR3_MIPI_CORE_CFG_OFFSET 16 8300bb7e316SEric Nelson #define MXC_CCM_CCGR3_MIPI_CORE_CFG_MASK (3 << MXC_CCM_CCGR3_MIPI_CORE_CFG_OFFSET) 83143cb127bSPeng Fan 83243cb127bSPeng Fan /* A7_CLKDIV/WDOG1 on i.MX6UL */ 83343cb127bSPeng Fan #define MXC_CCM_CCGR3_WDOG1_CLK_ENABLE_OFFSET 16 83443cb127bSPeng Fan #define MXC_CCM_CCGR3_WDOG1_CLK_ENABLE_MASK (3 << MXC_CCM_CCGR3_WDOG1_CLK_ENABLE_OFFSET) 83543cb127bSPeng Fan #define MXC_CCM_CCGR3_A7_CLKDIV_PATCH_OFFSET 18 83643cb127bSPeng Fan #define MXC_CCM_CCGR3_A7_CLKDIV_PATCH_MASK (3 << MXC_CCM_CCGR3_A7_CLKDIV_PATCH_OFFSET) 83743cb127bSPeng Fan 8380bb7e316SEric Nelson #define MXC_CCM_CCGR3_MLB_OFFSET 18 8390bb7e316SEric Nelson #define MXC_CCM_CCGR3_MLB_MASK (3 << MXC_CCM_CCGR3_MLB_OFFSET) 8400bb7e316SEric Nelson #define MXC_CCM_CCGR3_MMDC_CORE_ACLK_FAST_CORE_P0_OFFSET 20 8410bb7e316SEric Nelson #define MXC_CCM_CCGR3_MMDC_CORE_ACLK_FAST_CORE_P0_MASK (3 << MXC_CCM_CCGR3_MMDC_CORE_ACLK_FAST_CORE_P0_OFFSET) 84205d54b82SFabio Estevam #ifndef CONFIG_MX6SX 8430bb7e316SEric Nelson #define MXC_CCM_CCGR3_MMDC_CORE_ACLK_FAST_CORE_P1_OFFSET 22 8440bb7e316SEric Nelson #define MXC_CCM_CCGR3_MMDC_CORE_ACLK_FAST_CORE_P1_MASK (3 << MXC_CCM_CCGR3_MMDC_CORE_ACLK_FAST_CORE_P1_OFFSET) 84505d54b82SFabio Estevam #endif 8460bb7e316SEric Nelson #define MXC_CCM_CCGR3_MMDC_CORE_IPG_CLK_P0_OFFSET 24 8470bb7e316SEric Nelson #define MXC_CCM_CCGR3_MMDC_CORE_IPG_CLK_P0_MASK (3 << MXC_CCM_CCGR3_MMDC_CORE_IPG_CLK_P0_OFFSET) 8480bb7e316SEric Nelson #define MXC_CCM_CCGR3_MMDC_CORE_IPG_CLK_P1_OFFSET 26 8490bb7e316SEric Nelson #define MXC_CCM_CCGR3_MMDC_CORE_IPG_CLK_P1_MASK (3 << MXC_CCM_CCGR3_MMDC_CORE_IPG_CLK_P1_OFFSET) 85064ffef05SPeng Fan 85164ffef05SPeng Fan #define MXC_CCM_CCGR3_DISP_AXI_OFFSET 6 85264ffef05SPeng Fan #define MXC_CCM_CCGR3_DISP_AXI_MASK (3 << MXC_CCM_CCGR3_DISP_AXI_OFFSET) 85364ffef05SPeng Fan #define MXC_CCM_CCGR3_LCDIF2_PIX_OFFSET 8 85464ffef05SPeng Fan #define MXC_CCM_CCGR3_LCDIF2_PIX_MASK (3 << MXC_CCM_CCGR3_LCDIF2_PIX_OFFSET) 85564ffef05SPeng Fan #define MXC_CCM_CCGR3_LCDIF1_PIX_OFFSET 10 85664ffef05SPeng Fan #define MXC_CCM_CCGR3_LCDIF1_PIX_MASK (3 << MXC_CCM_CCGR3_LCDIF1_PIX_OFFSET) 85743cb127bSPeng Fan /* AXI on i.MX6UL */ 85843cb127bSPeng Fan #define MXC_CCM_CCGR3_AXI_CLK_OFFSET 28 85943cb127bSPeng Fan #define MXC_CCM_CCGR3_AXI_CLK_MASK (3 << MXC_CCM_CCGR3_AXI_CLK_OFFSET) 8600bb7e316SEric Nelson #define MXC_CCM_CCGR3_OCRAM_OFFSET 28 8610bb7e316SEric Nelson #define MXC_CCM_CCGR3_OCRAM_MASK (3 << MXC_CCM_CCGR3_OCRAM_OFFSET) 86243cb127bSPeng Fan 8633974b7f6SPeng Fan /* GPIO4 on i.MX6UL/ULL */ 86443cb127bSPeng Fan #define MXC_CCM_CCGR3_GPIO4_CLK_OFFSET 30 86543cb127bSPeng Fan #define MXC_CCM_CCGR3_GPIO4_CLK_MASK (3 << MXC_CCM_CCGR3_GPIO4_CLK_OFFSET) 86643cb127bSPeng Fan 86705d54b82SFabio Estevam #ifndef CONFIG_MX6SX 8680bb7e316SEric Nelson #define MXC_CCM_CCGR3_OPENVGAXICLK_OFFSET 30 8690bb7e316SEric Nelson #define MXC_CCM_CCGR3_OPENVGAXICLK_MASK (3 << MXC_CCM_CCGR3_OPENVGAXICLK_OFFSET) 87005d54b82SFabio Estevam #endif 8716a376046SFabio Estevam 8723974b7f6SPeng Fan /* i.MX6ULL */ 8733974b7f6SPeng Fan #define MXC_CCM_CCGR3_IOMUXC_SNVS_GPR_CLK_OFFSET 30 8743974b7f6SPeng Fan #define MXC_CCM_CCGR3_IOMUXC_SNVS_GPR_CLK_MASK (3 << MXC_CCM_CCGR3_IOMUXC_SNVS_GPR_CLK_OFFSET) 8753974b7f6SPeng Fan 8760bb7e316SEric Nelson #define MXC_CCM_CCGR4_PCIE_OFFSET 0 8770bb7e316SEric Nelson #define MXC_CCM_CCGR4_PCIE_MASK (3 << MXC_CCM_CCGR4_PCIE_OFFSET) 87843cb127bSPeng Fan /* QSPI2 on i.MX6SX */ 87905d54b82SFabio Estevam #define MXC_CCM_CCGR4_QSPI2_ENFC_OFFSET 10 88005d54b82SFabio Estevam #define MXC_CCM_CCGR4_QSPI2_ENFC_MASK (3 << MXC_CCM_CCGR4_QSPI2_ENFC_OFFSET) 8810bb7e316SEric Nelson #define MXC_CCM_CCGR4_PL301_MX6QFAST1_S133_OFFSET 8 8820bb7e316SEric Nelson #define MXC_CCM_CCGR4_PL301_MX6QFAST1_S133_MASK (3 << MXC_CCM_CCGR4_PL301_MX6QFAST1_S133_OFFSET) 8830bb7e316SEric Nelson #define MXC_CCM_CCGR4_PL301_MX6QPER1_BCH_OFFSET 12 8840bb7e316SEric Nelson #define MXC_CCM_CCGR4_PL301_MX6QPER1_BCH_MASK (3 << MXC_CCM_CCGR4_PL301_MX6QPER1_BCH_OFFSET) 8850bb7e316SEric Nelson #define MXC_CCM_CCGR4_PL301_MX6QPER2_MAINCLK_ENABLE_OFFSET 14 8860bb7e316SEric Nelson #define MXC_CCM_CCGR4_PL301_MX6QPER2_MAINCLK_ENABLE_MASK (3 << MXC_CCM_CCGR4_PL301_MX6QPER2_MAINCLK_ENABLE_OFFSET) 8870bb7e316SEric Nelson #define MXC_CCM_CCGR4_PWM1_OFFSET 16 8880bb7e316SEric Nelson #define MXC_CCM_CCGR4_PWM1_MASK (3 << MXC_CCM_CCGR4_PWM1_OFFSET) 8890bb7e316SEric Nelson #define MXC_CCM_CCGR4_PWM2_OFFSET 18 8900bb7e316SEric Nelson #define MXC_CCM_CCGR4_PWM2_MASK (3 << MXC_CCM_CCGR4_PWM2_OFFSET) 8910bb7e316SEric Nelson #define MXC_CCM_CCGR4_PWM3_OFFSET 20 8920bb7e316SEric Nelson #define MXC_CCM_CCGR4_PWM3_MASK (3 << MXC_CCM_CCGR4_PWM3_OFFSET) 8930bb7e316SEric Nelson #define MXC_CCM_CCGR4_PWM4_OFFSET 22 8940bb7e316SEric Nelson #define MXC_CCM_CCGR4_PWM4_MASK (3 << MXC_CCM_CCGR4_PWM4_OFFSET) 8950bb7e316SEric Nelson #define MXC_CCM_CCGR4_RAWNAND_U_BCH_INPUT_APB_OFFSET 24 8960bb7e316SEric Nelson #define MXC_CCM_CCGR4_RAWNAND_U_BCH_INPUT_APB_MASK (3 << MXC_CCM_CCGR4_RAWNAND_U_BCH_INPUT_APB_OFFSET) 8970bb7e316SEric Nelson #define MXC_CCM_CCGR4_RAWNAND_U_GPMI_BCH_INPUT_BCH_OFFSET 26 8980bb7e316SEric Nelson #define MXC_CCM_CCGR4_RAWNAND_U_GPMI_BCH_INPUT_BCH_MASK (3 << MXC_CCM_CCGR4_RAWNAND_U_GPMI_BCH_INPUT_BCH_OFFSET) 8990bb7e316SEric Nelson #define MXC_CCM_CCGR4_RAWNAND_U_GPMI_BCH_INPUT_GPMI_IO_OFFSET 28 9000bb7e316SEric Nelson #define MXC_CCM_CCGR4_RAWNAND_U_GPMI_BCH_INPUT_GPMI_IO_MASK (3 << MXC_CCM_CCGR4_RAWNAND_U_GPMI_BCH_INPUT_GPMI_IO_OFFSET) 9010bb7e316SEric Nelson #define MXC_CCM_CCGR4_RAWNAND_U_GPMI_INPUT_APB_OFFSET 30 9020bb7e316SEric Nelson #define MXC_CCM_CCGR4_RAWNAND_U_GPMI_INPUT_APB_MASK (3 << MXC_CCM_CCGR4_RAWNAND_U_GPMI_INPUT_APB_OFFSET) 9036a376046SFabio Estevam 9040bb7e316SEric Nelson #define MXC_CCM_CCGR5_ROM_OFFSET 0 9050bb7e316SEric Nelson #define MXC_CCM_CCGR5_ROM_MASK (3 << MXC_CCM_CCGR5_ROM_OFFSET) 90605d54b82SFabio Estevam #ifndef CONFIG_MX6SX 9070bb7e316SEric Nelson #define MXC_CCM_CCGR5_SATA_OFFSET 4 9080bb7e316SEric Nelson #define MXC_CCM_CCGR5_SATA_MASK (3 << MXC_CCM_CCGR5_SATA_OFFSET) 90905d54b82SFabio Estevam #endif 9100bb7e316SEric Nelson #define MXC_CCM_CCGR5_SDMA_OFFSET 6 9110bb7e316SEric Nelson #define MXC_CCM_CCGR5_SDMA_MASK (3 << MXC_CCM_CCGR5_SDMA_OFFSET) 9120bb7e316SEric Nelson #define MXC_CCM_CCGR5_SPBA_OFFSET 12 9130bb7e316SEric Nelson #define MXC_CCM_CCGR5_SPBA_MASK (3 << MXC_CCM_CCGR5_SPBA_OFFSET) 9140bb7e316SEric Nelson #define MXC_CCM_CCGR5_SPDIF_OFFSET 14 9150bb7e316SEric Nelson #define MXC_CCM_CCGR5_SPDIF_MASK (3 << MXC_CCM_CCGR5_SPDIF_OFFSET) 9160bb7e316SEric Nelson #define MXC_CCM_CCGR5_SSI1_OFFSET 18 9170bb7e316SEric Nelson #define MXC_CCM_CCGR5_SSI1_MASK (3 << MXC_CCM_CCGR5_SSI1_OFFSET) 9180bb7e316SEric Nelson #define MXC_CCM_CCGR5_SSI2_OFFSET 20 9190bb7e316SEric Nelson #define MXC_CCM_CCGR5_SSI2_MASK (3 << MXC_CCM_CCGR5_SSI2_OFFSET) 9200bb7e316SEric Nelson #define MXC_CCM_CCGR5_SSI3_OFFSET 22 9210bb7e316SEric Nelson #define MXC_CCM_CCGR5_SSI3_MASK (3 << MXC_CCM_CCGR5_SSI3_OFFSET) 9220bb7e316SEric Nelson #define MXC_CCM_CCGR5_UART_OFFSET 24 9230bb7e316SEric Nelson #define MXC_CCM_CCGR5_UART_MASK (3 << MXC_CCM_CCGR5_UART_OFFSET) 9240bb7e316SEric Nelson #define MXC_CCM_CCGR5_UART_SERIAL_OFFSET 26 9250bb7e316SEric Nelson #define MXC_CCM_CCGR5_UART_SERIAL_MASK (3 << MXC_CCM_CCGR5_UART_SERIAL_OFFSET) 92605d54b82SFabio Estevam #ifdef CONFIG_MX6SX 92705d54b82SFabio Estevam #define MXC_CCM_CCGR5_SAI1_OFFSET 20 92805d54b82SFabio Estevam #define MXC_CCM_CCGR5_SAI1_MASK (3 << MXC_CCM_CCGR5_SAI1_OFFSET) 92905d54b82SFabio Estevam #define MXC_CCM_CCGR5_SAI2_OFFSET 30 93005d54b82SFabio Estevam #define MXC_CCM_CCGR5_SAI2_MASK (3 << MXC_CCM_CCGR5_SAI2_OFFSET) 93105d54b82SFabio Estevam #endif 9326a376046SFabio Estevam 933e1c2d68bSPeng Fan /* PRG_CLK0 exists on i.MX6QP */ 934e1c2d68bSPeng Fan #define MXC_CCM_CCGR6_PRG_CLK0_MASK (3 << 24) 935e1c2d68bSPeng Fan 9360bb7e316SEric Nelson #define MXC_CCM_CCGR6_USBOH3_OFFSET 0 9370bb7e316SEric Nelson #define MXC_CCM_CCGR6_USBOH3_MASK (3 << MXC_CCM_CCGR6_USBOH3_OFFSET) 9380bb7e316SEric Nelson #define MXC_CCM_CCGR6_USDHC1_OFFSET 2 9390bb7e316SEric Nelson #define MXC_CCM_CCGR6_USDHC1_MASK (3 << MXC_CCM_CCGR6_USDHC1_OFFSET) 9400bb7e316SEric Nelson #define MXC_CCM_CCGR6_USDHC2_OFFSET 4 9410bb7e316SEric Nelson #define MXC_CCM_CCGR6_USDHC2_MASK (3 << MXC_CCM_CCGR6_USDHC2_OFFSET) 9423974b7f6SPeng Fan #define MXC_CCM_CCGR6_SIM1_CLK_OFFSET 6 9433974b7f6SPeng Fan #define MXC_CCM_CCGR6_SIM1_CLK_MASK (3 << MXC_CCM_CCGR6_SIM1_CLK_OFFSET) 9443974b7f6SPeng Fan #define MXC_CCM_CCGR6_SIM2_CLK_OFFSET 8 9453974b7f6SPeng Fan #define MXC_CCM_CCGR6_SIM2_CLK_MASK (3 << MXC_CCM_CCGR6_SIM2_CLK_OFFSET) 9463974b7f6SPeng Fan /* i.MX6ULL */ 9473974b7f6SPeng Fan #define MXC_CCM_CCGR6_IPMUX4_CLK_OFFSET 8 9483974b7f6SPeng Fan #define MXC_CCM_CCGR6_IPMUX4_CLK_MASK (3 << MXC_CCM_CCGR6_IPMUX4_CLK_OFFSET) 94943cb127bSPeng Fan /* GPMI/BCH on i.MX6UL */ 95043cb127bSPeng Fan #define MXC_CCM_CCGR6_BCH_OFFSET 6 95143cb127bSPeng Fan #define MXC_CCM_CCGR6_BCH_MASK (3 << MXC_CCM_CCGR6_BCH_OFFSET) 95243cb127bSPeng Fan #define MXC_CCM_CCGR6_GPMI_OFFSET 8 95343cb127bSPeng Fan #define MXC_CCM_CCGR6_GPMI_MASK (3 << MXC_CCM_CCGR6_GPMI_OFFSET) 95443cb127bSPeng Fan 9550bb7e316SEric Nelson #define MXC_CCM_CCGR6_USDHC3_OFFSET 6 9560bb7e316SEric Nelson #define MXC_CCM_CCGR6_USDHC3_MASK (3 << MXC_CCM_CCGR6_USDHC3_OFFSET) 9570bb7e316SEric Nelson #define MXC_CCM_CCGR6_USDHC4_OFFSET 8 9580bb7e316SEric Nelson #define MXC_CCM_CCGR6_USDHC4_MASK (3 << MXC_CCM_CCGR6_USDHC4_OFFSET) 9590bb7e316SEric Nelson #define MXC_CCM_CCGR6_EMI_SLOW_OFFSET 10 9600bb7e316SEric Nelson #define MXC_CCM_CCGR6_EMI_SLOW_MASK (3 << MXC_CCM_CCGR6_EMI_SLOW_OFFSET) 9613974b7f6SPeng Fan /* i.MX6ULL */ 9623974b7f6SPeng Fan #define MXC_CCM_CCGR6_AIPS_TZ3_CLK_OFFSET 18 9633974b7f6SPeng Fan #define MXC_CCM_CCGR6_AIPS_TZ3_CLK_MASK (3 << MXC_CCM_CCGR6_AIPS_TZ3_CLK_OFFSET) 96419c6ec70SPeng Fan /* The following *CCGR6* exist only i.MX6SX */ 96505d54b82SFabio Estevam #define MXC_CCM_CCGR6_PWM8_OFFSET 16 96605d54b82SFabio Estevam #define MXC_CCM_CCGR6_PWM8_MASK (3 << MXC_CCM_CCGR6_PWM8_OFFSET) 96705d54b82SFabio Estevam #define MXC_CCM_CCGR6_VADC_OFFSET 20 96805d54b82SFabio Estevam #define MXC_CCM_CCGR6_VADC_MASK (3 << MXC_CCM_CCGR6_VADC_OFFSET) 96905d54b82SFabio Estevam #define MXC_CCM_CCGR6_GIS_OFFSET 22 97005d54b82SFabio Estevam #define MXC_CCM_CCGR6_GIS_MASK (3 << MXC_CCM_CCGR6_GIS_OFFSET) 97105d54b82SFabio Estevam #define MXC_CCM_CCGR6_I2C4_OFFSET 24 97205d54b82SFabio Estevam #define MXC_CCM_CCGR6_I2C4_MASK (3 << MXC_CCM_CCGR6_I2C4_OFFSET) 97305d54b82SFabio Estevam #define MXC_CCM_CCGR6_PWM5_OFFSET 26 97405d54b82SFabio Estevam #define MXC_CCM_CCGR6_PWM5_MASK (3 << MXC_CCM_CCGR6_PWM5_OFFSET) 97505d54b82SFabio Estevam #define MXC_CCM_CCGR6_PWM6_OFFSET 28 97605d54b82SFabio Estevam #define MXC_CCM_CCGR6_PWM6_MASK (3 << MXC_CCM_CCGR6_PWM6_OFFSET) 97705d54b82SFabio Estevam #define MXC_CCM_CCGR6_PWM7_OFFSET 30 97805d54b82SFabio Estevam #define MXC_CCM_CCGR6_PWM7_MASK (3 << MXC_CCM_CCGR6_PWM7_OFFSET) 97919c6ec70SPeng Fan /* The two does not exist on i.MX6SX */ 9800bb7e316SEric Nelson #define MXC_CCM_CCGR6_VDOAXICLK_OFFSET 12 9810bb7e316SEric Nelson #define MXC_CCM_CCGR6_VDOAXICLK_MASK (3 << MXC_CCM_CCGR6_VDOAXICLK_OFFSET) 9826a376046SFabio Estevam 9836a376046SFabio Estevam #define BM_ANADIG_PLL_SYS_LOCK 0x80000000 9846a376046SFabio Estevam #define BP_ANADIG_PLL_SYS_RSVD0 20 9856a376046SFabio Estevam #define BM_ANADIG_PLL_SYS_RSVD0 0x7FF00000 9866a376046SFabio Estevam #define BF_ANADIG_PLL_SYS_RSVD0(v) \ 9876a376046SFabio Estevam (((v) << 20) & BM_ANADIG_PLL_SYS_RSVD0) 9886a376046SFabio Estevam #define BM_ANADIG_PLL_SYS_PLL_SEL 0x00080000 9896a376046SFabio Estevam #define BM_ANADIG_PLL_SYS_LVDS_24MHZ_SEL 0x00040000 9906a376046SFabio Estevam #define BM_ANADIG_PLL_SYS_LVDS_SEL 0x00020000 9916a376046SFabio Estevam #define BM_ANADIG_PLL_SYS_BYPASS 0x00010000 9926a376046SFabio Estevam #define BP_ANADIG_PLL_SYS_BYPASS_CLK_SRC 14 9936a376046SFabio Estevam #define BM_ANADIG_PLL_SYS_BYPASS_CLK_SRC 0x0000C000 9946a376046SFabio Estevam #define BF_ANADIG_PLL_SYS_BYPASS_CLK_SRC(v) \ 9956a376046SFabio Estevam (((v) << 14) & BM_ANADIG_PLL_SYS_BYPASS_CLK_SRC) 9966a376046SFabio Estevam #define BV_ANADIG_PLL_SYS_BYPASS_CLK_SRC__OSC_24M 0x0 9976a376046SFabio Estevam #define BV_ANADIG_PLL_SYS_BYPASS_CLK_SRC__ANACLK_1 0x1 9986a376046SFabio Estevam #define BV_ANADIG_PLL_SYS_BYPASS_CLK_SRC__ANACLK_2 0x2 9996a376046SFabio Estevam #define BV_ANADIG_PLL_SYS_BYPASS_CLK_SRC__XOR 0x3 10006a376046SFabio Estevam #define BM_ANADIG_PLL_SYS_ENABLE 0x00002000 10016a376046SFabio Estevam #define BM_ANADIG_PLL_SYS_POWERDOWN 0x00001000 10026a376046SFabio Estevam #define BM_ANADIG_PLL_SYS_HOLD_RING_OFF 0x00000800 10036a376046SFabio Estevam #define BM_ANADIG_PLL_SYS_DOUBLE_CP 0x00000400 10046a376046SFabio Estevam #define BM_ANADIG_PLL_SYS_HALF_CP 0x00000200 10056a376046SFabio Estevam #define BM_ANADIG_PLL_SYS_DOUBLE_LF 0x00000100 10066a376046SFabio Estevam #define BM_ANADIG_PLL_SYS_HALF_LF 0x00000080 10076a376046SFabio Estevam #define BP_ANADIG_PLL_SYS_DIV_SELECT 0 10086a376046SFabio Estevam #define BM_ANADIG_PLL_SYS_DIV_SELECT 0x0000007F 10096a376046SFabio Estevam #define BF_ANADIG_PLL_SYS_DIV_SELECT(v) \ 10106a376046SFabio Estevam (((v) << 0) & BM_ANADIG_PLL_SYS_DIV_SELECT) 10116a376046SFabio Estevam 10126a376046SFabio Estevam #define BM_ANADIG_USB1_PLL_480_CTRL_LOCK 0x80000000 10136a376046SFabio Estevam #define BP_ANADIG_USB1_PLL_480_CTRL_RSVD1 17 10146a376046SFabio Estevam #define BM_ANADIG_USB1_PLL_480_CTRL_RSVD1 0x7FFE0000 10156a376046SFabio Estevam #define BF_ANADIG_USB1_PLL_480_CTRL_RSVD1(v) \ 10166a376046SFabio Estevam (((v) << 17) & BM_ANADIG_USB1_PLL_480_CTRL_RSVD1) 10176a376046SFabio Estevam #define BM_ANADIG_USB1_PLL_480_CTRL_BYPASS 0x00010000 10186a376046SFabio Estevam #define BP_ANADIG_USB1_PLL_480_CTRL_BYPASS_CLK_SRC 14 10196a376046SFabio Estevam #define BM_ANADIG_USB1_PLL_480_CTRL_BYPASS_CLK_SRC 0x0000C000 10206a376046SFabio Estevam #define BF_ANADIG_USB1_PLL_480_CTRL_BYPASS_CLK_SRC(v) \ 10216a376046SFabio Estevam (((v) << 14) & BM_ANADIG_USB1_PLL_480_CTRL_BYPASS_CLK_SRC) 10226a376046SFabio Estevam #define BV_ANADIG_USB1_PLL_480_CTRL_BYPASS_CLK_SRC__OSC_24M 0x0 10236a376046SFabio Estevam #define BV_ANADIG_USB1_PLL_480_CTRL_BYPASS_CLK_SRC__ANACLK_1 0x1 10246a376046SFabio Estevam #define BV_ANADIG_USB1_PLL_480_CTRL_BYPASS_CLK_SRC__ANACLK_2 0x2 10256a376046SFabio Estevam #define BV_ANADIG_USB1_PLL_480_CTRL_BYPASS_CLK_SRC__XOR 0x3 10266a376046SFabio Estevam #define BM_ANADIG_USB1_PLL_480_CTRL_ENABLE 0x00002000 10276a376046SFabio Estevam #define BM_ANADIG_USB1_PLL_480_CTRL_POWER 0x00001000 10286a376046SFabio Estevam #define BM_ANADIG_USB1_PLL_480_CTRL_HOLD_RING_OFF 0x00000800 10296a376046SFabio Estevam #define BM_ANADIG_USB1_PLL_480_CTRL_DOUBLE_CP 0x00000400 10306a376046SFabio Estevam #define BM_ANADIG_USB1_PLL_480_CTRL_HALF_CP 0x00000200 10316a376046SFabio Estevam #define BM_ANADIG_USB1_PLL_480_CTRL_DOUBLE_LF 0x00000100 10326a376046SFabio Estevam #define BM_ANADIG_USB1_PLL_480_CTRL_HALF_LF 0x00000080 10336a376046SFabio Estevam #define BM_ANADIG_USB1_PLL_480_CTRL_EN_USB_CLKS 0x00000040 10346a376046SFabio Estevam #define BM_ANADIG_USB1_PLL_480_CTRL_RSVD0 0x00000020 10356a376046SFabio Estevam #define BP_ANADIG_USB1_PLL_480_CTRL_CONTROL0 2 10366a376046SFabio Estevam #define BM_ANADIG_USB1_PLL_480_CTRL_CONTROL0 0x0000001C 10376a376046SFabio Estevam #define BF_ANADIG_USB1_PLL_480_CTRL_CONTROL0(v) \ 10386a376046SFabio Estevam (((v) << 2) & BM_ANADIG_USB1_PLL_480_CTRL_CONTROL0) 10396a376046SFabio Estevam #define BP_ANADIG_USB1_PLL_480_CTRL_DIV_SELECT 0 10406a376046SFabio Estevam #define BM_ANADIG_USB1_PLL_480_CTRL_DIV_SELECT 0x00000003 10416a376046SFabio Estevam #define BF_ANADIG_USB1_PLL_480_CTRL_DIV_SELECT(v) \ 10426a376046SFabio Estevam (((v) << 0) & BM_ANADIG_USB1_PLL_480_CTRL_DIV_SELECT) 10436a376046SFabio Estevam 10446a376046SFabio Estevam #define BM_ANADIG_PLL_528_LOCK 0x80000000 10456a376046SFabio Estevam #define BP_ANADIG_PLL_528_RSVD1 19 10466a376046SFabio Estevam #define BM_ANADIG_PLL_528_RSVD1 0x7FF80000 10476a376046SFabio Estevam #define BF_ANADIG_PLL_528_RSVD1(v) \ 10486a376046SFabio Estevam (((v) << 19) & BM_ANADIG_PLL_528_RSVD1) 10496a376046SFabio Estevam #define BM_ANADIG_PLL_528_PFD_OFFSET_EN 0x00040000 10506a376046SFabio Estevam #define BM_ANADIG_PLL_528_DITHER_ENABLE 0x00020000 10516a376046SFabio Estevam #define BM_ANADIG_PLL_528_BYPASS 0x00010000 10526a376046SFabio Estevam #define BP_ANADIG_PLL_528_BYPASS_CLK_SRC 14 10536a376046SFabio Estevam #define BM_ANADIG_PLL_528_BYPASS_CLK_SRC 0x0000C000 10546a376046SFabio Estevam #define BF_ANADIG_PLL_528_BYPASS_CLK_SRC(v) \ 10556a376046SFabio Estevam (((v) << 14) & BM_ANADIG_PLL_528_BYPASS_CLK_SRC) 10566a376046SFabio Estevam #define BV_ANADIG_PLL_528_BYPASS_CLK_SRC__OSC_24M 0x0 10576a376046SFabio Estevam #define BV_ANADIG_PLL_528_BYPASS_CLK_SRC__ANACLK_1 0x1 10586a376046SFabio Estevam #define BV_ANADIG_PLL_528_BYPASS_CLK_SRC__ANACLK_2 0x2 10596a376046SFabio Estevam #define BV_ANADIG_PLL_528_BYPASS_CLK_SRC__XOR 0x3 10606a376046SFabio Estevam #define BM_ANADIG_PLL_528_ENABLE 0x00002000 10616a376046SFabio Estevam #define BM_ANADIG_PLL_528_POWERDOWN 0x00001000 10626a376046SFabio Estevam #define BM_ANADIG_PLL_528_HOLD_RING_OFF 0x00000800 10636a376046SFabio Estevam #define BM_ANADIG_PLL_528_DOUBLE_CP 0x00000400 10646a376046SFabio Estevam #define BM_ANADIG_PLL_528_HALF_CP 0x00000200 10656a376046SFabio Estevam #define BM_ANADIG_PLL_528_DOUBLE_LF 0x00000100 10666a376046SFabio Estevam #define BM_ANADIG_PLL_528_HALF_LF 0x00000080 10676a376046SFabio Estevam #define BP_ANADIG_PLL_528_RSVD0 1 10686a376046SFabio Estevam #define BM_ANADIG_PLL_528_RSVD0 0x0000007E 10696a376046SFabio Estevam #define BF_ANADIG_PLL_528_RSVD0(v) \ 10706a376046SFabio Estevam (((v) << 1) & BM_ANADIG_PLL_528_RSVD0) 10716a376046SFabio Estevam #define BM_ANADIG_PLL_528_DIV_SELECT 0x00000001 10726a376046SFabio Estevam 10736a376046SFabio Estevam #define BP_ANADIG_PLL_528_SS_STOP 16 10746a376046SFabio Estevam #define BM_ANADIG_PLL_528_SS_STOP 0xFFFF0000 10756a376046SFabio Estevam #define BF_ANADIG_PLL_528_SS_STOP(v) \ 10766a376046SFabio Estevam (((v) << 16) & BM_ANADIG_PLL_528_SS_STOP) 10776a376046SFabio Estevam #define BM_ANADIG_PLL_528_SS_ENABLE 0x00008000 10786a376046SFabio Estevam #define BP_ANADIG_PLL_528_SS_STEP 0 10796a376046SFabio Estevam #define BM_ANADIG_PLL_528_SS_STEP 0x00007FFF 10806a376046SFabio Estevam #define BF_ANADIG_PLL_528_SS_STEP(v) \ 10816a376046SFabio Estevam (((v) << 0) & BM_ANADIG_PLL_528_SS_STEP) 10826a376046SFabio Estevam 10836a376046SFabio Estevam #define BP_ANADIG_PLL_528_NUM_RSVD0 30 10846a376046SFabio Estevam #define BM_ANADIG_PLL_528_NUM_RSVD0 0xC0000000 10856a376046SFabio Estevam #define BF_ANADIG_PLL_528_NUM_RSVD0(v) \ 10866a376046SFabio Estevam (((v) << 30) & BM_ANADIG_PLL_528_NUM_RSVD0) 10876a376046SFabio Estevam #define BP_ANADIG_PLL_528_NUM_A 0 10886a376046SFabio Estevam #define BM_ANADIG_PLL_528_NUM_A 0x3FFFFFFF 10896a376046SFabio Estevam #define BF_ANADIG_PLL_528_NUM_A(v) \ 10906a376046SFabio Estevam (((v) << 0) & BM_ANADIG_PLL_528_NUM_A) 10916a376046SFabio Estevam 10926a376046SFabio Estevam #define BP_ANADIG_PLL_528_DENOM_RSVD0 30 10936a376046SFabio Estevam #define BM_ANADIG_PLL_528_DENOM_RSVD0 0xC0000000 10946a376046SFabio Estevam #define BF_ANADIG_PLL_528_DENOM_RSVD0(v) \ 10956a376046SFabio Estevam (((v) << 30) & BM_ANADIG_PLL_528_DENOM_RSVD0) 10966a376046SFabio Estevam #define BP_ANADIG_PLL_528_DENOM_B 0 10976a376046SFabio Estevam #define BM_ANADIG_PLL_528_DENOM_B 0x3FFFFFFF 10986a376046SFabio Estevam #define BF_ANADIG_PLL_528_DENOM_B(v) \ 10996a376046SFabio Estevam (((v) << 0) & BM_ANADIG_PLL_528_DENOM_B) 11006a376046SFabio Estevam 11016a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_LOCK 0x80000000 11026a376046SFabio Estevam #define BP_ANADIG_PLL_AUDIO_RSVD0 22 11036a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_RSVD0 0x7FC00000 11046a376046SFabio Estevam #define BF_ANADIG_PLL_AUDIO_RSVD0(v) \ 11056a376046SFabio Estevam (((v) << 22) & BM_ANADIG_PLL_AUDIO_RSVD0) 11066a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_SSC_EN 0x00200000 11076a376046SFabio Estevam #define BP_ANADIG_PLL_AUDIO_TEST_DIV_SELECT 19 11086a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_TEST_DIV_SELECT 0x00180000 11096a376046SFabio Estevam #define BF_ANADIG_PLL_AUDIO_TEST_DIV_SELECT(v) \ 11106a376046SFabio Estevam (((v) << 19) & BM_ANADIG_PLL_AUDIO_TEST_DIV_SELECT) 11116a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_PFD_OFFSET_EN 0x00040000 11126a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_DITHER_ENABLE 0x00020000 11136a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_BYPASS 0x00010000 11146a376046SFabio Estevam #define BP_ANADIG_PLL_AUDIO_BYPASS_CLK_SRC 14 11156a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_BYPASS_CLK_SRC 0x0000C000 11166a376046SFabio Estevam #define BF_ANADIG_PLL_AUDIO_BYPASS_CLK_SRC(v) \ 11176a376046SFabio Estevam (((v) << 14) & BM_ANADIG_PLL_AUDIO_BYPASS_CLK_SRC) 11186a376046SFabio Estevam #define BV_ANADIG_PLL_AUDIO_BYPASS_CLK_SRC__OSC_24M 0x0 11196a376046SFabio Estevam #define BV_ANADIG_PLL_AUDIO_BYPASS_CLK_SRC__ANACLK_1 0x1 11206a376046SFabio Estevam #define BV_ANADIG_PLL_AUDIO_BYPASS_CLK_SRC__ANACLK_2 0x2 11216a376046SFabio Estevam #define BV_ANADIG_PLL_AUDIO_BYPASS_CLK_SRC__XOR 0x3 11226a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_ENABLE 0x00002000 11236a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_POWERDOWN 0x00001000 11246a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_HOLD_RING_OFF 0x00000800 11256a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_DOUBLE_CP 0x00000400 11266a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_HALF_CP 0x00000200 11276a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_DOUBLE_LF 0x00000100 11286a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_HALF_LF 0x00000080 11296a376046SFabio Estevam #define BP_ANADIG_PLL_AUDIO_DIV_SELECT 0 11306a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_DIV_SELECT 0x0000007F 11316a376046SFabio Estevam #define BF_ANADIG_PLL_AUDIO_DIV_SELECT(v) \ 11326a376046SFabio Estevam (((v) << 0) & BM_ANADIG_PLL_AUDIO_DIV_SELECT) 11336a376046SFabio Estevam 11346a376046SFabio Estevam #define BP_ANADIG_PLL_AUDIO_NUM_RSVD0 30 11356a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_NUM_RSVD0 0xC0000000 11366a376046SFabio Estevam #define BF_ANADIG_PLL_AUDIO_NUM_RSVD0(v) \ 11376a376046SFabio Estevam (((v) << 30) & BM_ANADIG_PLL_AUDIO_NUM_RSVD0) 11386a376046SFabio Estevam #define BP_ANADIG_PLL_AUDIO_NUM_A 0 11396a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_NUM_A 0x3FFFFFFF 11406a376046SFabio Estevam #define BF_ANADIG_PLL_AUDIO_NUM_A(v) \ 11416a376046SFabio Estevam (((v) << 0) & BM_ANADIG_PLL_AUDIO_NUM_A) 11426a376046SFabio Estevam 11436a376046SFabio Estevam #define BP_ANADIG_PLL_AUDIO_DENOM_RSVD0 30 11446a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_DENOM_RSVD0 0xC0000000 11456a376046SFabio Estevam #define BF_ANADIG_PLL_AUDIO_DENOM_RSVD0(v) \ 11466a376046SFabio Estevam (((v) << 30) & BM_ANADIG_PLL_AUDIO_DENOM_RSVD0) 11476a376046SFabio Estevam #define BP_ANADIG_PLL_AUDIO_DENOM_B 0 11486a376046SFabio Estevam #define BM_ANADIG_PLL_AUDIO_DENOM_B 0x3FFFFFFF 11496a376046SFabio Estevam #define BF_ANADIG_PLL_AUDIO_DENOM_B(v) \ 11506a376046SFabio Estevam (((v) << 0) & BM_ANADIG_PLL_AUDIO_DENOM_B) 11516a376046SFabio Estevam 11526a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_LOCK 0x80000000 11536a376046SFabio Estevam #define BP_ANADIG_PLL_VIDEO_RSVD0 22 11546a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_RSVD0 0x7FC00000 11556a376046SFabio Estevam #define BF_ANADIG_PLL_VIDEO_RSVD0(v) \ 11566a376046SFabio Estevam (((v) << 22) & BM_ANADIG_PLL_VIDEO_RSVD0) 11576a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_SSC_EN 0x00200000 11584bfa2db8SSoeren Moch #define BP_ANADIG_PLL_VIDEO_POST_DIV_SELECT 19 11594bfa2db8SSoeren Moch #define BM_ANADIG_PLL_VIDEO_POST_DIV_SELECT 0x00180000 11604bfa2db8SSoeren Moch #define BF_ANADIG_PLL_VIDEO_POST_DIV_SELECT(v) \ 11614bfa2db8SSoeren Moch (((v) << 19) & BM_ANADIG_PLL_VIDEO_POST_DIV_SELECT) 11626a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_PFD_OFFSET_EN 0x00040000 11636a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_DITHER_ENABLE 0x00020000 11646a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_BYPASS 0x00010000 11656a376046SFabio Estevam #define BP_ANADIG_PLL_VIDEO_BYPASS_CLK_SRC 14 11666a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_BYPASS_CLK_SRC 0x0000C000 11676a376046SFabio Estevam #define BF_ANADIG_PLL_VIDEO_BYPASS_CLK_SRC(v) \ 11686a376046SFabio Estevam (((v) << 14) & BM_ANADIG_PLL_VIDEO_BYPASS_CLK_SRC) 11696a376046SFabio Estevam #define BV_ANADIG_PLL_VIDEO_BYPASS_CLK_SRC__OSC_24M 0x0 11706a376046SFabio Estevam #define BV_ANADIG_PLL_VIDEO_BYPASS_CLK_SRC__ANACLK_1 0x1 11716a376046SFabio Estevam #define BV_ANADIG_PLL_VIDEO_BYPASS_CLK_SRC__ANACLK_2 0x2 11726a376046SFabio Estevam #define BV_ANADIG_PLL_VIDEO_BYPASS_CLK_SRC__XOR 0x3 11736a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_ENABLE 0x00002000 11746a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_POWERDOWN 0x00001000 11756a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_HOLD_RING_OFF 0x00000800 11766a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_DOUBLE_CP 0x00000400 11776a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_HALF_CP 0x00000200 11786a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_DOUBLE_LF 0x00000100 11796a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_HALF_LF 0x00000080 11806a376046SFabio Estevam #define BP_ANADIG_PLL_VIDEO_DIV_SELECT 0 11816a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_DIV_SELECT 0x0000007F 11826a376046SFabio Estevam #define BF_ANADIG_PLL_VIDEO_DIV_SELECT(v) \ 11836a376046SFabio Estevam (((v) << 0) & BM_ANADIG_PLL_VIDEO_DIV_SELECT) 11846a376046SFabio Estevam 11856a376046SFabio Estevam #define BP_ANADIG_PLL_VIDEO_NUM_RSVD0 30 11866a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_NUM_RSVD0 0xC0000000 11876a376046SFabio Estevam #define BF_ANADIG_PLL_VIDEO_NUM_RSVD0(v) \ 11886a376046SFabio Estevam (((v) << 30) & BM_ANADIG_PLL_VIDEO_NUM_RSVD0) 11896a376046SFabio Estevam #define BP_ANADIG_PLL_VIDEO_NUM_A 0 11906a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_NUM_A 0x3FFFFFFF 11916a376046SFabio Estevam #define BF_ANADIG_PLL_VIDEO_NUM_A(v) \ 11926a376046SFabio Estevam (((v) << 0) & BM_ANADIG_PLL_VIDEO_NUM_A) 11936a376046SFabio Estevam 11946a376046SFabio Estevam #define BP_ANADIG_PLL_VIDEO_DENOM_RSVD0 30 11956a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_DENOM_RSVD0 0xC0000000 11966a376046SFabio Estevam #define BF_ANADIG_PLL_VIDEO_DENOM_RSVD0(v) \ 11976a376046SFabio Estevam (((v) << 30) & BM_ANADIG_PLL_VIDEO_DENOM_RSVD0) 11986a376046SFabio Estevam #define BP_ANADIG_PLL_VIDEO_DENOM_B 0 11996a376046SFabio Estevam #define BM_ANADIG_PLL_VIDEO_DENOM_B 0x3FFFFFFF 12006a376046SFabio Estevam #define BF_ANADIG_PLL_VIDEO_DENOM_B(v) \ 12016a376046SFabio Estevam (((v) << 0) & BM_ANADIG_PLL_VIDEO_DENOM_B) 12026a376046SFabio Estevam 12036a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_LOCK 0x80000000 12046a376046SFabio Estevam #define BP_ANADIG_PLL_ENET_RSVD1 21 12056a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_RSVD1 0x7FE00000 12066a376046SFabio Estevam #define BF_ANADIG_PLL_ENET_RSVD1(v) \ 12076a376046SFabio Estevam (((v) << 21) & BM_ANADIG_PLL_ENET_RSVD1) 1208d145878dSFabio Estevam #define BM_ANADIG_PLL_ENET_REF_25M_ENABLE 0x00200000 12096a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_ENABLE_SATA 0x00100000 12106a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_ENABLE_PCIE 0x00080000 12116a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_PFD_OFFSET_EN 0x00040000 12126a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_DITHER_ENABLE 0x00020000 12136a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_BYPASS 0x00010000 12146a376046SFabio Estevam #define BP_ANADIG_PLL_ENET_BYPASS_CLK_SRC 14 12156a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_BYPASS_CLK_SRC 0x0000C000 12166a376046SFabio Estevam #define BF_ANADIG_PLL_ENET_BYPASS_CLK_SRC(v) \ 12176a376046SFabio Estevam (((v) << 14) & BM_ANADIG_PLL_ENET_BYPASS_CLK_SRC) 12186a376046SFabio Estevam #define BV_ANADIG_PLL_ENET_BYPASS_CLK_SRC__OSC_24M 0x0 12196a376046SFabio Estevam #define BV_ANADIG_PLL_ENET_BYPASS_CLK_SRC__ANACLK_1 0x1 12206a376046SFabio Estevam #define BV_ANADIG_PLL_ENET_BYPASS_CLK_SRC__ANACLK_2 0x2 12216a376046SFabio Estevam #define BV_ANADIG_PLL_ENET_BYPASS_CLK_SRC__XOR 0x3 12226a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_ENABLE 0x00002000 12236a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_POWERDOWN 0x00001000 12246a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_HOLD_RING_OFF 0x00000800 12256a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_DOUBLE_CP 0x00000400 12266a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_HALF_CP 0x00000200 12276a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_DOUBLE_LF 0x00000100 12286a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_HALF_LF 0x00000080 12296a376046SFabio Estevam #define BP_ANADIG_PLL_ENET_RSVD0 2 12306a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_RSVD0 0x0000007C 12316a376046SFabio Estevam #define BF_ANADIG_PLL_ENET_RSVD0(v) \ 12326a376046SFabio Estevam (((v) << 2) & BM_ANADIG_PLL_ENET_RSVD0) 12336a376046SFabio Estevam #define BP_ANADIG_PLL_ENET_DIV_SELECT 0 12346a376046SFabio Estevam #define BM_ANADIG_PLL_ENET_DIV_SELECT 0x00000003 12356a376046SFabio Estevam #define BF_ANADIG_PLL_ENET_DIV_SELECT(v) \ 12366a376046SFabio Estevam (((v) << 0) & BM_ANADIG_PLL_ENET_DIV_SELECT) 12376a376046SFabio Estevam 12386d97dc10SPeng Fan /* ENET2 for i.MX6SX/UL */ 12396d97dc10SPeng Fan #define BM_ANADIG_PLL_ENET2_ENABLE 0x00100000 12406d97dc10SPeng Fan #define BM_ANADIG_PLL_ENET2_DIV_SELECT 0x0000000C 12416d97dc10SPeng Fan #define BF_ANADIG_PLL_ENET2_DIV_SELECT(v) \ 12426d97dc10SPeng Fan (((v) << 2) & BM_ANADIG_PLL_ENET2_DIV_SELECT) 12436d97dc10SPeng Fan 12446a376046SFabio Estevam #define BM_ANADIG_PFD_480_PFD3_CLKGATE 0x80000000 12456a376046SFabio Estevam #define BM_ANADIG_PFD_480_PFD3_STABLE 0x40000000 12466a376046SFabio Estevam #define BP_ANADIG_PFD_480_PFD3_FRAC 24 12476a376046SFabio Estevam #define BM_ANADIG_PFD_480_PFD3_FRAC 0x3F000000 12486a376046SFabio Estevam #define BF_ANADIG_PFD_480_PFD3_FRAC(v) \ 12496a376046SFabio Estevam (((v) << 24) & BM_ANADIG_PFD_480_PFD3_FRAC) 12506a376046SFabio Estevam #define BM_ANADIG_PFD_480_PFD2_CLKGATE 0x00800000 12516a376046SFabio Estevam #define BM_ANADIG_PFD_480_PFD2_STABLE 0x00400000 12526a376046SFabio Estevam #define BP_ANADIG_PFD_480_PFD2_FRAC 16 12536a376046SFabio Estevam #define BM_ANADIG_PFD_480_PFD2_FRAC 0x003F0000 12546a376046SFabio Estevam #define BF_ANADIG_PFD_480_PFD2_FRAC(v) \ 12556a376046SFabio Estevam (((v) << 16) & BM_ANADIG_PFD_480_PFD2_FRAC) 12566a376046SFabio Estevam #define BM_ANADIG_PFD_480_PFD1_CLKGATE 0x00008000 12576a376046SFabio Estevam #define BM_ANADIG_PFD_480_PFD1_STABLE 0x00004000 12586a376046SFabio Estevam #define BP_ANADIG_PFD_480_PFD1_FRAC 8 12596a376046SFabio Estevam #define BM_ANADIG_PFD_480_PFD1_FRAC 0x00003F00 12606a376046SFabio Estevam #define BF_ANADIG_PFD_480_PFD1_FRAC(v) \ 12616a376046SFabio Estevam (((v) << 8) & BM_ANADIG_PFD_480_PFD1_FRAC) 12626a376046SFabio Estevam #define BM_ANADIG_PFD_480_PFD0_CLKGATE 0x00000080 12636a376046SFabio Estevam #define BM_ANADIG_PFD_480_PFD0_STABLE 0x00000040 12646a376046SFabio Estevam #define BP_ANADIG_PFD_480_PFD0_FRAC 0 12656a376046SFabio Estevam #define BM_ANADIG_PFD_480_PFD0_FRAC 0x0000003F 12666a376046SFabio Estevam #define BF_ANADIG_PFD_480_PFD0_FRAC(v) \ 12676a376046SFabio Estevam (((v) << 0) & BM_ANADIG_PFD_480_PFD0_FRAC) 12686a376046SFabio Estevam 12696a376046SFabio Estevam #define BM_ANADIG_PFD_528_PFD3_CLKGATE 0x80000000 12706a376046SFabio Estevam #define BM_ANADIG_PFD_528_PFD3_STABLE 0x40000000 12716a376046SFabio Estevam #define BP_ANADIG_PFD_528_PFD3_FRAC 24 12726a376046SFabio Estevam #define BM_ANADIG_PFD_528_PFD3_FRAC 0x3F000000 12736a376046SFabio Estevam #define BF_ANADIG_PFD_528_PFD3_FRAC(v) \ 12746a376046SFabio Estevam (((v) << 24) & BM_ANADIG_PFD_528_PFD3_FRAC) 12756a376046SFabio Estevam #define BM_ANADIG_PFD_528_PFD2_CLKGATE 0x00800000 12766a376046SFabio Estevam #define BM_ANADIG_PFD_528_PFD2_STABLE 0x00400000 12776a376046SFabio Estevam #define BP_ANADIG_PFD_528_PFD2_FRAC 16 12786a376046SFabio Estevam #define BM_ANADIG_PFD_528_PFD2_FRAC 0x003F0000 12796a376046SFabio Estevam #define BF_ANADIG_PFD_528_PFD2_FRAC(v) \ 12806a376046SFabio Estevam (((v) << 16) & BM_ANADIG_PFD_528_PFD2_FRAC) 12816a376046SFabio Estevam #define BM_ANADIG_PFD_528_PFD1_CLKGATE 0x00008000 12826a376046SFabio Estevam #define BM_ANADIG_PFD_528_PFD1_STABLE 0x00004000 12836a376046SFabio Estevam #define BP_ANADIG_PFD_528_PFD1_FRAC 8 12846a376046SFabio Estevam #define BM_ANADIG_PFD_528_PFD1_FRAC 0x00003F00 12856a376046SFabio Estevam #define BF_ANADIG_PFD_528_PFD1_FRAC(v) \ 12866a376046SFabio Estevam (((v) << 8) & BM_ANADIG_PFD_528_PFD1_FRAC) 12876a376046SFabio Estevam #define BM_ANADIG_PFD_528_PFD0_CLKGATE 0x00000080 12886a376046SFabio Estevam #define BM_ANADIG_PFD_528_PFD0_STABLE 0x00000040 12896a376046SFabio Estevam #define BP_ANADIG_PFD_528_PFD0_FRAC 0 12906a376046SFabio Estevam #define BM_ANADIG_PFD_528_PFD0_FRAC 0x0000003F 12916a376046SFabio Estevam #define BF_ANADIG_PFD_528_PFD0_FRAC(v) \ 12926a376046SFabio Estevam (((v) << 0) & BM_ANADIG_PFD_528_PFD0_FRAC) 12936a376046SFabio Estevam 12941f516faaSPeng Fan #define BM_ANADIG_ANA_MISC0_REFTOP_SELBIASOFF 0x00000008 12955b66482dSPeng Fan #define BM_ANADIG_ANA_MISC0_REFTOP_VBGADJ 0x60 129697c16dc8SPeng Fan #define BM_ANADIG_ANA_MISC0_REFTOP_VBGADJ_SHIFT 4 12971f516faaSPeng Fan 12989ba18ff8SPeng Fan #define BM_PMU_MISC2_AUDIO_DIV_MSB (1 << 23) 12999ba18ff8SPeng Fan #define BP_PMU_MISC2_AUDIO_DIV_MSB 23 13009ba18ff8SPeng Fan 13019ba18ff8SPeng Fan #define BM_PMU_MISC2_AUDIO_DIV_LSB (1 << 15) 13029ba18ff8SPeng Fan #define BP_PMU_MISC2_AUDIO_DIV_LSB 15 13039ba18ff8SPeng Fan 13049ba18ff8SPeng Fan #define PMU_MISC2_AUDIO_DIV(v) \ 13059ba18ff8SPeng Fan (((v & BM_PMU_MISC2_AUDIO_DIV_MSB) >> \ 13069ba18ff8SPeng Fan (BP_PMU_MISC2_AUDIO_DIV_MSB - 1)) | \ 13079ba18ff8SPeng Fan ((v & BM_PMU_MISC2_AUDIO_DIV_LSB) >> \ 13089ba18ff8SPeng Fan BP_PMU_MISC2_AUDIO_DIV_LSB)) 13099ba18ff8SPeng Fan 13106a376046SFabio Estevam #endif /*__ARCH_ARM_MACH_MX6_CCM_REGS_H__ */ 1311