1*69d88a00SPaul Walmsley #ifndef __ARCH_ARM_MACH_OMAP2_CM_REGBITS_24XX_H 2*69d88a00SPaul Walmsley #define __ARCH_ARM_MACH_OMAP2_CM_REGBITS_24XX_H 3*69d88a00SPaul Walmsley 4*69d88a00SPaul Walmsley /* 5*69d88a00SPaul Walmsley * OMAP24XX Clock Management register bits 6*69d88a00SPaul Walmsley * 7*69d88a00SPaul Walmsley * Copyright (C) 2007 Texas Instruments, Inc. 8*69d88a00SPaul Walmsley * Copyright (C) 2007 Nokia Corporation 9*69d88a00SPaul Walmsley * 10*69d88a00SPaul Walmsley * Written by Paul Walmsley 11*69d88a00SPaul Walmsley * 12*69d88a00SPaul Walmsley * This program is free software; you can redistribute it and/or modify 13*69d88a00SPaul Walmsley * it under the terms of the GNU General Public License version 2 as 14*69d88a00SPaul Walmsley * published by the Free Software Foundation. 15*69d88a00SPaul Walmsley */ 16*69d88a00SPaul Walmsley 17*69d88a00SPaul Walmsley #include "cm.h" 18*69d88a00SPaul Walmsley 19*69d88a00SPaul Walmsley /* Bits shared between registers */ 20*69d88a00SPaul Walmsley 21*69d88a00SPaul Walmsley /* CM_FCLKEN1_CORE and CM_ICLKEN1_CORE shared bits */ 22*69d88a00SPaul Walmsley #define OMAP24XX_EN_CAM_SHIFT 31 23*69d88a00SPaul Walmsley #define OMAP24XX_EN_CAM (1 << 31) 24*69d88a00SPaul Walmsley #define OMAP24XX_EN_WDT4_SHIFT 29 25*69d88a00SPaul Walmsley #define OMAP24XX_EN_WDT4 (1 << 29) 26*69d88a00SPaul Walmsley #define OMAP2420_EN_WDT3_SHIFT 28 27*69d88a00SPaul Walmsley #define OMAP2420_EN_WDT3 (1 << 28) 28*69d88a00SPaul Walmsley #define OMAP24XX_EN_MSPRO_SHIFT 27 29*69d88a00SPaul Walmsley #define OMAP24XX_EN_MSPRO (1 << 27) 30*69d88a00SPaul Walmsley #define OMAP24XX_EN_FAC_SHIFT 25 31*69d88a00SPaul Walmsley #define OMAP24XX_EN_FAC (1 << 25) 32*69d88a00SPaul Walmsley #define OMAP2420_EN_EAC_SHIFT 24 33*69d88a00SPaul Walmsley #define OMAP2420_EN_EAC (1 << 24) 34*69d88a00SPaul Walmsley #define OMAP24XX_EN_HDQ_SHIFT 23 35*69d88a00SPaul Walmsley #define OMAP24XX_EN_HDQ (1 << 23) 36*69d88a00SPaul Walmsley #define OMAP2420_EN_I2C2_SHIFT 20 37*69d88a00SPaul Walmsley #define OMAP2420_EN_I2C2 (1 << 20) 38*69d88a00SPaul Walmsley #define OMAP2420_EN_I2C1_SHIFT 19 39*69d88a00SPaul Walmsley #define OMAP2420_EN_I2C1 (1 << 19) 40*69d88a00SPaul Walmsley 41*69d88a00SPaul Walmsley /* CM_FCLKEN2_CORE and CM_ICLKEN2_CORE shared bits */ 42*69d88a00SPaul Walmsley #define OMAP2430_EN_MCBSP5_SHIFT 5 43*69d88a00SPaul Walmsley #define OMAP2430_EN_MCBSP5 (1 << 5) 44*69d88a00SPaul Walmsley #define OMAP2430_EN_MCBSP4_SHIFT 4 45*69d88a00SPaul Walmsley #define OMAP2430_EN_MCBSP4 (1 << 4) 46*69d88a00SPaul Walmsley #define OMAP2430_EN_MCBSP3_SHIFT 3 47*69d88a00SPaul Walmsley #define OMAP2430_EN_MCBSP3 (1 << 3) 48*69d88a00SPaul Walmsley #define OMAP24XX_EN_SSI_SHIFT 1 49*69d88a00SPaul Walmsley #define OMAP24XX_EN_SSI (1 << 1) 50*69d88a00SPaul Walmsley 51*69d88a00SPaul Walmsley /* CM_FCLKEN_WKUP and CM_ICLKEN_WKUP shared bits */ 52*69d88a00SPaul Walmsley #define OMAP24XX_EN_MPU_WDT_SHIFT 3 53*69d88a00SPaul Walmsley #define OMAP24XX_EN_MPU_WDT (1 << 3) 54*69d88a00SPaul Walmsley 55*69d88a00SPaul Walmsley /* Bits specific to each register */ 56*69d88a00SPaul Walmsley 57*69d88a00SPaul Walmsley /* CM_IDLEST_MPU */ 58*69d88a00SPaul Walmsley /* 2430 only */ 59*69d88a00SPaul Walmsley #define OMAP2430_ST_MPU (1 << 0) 60*69d88a00SPaul Walmsley 61*69d88a00SPaul Walmsley /* CM_CLKSEL_MPU */ 62*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_MPU_SHIFT 0 63*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_MPU_MASK (0x1f << 0) 64*69d88a00SPaul Walmsley 65*69d88a00SPaul Walmsley /* CM_CLKSTCTRL_MPU */ 66*69d88a00SPaul Walmsley #define OMAP24XX_AUTOSTATE_MPU (1 << 0) 67*69d88a00SPaul Walmsley 68*69d88a00SPaul Walmsley /* CM_FCLKEN1_CORE specific bits*/ 69*69d88a00SPaul Walmsley #define OMAP24XX_EN_TV_SHIFT 2 70*69d88a00SPaul Walmsley #define OMAP24XX_EN_TV (1 << 2) 71*69d88a00SPaul Walmsley #define OMAP24XX_EN_DSS2_SHIFT 1 72*69d88a00SPaul Walmsley #define OMAP24XX_EN_DSS2 (1 << 1) 73*69d88a00SPaul Walmsley #define OMAP24XX_EN_DSS1_SHIFT 0 74*69d88a00SPaul Walmsley #define OMAP24XX_EN_DSS1 (1 << 0) 75*69d88a00SPaul Walmsley 76*69d88a00SPaul Walmsley /* CM_FCLKEN2_CORE specific bits */ 77*69d88a00SPaul Walmsley #define OMAP2430_EN_I2CHS2_SHIFT 20 78*69d88a00SPaul Walmsley #define OMAP2430_EN_I2CHS2 (1 << 20) 79*69d88a00SPaul Walmsley #define OMAP2430_EN_I2CHS1_SHIFT 19 80*69d88a00SPaul Walmsley #define OMAP2430_EN_I2CHS1 (1 << 19) 81*69d88a00SPaul Walmsley #define OMAP2430_EN_MMCHSDB2_SHIFT 17 82*69d88a00SPaul Walmsley #define OMAP2430_EN_MMCHSDB2 (1 << 17) 83*69d88a00SPaul Walmsley #define OMAP2430_EN_MMCHSDB1_SHIFT 16 84*69d88a00SPaul Walmsley #define OMAP2430_EN_MMCHSDB1 (1 << 16) 85*69d88a00SPaul Walmsley 86*69d88a00SPaul Walmsley /* CM_ICLKEN1_CORE specific bits */ 87*69d88a00SPaul Walmsley #define OMAP24XX_EN_MAILBOXES_SHIFT 30 88*69d88a00SPaul Walmsley #define OMAP24XX_EN_MAILBOXES (1 << 30) 89*69d88a00SPaul Walmsley #define OMAP24XX_EN_DSS_SHIFT 0 90*69d88a00SPaul Walmsley #define OMAP24XX_EN_DSS (1 << 0) 91*69d88a00SPaul Walmsley 92*69d88a00SPaul Walmsley /* CM_ICLKEN2_CORE specific bits */ 93*69d88a00SPaul Walmsley 94*69d88a00SPaul Walmsley /* CM_ICLKEN3_CORE */ 95*69d88a00SPaul Walmsley /* 2430 only */ 96*69d88a00SPaul Walmsley #define OMAP2430_EN_SDRC_SHIFT 2 97*69d88a00SPaul Walmsley #define OMAP2430_EN_SDRC (1 << 2) 98*69d88a00SPaul Walmsley 99*69d88a00SPaul Walmsley /* CM_ICLKEN4_CORE */ 100*69d88a00SPaul Walmsley #define OMAP24XX_EN_PKA_SHIFT 4 101*69d88a00SPaul Walmsley #define OMAP24XX_EN_PKA (1 << 4) 102*69d88a00SPaul Walmsley #define OMAP24XX_EN_AES_SHIFT 3 103*69d88a00SPaul Walmsley #define OMAP24XX_EN_AES (1 << 3) 104*69d88a00SPaul Walmsley #define OMAP24XX_EN_RNG_SHIFT 2 105*69d88a00SPaul Walmsley #define OMAP24XX_EN_RNG (1 << 2) 106*69d88a00SPaul Walmsley #define OMAP24XX_EN_SHA_SHIFT 1 107*69d88a00SPaul Walmsley #define OMAP24XX_EN_SHA (1 << 1) 108*69d88a00SPaul Walmsley #define OMAP24XX_EN_DES_SHIFT 0 109*69d88a00SPaul Walmsley #define OMAP24XX_EN_DES (1 << 0) 110*69d88a00SPaul Walmsley 111*69d88a00SPaul Walmsley /* CM_IDLEST1_CORE specific bits */ 112*69d88a00SPaul Walmsley #define OMAP24XX_ST_MAILBOXES (1 << 30) 113*69d88a00SPaul Walmsley #define OMAP24XX_ST_WDT4 (1 << 29) 114*69d88a00SPaul Walmsley #define OMAP2420_ST_WDT3 (1 << 28) 115*69d88a00SPaul Walmsley #define OMAP24XX_ST_MSPRO (1 << 27) 116*69d88a00SPaul Walmsley #define OMAP24XX_ST_FAC (1 << 25) 117*69d88a00SPaul Walmsley #define OMAP2420_ST_EAC (1 << 24) 118*69d88a00SPaul Walmsley #define OMAP24XX_ST_HDQ (1 << 23) 119*69d88a00SPaul Walmsley #define OMAP24XX_ST_I2C2 (1 << 20) 120*69d88a00SPaul Walmsley #define OMAP24XX_ST_I2C1 (1 << 19) 121*69d88a00SPaul Walmsley #define OMAP24XX_ST_MCBSP2 (1 << 16) 122*69d88a00SPaul Walmsley #define OMAP24XX_ST_MCBSP1 (1 << 15) 123*69d88a00SPaul Walmsley #define OMAP24XX_ST_DSS (1 << 0) 124*69d88a00SPaul Walmsley 125*69d88a00SPaul Walmsley /* CM_IDLEST2_CORE */ 126*69d88a00SPaul Walmsley #define OMAP2430_ST_MCBSP5 (1 << 5) 127*69d88a00SPaul Walmsley #define OMAP2430_ST_MCBSP4 (1 << 4) 128*69d88a00SPaul Walmsley #define OMAP2430_ST_MCBSP3 (1 << 3) 129*69d88a00SPaul Walmsley #define OMAP24XX_ST_SSI (1 << 1) 130*69d88a00SPaul Walmsley 131*69d88a00SPaul Walmsley /* CM_IDLEST3_CORE */ 132*69d88a00SPaul Walmsley /* 2430 only */ 133*69d88a00SPaul Walmsley #define OMAP2430_ST_SDRC (1 << 2) 134*69d88a00SPaul Walmsley 135*69d88a00SPaul Walmsley /* CM_IDLEST4_CORE */ 136*69d88a00SPaul Walmsley #define OMAP24XX_ST_PKA (1 << 4) 137*69d88a00SPaul Walmsley #define OMAP24XX_ST_AES (1 << 3) 138*69d88a00SPaul Walmsley #define OMAP24XX_ST_RNG (1 << 2) 139*69d88a00SPaul Walmsley #define OMAP24XX_ST_SHA (1 << 1) 140*69d88a00SPaul Walmsley #define OMAP24XX_ST_DES (1 << 0) 141*69d88a00SPaul Walmsley 142*69d88a00SPaul Walmsley /* CM_AUTOIDLE1_CORE */ 143*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_CAM (1 << 31) 144*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_MAILBOXES (1 << 30) 145*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_WDT4 (1 << 29) 146*69d88a00SPaul Walmsley #define OMAP2420_AUTO_WDT3 (1 << 28) 147*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_MSPRO (1 << 27) 148*69d88a00SPaul Walmsley #define OMAP2420_AUTO_MMC (1 << 26) 149*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_FAC (1 << 25) 150*69d88a00SPaul Walmsley #define OMAP2420_AUTO_EAC (1 << 24) 151*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_HDQ (1 << 23) 152*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_UART2 (1 << 22) 153*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_UART1 (1 << 21) 154*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_I2C2 (1 << 20) 155*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_I2C1 (1 << 19) 156*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_MCSPI2 (1 << 18) 157*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_MCSPI1 (1 << 17) 158*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_MCBSP2 (1 << 16) 159*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_MCBSP1 (1 << 15) 160*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_GPT12 (1 << 14) 161*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_GPT11 (1 << 13) 162*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_GPT10 (1 << 12) 163*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_GPT9 (1 << 11) 164*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_GPT8 (1 << 10) 165*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_GPT7 (1 << 9) 166*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_GPT6 (1 << 8) 167*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_GPT5 (1 << 7) 168*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_GPT4 (1 << 6) 169*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_GPT3 (1 << 5) 170*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_GPT2 (1 << 4) 171*69d88a00SPaul Walmsley #define OMAP2420_AUTO_VLYNQ (1 << 3) 172*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_DSS (1 << 0) 173*69d88a00SPaul Walmsley 174*69d88a00SPaul Walmsley /* CM_AUTOIDLE2_CORE */ 175*69d88a00SPaul Walmsley #define OMAP2430_AUTO_MDM_INTC (1 << 11) 176*69d88a00SPaul Walmsley #define OMAP2430_AUTO_GPIO5 (1 << 10) 177*69d88a00SPaul Walmsley #define OMAP2430_AUTO_MCSPI3 (1 << 9) 178*69d88a00SPaul Walmsley #define OMAP2430_AUTO_MMCHS2 (1 << 8) 179*69d88a00SPaul Walmsley #define OMAP2430_AUTO_MMCHS1 (1 << 7) 180*69d88a00SPaul Walmsley #define OMAP2430_AUTO_USBHS (1 << 6) 181*69d88a00SPaul Walmsley #define OMAP2430_AUTO_MCBSP5 (1 << 5) 182*69d88a00SPaul Walmsley #define OMAP2430_AUTO_MCBSP4 (1 << 4) 183*69d88a00SPaul Walmsley #define OMAP2430_AUTO_MCBSP3 (1 << 3) 184*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_UART3 (1 << 2) 185*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_SSI (1 << 1) 186*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_USB (1 << 0) 187*69d88a00SPaul Walmsley 188*69d88a00SPaul Walmsley /* CM_AUTOIDLE3_CORE */ 189*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_SDRC (1 << 2) 190*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_GPMC (1 << 1) 191*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_SDMA (1 << 0) 192*69d88a00SPaul Walmsley 193*69d88a00SPaul Walmsley /* CM_AUTOIDLE4_CORE */ 194*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_PKA (1 << 4) 195*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_AES (1 << 3) 196*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_RNG (1 << 2) 197*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_SHA (1 << 1) 198*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_DES (1 << 0) 199*69d88a00SPaul Walmsley 200*69d88a00SPaul Walmsley /* CM_CLKSEL1_CORE */ 201*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_USB_SHIFT 25 202*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_USB_MASK (0x7 << 25) 203*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_SSI_SHIFT 20 204*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_SSI_MASK (0x1f << 20) 205*69d88a00SPaul Walmsley #define OMAP2420_CLKSEL_VLYNQ_SHIFT 15 206*69d88a00SPaul Walmsley #define OMAP2420_CLKSEL_VLYNQ_MASK (0x1f << 15) 207*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_DSS2_SHIFT 13 208*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_DSS2_MASK (0x1 << 13) 209*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_DSS1_SHIFT 8 210*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_DSS1_MASK (0x1f << 8) 211*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_L4_SHIFT 5 212*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_L4_MASK (0x3 << 5) 213*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_L3_SHIFT 0 214*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_L3_MASK (0x1f << 0) 215*69d88a00SPaul Walmsley 216*69d88a00SPaul Walmsley /* CM_CLKSEL2_CORE */ 217*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT12_SHIFT 22 218*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT12_MASK (0x3 << 22) 219*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT11_SHIFT 20 220*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT11_MASK (0x3 << 20) 221*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT10_SHIFT 18 222*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT10_MASK (0x3 << 18) 223*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT9_SHIFT 16 224*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT9_MASK (0x3 << 16) 225*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT8_SHIFT 14 226*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT8_MASK (0x3 << 14) 227*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT7_SHIFT 12 228*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT7_MASK (0x3 << 12) 229*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT6_SHIFT 10 230*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT6_MASK (0x3 << 10) 231*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT5_SHIFT 8 232*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT5_MASK (0x3 << 8) 233*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT4_SHIFT 6 234*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT4_MASK (0x3 << 6) 235*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT3_SHIFT 4 236*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT3_MASK (0x3 << 4) 237*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT2_SHIFT 2 238*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT2_MASK (0x3 << 2) 239*69d88a00SPaul Walmsley 240*69d88a00SPaul Walmsley /* CM_CLKSTCTRL_CORE */ 241*69d88a00SPaul Walmsley #define OMAP24XX_AUTOSTATE_DSS (1 << 2) 242*69d88a00SPaul Walmsley #define OMAP24XX_AUTOSTATE_L4 (1 << 1) 243*69d88a00SPaul Walmsley #define OMAP24XX_AUTOSTATE_L3 (1 << 0) 244*69d88a00SPaul Walmsley 245*69d88a00SPaul Walmsley /* CM_FCLKEN_GFX */ 246*69d88a00SPaul Walmsley #define OMAP24XX_EN_3D_SHIFT 2 247*69d88a00SPaul Walmsley #define OMAP24XX_EN_3D (1 << 2) 248*69d88a00SPaul Walmsley #define OMAP24XX_EN_2D_SHIFT 1 249*69d88a00SPaul Walmsley #define OMAP24XX_EN_2D (1 << 1) 250*69d88a00SPaul Walmsley 251*69d88a00SPaul Walmsley /* CM_ICLKEN_GFX specific bits */ 252*69d88a00SPaul Walmsley 253*69d88a00SPaul Walmsley /* CM_IDLEST_GFX specific bits */ 254*69d88a00SPaul Walmsley 255*69d88a00SPaul Walmsley /* CM_CLKSEL_GFX specific bits */ 256*69d88a00SPaul Walmsley 257*69d88a00SPaul Walmsley /* CM_CLKSTCTRL_GFX */ 258*69d88a00SPaul Walmsley #define OMAP24XX_AUTOSTATE_GFX (1 << 0) 259*69d88a00SPaul Walmsley 260*69d88a00SPaul Walmsley /* CM_FCLKEN_WKUP specific bits */ 261*69d88a00SPaul Walmsley 262*69d88a00SPaul Walmsley /* CM_ICLKEN_WKUP specific bits */ 263*69d88a00SPaul Walmsley #define OMAP2430_EN_ICR_SHIFT 6 264*69d88a00SPaul Walmsley #define OMAP2430_EN_ICR (1 << 6) 265*69d88a00SPaul Walmsley #define OMAP24XX_EN_OMAPCTRL_SHIFT 5 266*69d88a00SPaul Walmsley #define OMAP24XX_EN_OMAPCTRL (1 << 5) 267*69d88a00SPaul Walmsley #define OMAP24XX_EN_WDT1_SHIFT 4 268*69d88a00SPaul Walmsley #define OMAP24XX_EN_WDT1 (1 << 4) 269*69d88a00SPaul Walmsley #define OMAP24XX_EN_32KSYNC_SHIFT 1 270*69d88a00SPaul Walmsley #define OMAP24XX_EN_32KSYNC (1 << 1) 271*69d88a00SPaul Walmsley 272*69d88a00SPaul Walmsley /* CM_IDLEST_WKUP specific bits */ 273*69d88a00SPaul Walmsley #define OMAP2430_ST_ICR (1 << 6) 274*69d88a00SPaul Walmsley #define OMAP24XX_ST_OMAPCTRL (1 << 5) 275*69d88a00SPaul Walmsley #define OMAP24XX_ST_WDT1 (1 << 4) 276*69d88a00SPaul Walmsley #define OMAP24XX_ST_MPU_WDT (1 << 3) 277*69d88a00SPaul Walmsley #define OMAP24XX_ST_32KSYNC (1 << 1) 278*69d88a00SPaul Walmsley 279*69d88a00SPaul Walmsley /* CM_AUTOIDLE_WKUP */ 280*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_OMAPCTRL (1 << 5) 281*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_WDT1 (1 << 4) 282*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_MPU_WDT (1 << 3) 283*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_GPIOS (1 << 2) 284*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_32KSYNC (1 << 1) 285*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_GPT1 (1 << 0) 286*69d88a00SPaul Walmsley 287*69d88a00SPaul Walmsley /* CM_CLKSEL_WKUP */ 288*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT1_SHIFT 0 289*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT1_MASK (0x3 << 0) 290*69d88a00SPaul Walmsley 291*69d88a00SPaul Walmsley /* CM_CLKEN_PLL */ 292*69d88a00SPaul Walmsley #define OMAP24XX_EN_54M_PLL_SHIFT 6 293*69d88a00SPaul Walmsley #define OMAP24XX_EN_54M_PLL_MASK (0x3 << 6) 294*69d88a00SPaul Walmsley #define OMAP24XX_EN_96M_PLL_SHIFT 2 295*69d88a00SPaul Walmsley #define OMAP24XX_EN_96M_PLL_MASK (0x3 << 2) 296*69d88a00SPaul Walmsley #define OMAP24XX_EN_DPLL_SHIFT 0 297*69d88a00SPaul Walmsley #define OMAP24XX_EN_DPLL_MASK (0x3 << 0) 298*69d88a00SPaul Walmsley 299*69d88a00SPaul Walmsley /* CM_IDLEST_CKGEN */ 300*69d88a00SPaul Walmsley #define OMAP24XX_ST_54M_APLL (1 << 9) 301*69d88a00SPaul Walmsley #define OMAP24XX_ST_96M_APLL (1 << 8) 302*69d88a00SPaul Walmsley #define OMAP24XX_ST_54M_CLK (1 << 6) 303*69d88a00SPaul Walmsley #define OMAP24XX_ST_12M_CLK (1 << 5) 304*69d88a00SPaul Walmsley #define OMAP24XX_ST_48M_CLK (1 << 4) 305*69d88a00SPaul Walmsley #define OMAP24XX_ST_96M_CLK (1 << 2) 306*69d88a00SPaul Walmsley #define OMAP24XX_ST_CORE_CLK_SHIFT 0 307*69d88a00SPaul Walmsley #define OMAP24XX_ST_CORE_CLK_MASK (0x3 << 0) 308*69d88a00SPaul Walmsley 309*69d88a00SPaul Walmsley /* CM_AUTOIDLE_PLL */ 310*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_54M_SHIFT 6 311*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_54M_MASK (0x3 << 6) 312*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_96M_SHIFT 2 313*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_96M_MASK (0x3 << 2) 314*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_DPLL_SHIFT 0 315*69d88a00SPaul Walmsley #define OMAP24XX_AUTO_DPLL_MASK (0x3 << 0) 316*69d88a00SPaul Walmsley 317*69d88a00SPaul Walmsley /* CM_CLKSEL1_PLL */ 318*69d88a00SPaul Walmsley #define OMAP2430_MAXDPLLFASTLOCK_SHIFT 28 319*69d88a00SPaul Walmsley #define OMAP2430_MAXDPLLFASTLOCK_MASK (0x7 << 28) 320*69d88a00SPaul Walmsley #define OMAP24XX_APLLS_CLKIN_SHIFT 23 321*69d88a00SPaul Walmsley #define OMAP24XX_APLLS_CLKIN_MASK (0x7 << 23) 322*69d88a00SPaul Walmsley #define OMAP24XX_DPLL_MULT_SHIFT 12 323*69d88a00SPaul Walmsley #define OMAP24XX_DPLL_MULT_MASK (0x3ff << 12) 324*69d88a00SPaul Walmsley #define OMAP24XX_DPLL_DIV_SHIFT 8 325*69d88a00SPaul Walmsley #define OMAP24XX_DPLL_DIV_MASK (0xf << 8) 326*69d88a00SPaul Walmsley #define OMAP24XX_54M_SOURCE_SHIFT 5 327*69d88a00SPaul Walmsley #define OMAP24XX_54M_SOURCE (1 << 5) 328*69d88a00SPaul Walmsley #define OMAP2430_96M_SOURCE_SHIFT 4 329*69d88a00SPaul Walmsley #define OMAP2430_96M_SOURCE (1 << 4) 330*69d88a00SPaul Walmsley #define OMAP24XX_48M_SOURCE_SHIFT 3 331*69d88a00SPaul Walmsley #define OMAP24XX_48M_SOURCE (1 << 3) 332*69d88a00SPaul Walmsley #define OMAP2430_ALTCLK_SOURCE_SHIFT 0 333*69d88a00SPaul Walmsley #define OMAP2430_ALTCLK_SOURCE_MASK (0x7 << 0) 334*69d88a00SPaul Walmsley 335*69d88a00SPaul Walmsley /* CM_CLKSEL2_PLL */ 336*69d88a00SPaul Walmsley #define OMAP24XX_CORE_CLK_SRC_SHIFT 0 337*69d88a00SPaul Walmsley #define OMAP24XX_CORE_CLK_SRC_MASK (0x3 << 0) 338*69d88a00SPaul Walmsley 339*69d88a00SPaul Walmsley /* CM_FCLKEN_DSP */ 340*69d88a00SPaul Walmsley #define OMAP2420_EN_IVA_COP_SHIFT 10 341*69d88a00SPaul Walmsley #define OMAP2420_EN_IVA_COP (1 << 10) 342*69d88a00SPaul Walmsley #define OMAP2420_EN_IVA_MPU_SHIFT 8 343*69d88a00SPaul Walmsley #define OMAP2420_EN_IVA_MPU (1 << 8) 344*69d88a00SPaul Walmsley #define OMAP24XX_CM_FCLKEN_DSP_EN_DSP_SHIFT 0 345*69d88a00SPaul Walmsley #define OMAP24XX_CM_FCLKEN_DSP_EN_DSP (1 << 0) 346*69d88a00SPaul Walmsley 347*69d88a00SPaul Walmsley /* CM_ICLKEN_DSP */ 348*69d88a00SPaul Walmsley #define OMAP2420_EN_DSP_IPI_SHIFT 1 349*69d88a00SPaul Walmsley #define OMAP2420_EN_DSP_IPI (1 << 1) 350*69d88a00SPaul Walmsley 351*69d88a00SPaul Walmsley /* CM_IDLEST_DSP */ 352*69d88a00SPaul Walmsley #define OMAP2420_ST_IVA (1 << 8) 353*69d88a00SPaul Walmsley #define OMAP2420_ST_IPI (1 << 1) 354*69d88a00SPaul Walmsley #define OMAP24XX_ST_DSP (1 << 0) 355*69d88a00SPaul Walmsley 356*69d88a00SPaul Walmsley /* CM_AUTOIDLE_DSP */ 357*69d88a00SPaul Walmsley #define OMAP2420_AUTO_DSP_IPI (1 << 1) 358*69d88a00SPaul Walmsley 359*69d88a00SPaul Walmsley /* CM_CLKSEL_DSP */ 360*69d88a00SPaul Walmsley #define OMAP2420_SYNC_IVA (1 << 13) 361*69d88a00SPaul Walmsley #define OMAP2420_CLKSEL_IVA_SHIFT 8 362*69d88a00SPaul Walmsley #define OMAP2420_CLKSEL_IVA_MASK (0x1f << 8) 363*69d88a00SPaul Walmsley #define OMAP24XX_SYNC_DSP (1 << 7) 364*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_DSP_IF_SHIFT 5 365*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_DSP_IF_MASK (0x3 << 5) 366*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_DSP_SHIFT 0 367*69d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_DSP_MASK (0x1f << 0) 368*69d88a00SPaul Walmsley 369*69d88a00SPaul Walmsley /* CM_CLKSTCTRL_DSP */ 370*69d88a00SPaul Walmsley #define OMAP2420_AUTOSTATE_IVA (1 << 8) 371*69d88a00SPaul Walmsley #define OMAP24XX_AUTOSTATE_DSP (1 << 0) 372*69d88a00SPaul Walmsley 373*69d88a00SPaul Walmsley /* CM_FCLKEN_MDM */ 374*69d88a00SPaul Walmsley /* 2430 only */ 375*69d88a00SPaul Walmsley #define OMAP2430_EN_OSC_SHIFT 1 376*69d88a00SPaul Walmsley #define OMAP2430_EN_OSC (1 << 1) 377*69d88a00SPaul Walmsley 378*69d88a00SPaul Walmsley /* CM_ICLKEN_MDM */ 379*69d88a00SPaul Walmsley /* 2430 only */ 380*69d88a00SPaul Walmsley #define OMAP2430_CM_ICLKEN_MDM_EN_MDM_SHIFT 0 381*69d88a00SPaul Walmsley #define OMAP2430_CM_ICLKEN_MDM_EN_MDM (1 << 0) 382*69d88a00SPaul Walmsley 383*69d88a00SPaul Walmsley /* CM_IDLEST_MDM specific bits */ 384*69d88a00SPaul Walmsley /* 2430 only */ 385*69d88a00SPaul Walmsley 386*69d88a00SPaul Walmsley /* CM_AUTOIDLE_MDM */ 387*69d88a00SPaul Walmsley /* 2430 only */ 388*69d88a00SPaul Walmsley #define OMAP2430_AUTO_OSC (1 << 1) 389*69d88a00SPaul Walmsley #define OMAP2430_AUTO_MDM (1 << 0) 390*69d88a00SPaul Walmsley 391*69d88a00SPaul Walmsley /* CM_CLKSEL_MDM */ 392*69d88a00SPaul Walmsley /* 2430 only */ 393*69d88a00SPaul Walmsley #define OMAP2430_SYNC_MDM (1 << 4) 394*69d88a00SPaul Walmsley #define OMAP2430_CLKSEL_MDM_SHIFT 0 395*69d88a00SPaul Walmsley #define OMAP2430_CLKSEL_MDM_MASK (0xf << 0) 396*69d88a00SPaul Walmsley 397*69d88a00SPaul Walmsley /* CM_CLKSTCTRL_MDM */ 398*69d88a00SPaul Walmsley /* 2430 only */ 399*69d88a00SPaul Walmsley #define OMAP2430_AUTOSTATE_MDM (1 << 0) 400*69d88a00SPaul Walmsley 401*69d88a00SPaul Walmsley #endif 402