169d88a00SPaul Walmsley #ifndef __ARCH_ARM_MACH_OMAP2_CM_REGBITS_24XX_H 269d88a00SPaul Walmsley #define __ARCH_ARM_MACH_OMAP2_CM_REGBITS_24XX_H 369d88a00SPaul Walmsley 469d88a00SPaul Walmsley /* 569d88a00SPaul Walmsley * OMAP24XX Clock Management register bits 669d88a00SPaul Walmsley * 769d88a00SPaul Walmsley * Copyright (C) 2007 Texas Instruments, Inc. 869d88a00SPaul Walmsley * Copyright (C) 2007 Nokia Corporation 969d88a00SPaul Walmsley * 1069d88a00SPaul Walmsley * Written by Paul Walmsley 1169d88a00SPaul Walmsley * 1269d88a00SPaul Walmsley * This program is free software; you can redistribute it and/or modify 1369d88a00SPaul Walmsley * it under the terms of the GNU General Public License version 2 as 1469d88a00SPaul Walmsley * published by the Free Software Foundation. 1569d88a00SPaul Walmsley */ 1669d88a00SPaul Walmsley 1769d88a00SPaul Walmsley /* Bits shared between registers */ 1869d88a00SPaul Walmsley 1969d88a00SPaul Walmsley /* CM_FCLKEN1_CORE and CM_ICLKEN1_CORE shared bits */ 2069d88a00SPaul Walmsley #define OMAP24XX_EN_CAM_SHIFT 31 21f38ca10aSPaul Walmsley #define OMAP24XX_EN_CAM_MASK (1 << 31) 2269d88a00SPaul Walmsley #define OMAP24XX_EN_WDT4_SHIFT 29 23f38ca10aSPaul Walmsley #define OMAP24XX_EN_WDT4_MASK (1 << 29) 2469d88a00SPaul Walmsley #define OMAP2420_EN_WDT3_SHIFT 28 25f38ca10aSPaul Walmsley #define OMAP2420_EN_WDT3_MASK (1 << 28) 2669d88a00SPaul Walmsley #define OMAP24XX_EN_MSPRO_SHIFT 27 27f38ca10aSPaul Walmsley #define OMAP24XX_EN_MSPRO_MASK (1 << 27) 2869d88a00SPaul Walmsley #define OMAP24XX_EN_FAC_SHIFT 25 29f38ca10aSPaul Walmsley #define OMAP24XX_EN_FAC_MASK (1 << 25) 3069d88a00SPaul Walmsley #define OMAP2420_EN_EAC_SHIFT 24 31f38ca10aSPaul Walmsley #define OMAP2420_EN_EAC_MASK (1 << 24) 3269d88a00SPaul Walmsley #define OMAP24XX_EN_HDQ_SHIFT 23 33f38ca10aSPaul Walmsley #define OMAP24XX_EN_HDQ_MASK (1 << 23) 3469d88a00SPaul Walmsley #define OMAP2420_EN_I2C2_SHIFT 20 35f38ca10aSPaul Walmsley #define OMAP2420_EN_I2C2_MASK (1 << 20) 3669d88a00SPaul Walmsley #define OMAP2420_EN_I2C1_SHIFT 19 37f38ca10aSPaul Walmsley #define OMAP2420_EN_I2C1_MASK (1 << 19) 3869d88a00SPaul Walmsley 3969d88a00SPaul Walmsley /* CM_FCLKEN2_CORE and CM_ICLKEN2_CORE shared bits */ 4069d88a00SPaul Walmsley #define OMAP2430_EN_MCBSP5_SHIFT 5 41f38ca10aSPaul Walmsley #define OMAP2430_EN_MCBSP5_MASK (1 << 5) 4269d88a00SPaul Walmsley #define OMAP2430_EN_MCBSP4_SHIFT 4 43f38ca10aSPaul Walmsley #define OMAP2430_EN_MCBSP4_MASK (1 << 4) 4469d88a00SPaul Walmsley #define OMAP2430_EN_MCBSP3_SHIFT 3 45f38ca10aSPaul Walmsley #define OMAP2430_EN_MCBSP3_MASK (1 << 3) 4669d88a00SPaul Walmsley #define OMAP24XX_EN_SSI_SHIFT 1 47f38ca10aSPaul Walmsley #define OMAP24XX_EN_SSI_MASK (1 << 1) 4869d88a00SPaul Walmsley 4969d88a00SPaul Walmsley /* CM_FCLKEN_WKUP and CM_ICLKEN_WKUP shared bits */ 5069d88a00SPaul Walmsley #define OMAP24XX_EN_MPU_WDT_SHIFT 3 51f38ca10aSPaul Walmsley #define OMAP24XX_EN_MPU_WDT_MASK (1 << 3) 5269d88a00SPaul Walmsley 5369d88a00SPaul Walmsley /* Bits specific to each register */ 5469d88a00SPaul Walmsley 5569d88a00SPaul Walmsley /* CM_IDLEST_MPU */ 5669d88a00SPaul Walmsley /* 2430 only */ 57f38ca10aSPaul Walmsley #define OMAP2430_ST_MPU_MASK (1 << 0) 5869d88a00SPaul Walmsley 5969d88a00SPaul Walmsley /* CM_CLKSEL_MPU */ 6069d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_MPU_SHIFT 0 6169d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_MPU_MASK (0x1f << 0) 6269d88a00SPaul Walmsley 6369d88a00SPaul Walmsley /* CM_CLKSTCTRL_MPU */ 64801954d3SPaul Walmsley #define OMAP24XX_AUTOSTATE_MPU_SHIFT 0 65801954d3SPaul Walmsley #define OMAP24XX_AUTOSTATE_MPU_MASK (1 << 0) 6669d88a00SPaul Walmsley 6769d88a00SPaul Walmsley /* CM_FCLKEN1_CORE specific bits*/ 6869d88a00SPaul Walmsley #define OMAP24XX_EN_TV_SHIFT 2 69f38ca10aSPaul Walmsley #define OMAP24XX_EN_TV_MASK (1 << 2) 7069d88a00SPaul Walmsley #define OMAP24XX_EN_DSS2_SHIFT 1 71f38ca10aSPaul Walmsley #define OMAP24XX_EN_DSS2_MASK (1 << 1) 7269d88a00SPaul Walmsley #define OMAP24XX_EN_DSS1_SHIFT 0 73f38ca10aSPaul Walmsley #define OMAP24XX_EN_DSS1_MASK (1 << 0) 7469d88a00SPaul Walmsley 7569d88a00SPaul Walmsley /* CM_FCLKEN2_CORE specific bits */ 7669d88a00SPaul Walmsley #define OMAP2430_EN_I2CHS2_SHIFT 20 77f38ca10aSPaul Walmsley #define OMAP2430_EN_I2CHS2_MASK (1 << 20) 7869d88a00SPaul Walmsley #define OMAP2430_EN_I2CHS1_SHIFT 19 79f38ca10aSPaul Walmsley #define OMAP2430_EN_I2CHS1_MASK (1 << 19) 8069d88a00SPaul Walmsley #define OMAP2430_EN_MMCHSDB2_SHIFT 17 81f38ca10aSPaul Walmsley #define OMAP2430_EN_MMCHSDB2_MASK (1 << 17) 8269d88a00SPaul Walmsley #define OMAP2430_EN_MMCHSDB1_SHIFT 16 83f38ca10aSPaul Walmsley #define OMAP2430_EN_MMCHSDB1_MASK (1 << 16) 8469d88a00SPaul Walmsley 8569d88a00SPaul Walmsley /* CM_ICLKEN1_CORE specific bits */ 8669d88a00SPaul Walmsley #define OMAP24XX_EN_MAILBOXES_SHIFT 30 87f38ca10aSPaul Walmsley #define OMAP24XX_EN_MAILBOXES_MASK (1 << 30) 8869d88a00SPaul Walmsley #define OMAP24XX_EN_DSS_SHIFT 0 89f38ca10aSPaul Walmsley #define OMAP24XX_EN_DSS_MASK (1 << 0) 9069d88a00SPaul Walmsley 9169d88a00SPaul Walmsley /* CM_ICLKEN2_CORE specific bits */ 9269d88a00SPaul Walmsley 9369d88a00SPaul Walmsley /* CM_ICLKEN3_CORE */ 9469d88a00SPaul Walmsley /* 2430 only */ 9569d88a00SPaul Walmsley #define OMAP2430_EN_SDRC_SHIFT 2 96f38ca10aSPaul Walmsley #define OMAP2430_EN_SDRC_MASK (1 << 2) 9769d88a00SPaul Walmsley 9869d88a00SPaul Walmsley /* CM_ICLKEN4_CORE */ 9969d88a00SPaul Walmsley #define OMAP24XX_EN_PKA_SHIFT 4 100f38ca10aSPaul Walmsley #define OMAP24XX_EN_PKA_MASK (1 << 4) 10169d88a00SPaul Walmsley #define OMAP24XX_EN_AES_SHIFT 3 102f38ca10aSPaul Walmsley #define OMAP24XX_EN_AES_MASK (1 << 3) 10369d88a00SPaul Walmsley #define OMAP24XX_EN_RNG_SHIFT 2 104f38ca10aSPaul Walmsley #define OMAP24XX_EN_RNG_MASK (1 << 2) 10569d88a00SPaul Walmsley #define OMAP24XX_EN_SHA_SHIFT 1 106f38ca10aSPaul Walmsley #define OMAP24XX_EN_SHA_MASK (1 << 1) 10769d88a00SPaul Walmsley #define OMAP24XX_EN_DES_SHIFT 0 108f38ca10aSPaul Walmsley #define OMAP24XX_EN_DES_MASK (1 << 0) 10969d88a00SPaul Walmsley 11069d88a00SPaul Walmsley /* CM_IDLEST1_CORE specific bits */ 111da0747d4SPaul Walmsley #define OMAP24XX_ST_MAILBOXES_SHIFT 30 112da0747d4SPaul Walmsley #define OMAP24XX_ST_MAILBOXES_MASK (1 << 30) 113da0747d4SPaul Walmsley #define OMAP24XX_ST_WDT4_SHIFT 29 114da0747d4SPaul Walmsley #define OMAP24XX_ST_WDT4_MASK (1 << 29) 115da0747d4SPaul Walmsley #define OMAP2420_ST_WDT3_SHIFT 28 116da0747d4SPaul Walmsley #define OMAP2420_ST_WDT3_MASK (1 << 28) 117da0747d4SPaul Walmsley #define OMAP24XX_ST_MSPRO_SHIFT 27 118da0747d4SPaul Walmsley #define OMAP24XX_ST_MSPRO_MASK (1 << 27) 119da0747d4SPaul Walmsley #define OMAP24XX_ST_FAC_SHIFT 25 120da0747d4SPaul Walmsley #define OMAP24XX_ST_FAC_MASK (1 << 25) 121da0747d4SPaul Walmsley #define OMAP2420_ST_EAC_SHIFT 24 122da0747d4SPaul Walmsley #define OMAP2420_ST_EAC_MASK (1 << 24) 123da0747d4SPaul Walmsley #define OMAP24XX_ST_HDQ_SHIFT 23 124da0747d4SPaul Walmsley #define OMAP24XX_ST_HDQ_MASK (1 << 23) 125da0747d4SPaul Walmsley #define OMAP2420_ST_I2C2_SHIFT 20 126da0747d4SPaul Walmsley #define OMAP2420_ST_I2C2_MASK (1 << 20) 1272004290fSPaul Walmsley #define OMAP2430_ST_I2CHS1_SHIFT 19 1282004290fSPaul Walmsley #define OMAP2430_ST_I2CHS1_MASK (1 << 19) 129da0747d4SPaul Walmsley #define OMAP2420_ST_I2C1_SHIFT 19 130da0747d4SPaul Walmsley #define OMAP2420_ST_I2C1_MASK (1 << 19) 1312004290fSPaul Walmsley #define OMAP2430_ST_I2CHS2_SHIFT 20 1322004290fSPaul Walmsley #define OMAP2430_ST_I2CHS2_MASK (1 << 20) 133da0747d4SPaul Walmsley #define OMAP24XX_ST_MCBSP2_SHIFT 16 134da0747d4SPaul Walmsley #define OMAP24XX_ST_MCBSP2_MASK (1 << 16) 135da0747d4SPaul Walmsley #define OMAP24XX_ST_MCBSP1_SHIFT 15 136da0747d4SPaul Walmsley #define OMAP24XX_ST_MCBSP1_MASK (1 << 15) 137da0747d4SPaul Walmsley #define OMAP24XX_ST_DSS_SHIFT 0 138da0747d4SPaul Walmsley #define OMAP24XX_ST_DSS_MASK (1 << 0) 13969d88a00SPaul Walmsley 14069d88a00SPaul Walmsley /* CM_IDLEST2_CORE */ 141da0747d4SPaul Walmsley #define OMAP2430_ST_MCBSP5_SHIFT 5 142da0747d4SPaul Walmsley #define OMAP2430_ST_MCBSP5_MASK (1 << 5) 143da0747d4SPaul Walmsley #define OMAP2430_ST_MCBSP4_SHIFT 4 144da0747d4SPaul Walmsley #define OMAP2430_ST_MCBSP4_MASK (1 << 4) 145da0747d4SPaul Walmsley #define OMAP2430_ST_MCBSP3_SHIFT 3 146da0747d4SPaul Walmsley #define OMAP2430_ST_MCBSP3_MASK (1 << 3) 147da0747d4SPaul Walmsley #define OMAP24XX_ST_SSI_SHIFT 1 148da0747d4SPaul Walmsley #define OMAP24XX_ST_SSI_MASK (1 << 1) 14969d88a00SPaul Walmsley 15069d88a00SPaul Walmsley /* CM_IDLEST3_CORE */ 15169d88a00SPaul Walmsley /* 2430 only */ 152da0747d4SPaul Walmsley #define OMAP2430_ST_SDRC_MASK (1 << 2) 15369d88a00SPaul Walmsley 15469d88a00SPaul Walmsley /* CM_IDLEST4_CORE */ 155da0747d4SPaul Walmsley #define OMAP24XX_ST_PKA_SHIFT 4 156da0747d4SPaul Walmsley #define OMAP24XX_ST_PKA_MASK (1 << 4) 157da0747d4SPaul Walmsley #define OMAP24XX_ST_AES_SHIFT 3 158da0747d4SPaul Walmsley #define OMAP24XX_ST_AES_MASK (1 << 3) 159da0747d4SPaul Walmsley #define OMAP24XX_ST_RNG_SHIFT 2 160da0747d4SPaul Walmsley #define OMAP24XX_ST_RNG_MASK (1 << 2) 161da0747d4SPaul Walmsley #define OMAP24XX_ST_SHA_SHIFT 1 162da0747d4SPaul Walmsley #define OMAP24XX_ST_SHA_MASK (1 << 1) 163da0747d4SPaul Walmsley #define OMAP24XX_ST_DES_SHIFT 0 164da0747d4SPaul Walmsley #define OMAP24XX_ST_DES_MASK (1 << 0) 16569d88a00SPaul Walmsley 16669d88a00SPaul Walmsley /* CM_AUTOIDLE1_CORE */ 167f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_CAM_MASK (1 << 31) 168f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_MAILBOXES_MASK (1 << 30) 169f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_WDT4_MASK (1 << 29) 170f38ca10aSPaul Walmsley #define OMAP2420_AUTO_WDT3_MASK (1 << 28) 171f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_MSPRO_MASK (1 << 27) 172f38ca10aSPaul Walmsley #define OMAP2420_AUTO_MMC_MASK (1 << 26) 173f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_FAC_MASK (1 << 25) 174f38ca10aSPaul Walmsley #define OMAP2420_AUTO_EAC_MASK (1 << 24) 175f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_HDQ_MASK (1 << 23) 176f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_UART2_MASK (1 << 22) 177f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_UART1_MASK (1 << 21) 178f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_I2C2_MASK (1 << 20) 179f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_I2C1_MASK (1 << 19) 180f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_MCSPI2_MASK (1 << 18) 181f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_MCSPI1_MASK (1 << 17) 182f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_MCBSP2_MASK (1 << 16) 183f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_MCBSP1_MASK (1 << 15) 184f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_GPT12_MASK (1 << 14) 185f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_GPT11_MASK (1 << 13) 186f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_GPT10_MASK (1 << 12) 187f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_GPT9_MASK (1 << 11) 188f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_GPT8_MASK (1 << 10) 189f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_GPT7_MASK (1 << 9) 190f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_GPT6_MASK (1 << 8) 191f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_GPT5_MASK (1 << 7) 192f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_GPT4_MASK (1 << 6) 193f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_GPT3_MASK (1 << 5) 194f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_GPT2_MASK (1 << 4) 195f38ca10aSPaul Walmsley #define OMAP2420_AUTO_VLYNQ_MASK (1 << 3) 196f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_DSS_MASK (1 << 0) 19769d88a00SPaul Walmsley 19869d88a00SPaul Walmsley /* CM_AUTOIDLE2_CORE */ 199f38ca10aSPaul Walmsley #define OMAP2430_AUTO_MDM_INTC_MASK (1 << 11) 200f38ca10aSPaul Walmsley #define OMAP2430_AUTO_GPIO5_MASK (1 << 10) 201f38ca10aSPaul Walmsley #define OMAP2430_AUTO_MCSPI3_MASK (1 << 9) 202f38ca10aSPaul Walmsley #define OMAP2430_AUTO_MMCHS2_MASK (1 << 8) 203f38ca10aSPaul Walmsley #define OMAP2430_AUTO_MMCHS1_MASK (1 << 7) 204f38ca10aSPaul Walmsley #define OMAP2430_AUTO_USBHS_MASK (1 << 6) 205f38ca10aSPaul Walmsley #define OMAP2430_AUTO_MCBSP5_MASK (1 << 5) 206f38ca10aSPaul Walmsley #define OMAP2430_AUTO_MCBSP4_MASK (1 << 4) 207f38ca10aSPaul Walmsley #define OMAP2430_AUTO_MCBSP3_MASK (1 << 3) 208f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_UART3_MASK (1 << 2) 209f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_SSI_MASK (1 << 1) 210f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_USB_MASK (1 << 0) 21169d88a00SPaul Walmsley 21269d88a00SPaul Walmsley /* CM_AUTOIDLE3_CORE */ 213f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_SDRC_MASK (1 << 2) 214f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_GPMC_MASK (1 << 1) 215f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_SDMA_MASK (1 << 0) 21669d88a00SPaul Walmsley 21769d88a00SPaul Walmsley /* CM_AUTOIDLE4_CORE */ 218f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_PKA_MASK (1 << 4) 219f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_AES_MASK (1 << 3) 220f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_RNG_MASK (1 << 2) 221f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_SHA_MASK (1 << 1) 222f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_DES_MASK (1 << 0) 22369d88a00SPaul Walmsley 22469d88a00SPaul Walmsley /* CM_CLKSEL1_CORE */ 22569d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_USB_SHIFT 25 22669d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_USB_MASK (0x7 << 25) 22769d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_SSI_SHIFT 20 22869d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_SSI_MASK (0x1f << 20) 22969d88a00SPaul Walmsley #define OMAP2420_CLKSEL_VLYNQ_SHIFT 15 23069d88a00SPaul Walmsley #define OMAP2420_CLKSEL_VLYNQ_MASK (0x1f << 15) 23169d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_DSS2_SHIFT 13 23269d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_DSS2_MASK (0x1 << 13) 23369d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_DSS1_SHIFT 8 23469d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_DSS1_MASK (0x1f << 8) 23569d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_L4_SHIFT 5 23669d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_L4_MASK (0x3 << 5) 23769d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_L3_SHIFT 0 23869d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_L3_MASK (0x1f << 0) 23969d88a00SPaul Walmsley 24069d88a00SPaul Walmsley /* CM_CLKSEL2_CORE */ 24169d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT12_SHIFT 22 24269d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT12_MASK (0x3 << 22) 24369d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT11_SHIFT 20 24469d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT11_MASK (0x3 << 20) 24569d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT10_SHIFT 18 24669d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT10_MASK (0x3 << 18) 24769d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT9_SHIFT 16 24869d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT9_MASK (0x3 << 16) 24969d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT8_SHIFT 14 25069d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT8_MASK (0x3 << 14) 25169d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT7_SHIFT 12 25269d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT7_MASK (0x3 << 12) 25369d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT6_SHIFT 10 25469d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT6_MASK (0x3 << 10) 25569d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT5_SHIFT 8 25669d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT5_MASK (0x3 << 8) 25769d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT4_SHIFT 6 25869d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT4_MASK (0x3 << 6) 25969d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT3_SHIFT 4 26069d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT3_MASK (0x3 << 4) 26169d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT2_SHIFT 2 26269d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT2_MASK (0x3 << 2) 26369d88a00SPaul Walmsley 26469d88a00SPaul Walmsley /* CM_CLKSTCTRL_CORE */ 265801954d3SPaul Walmsley #define OMAP24XX_AUTOSTATE_DSS_SHIFT 2 266801954d3SPaul Walmsley #define OMAP24XX_AUTOSTATE_DSS_MASK (1 << 2) 267801954d3SPaul Walmsley #define OMAP24XX_AUTOSTATE_L4_SHIFT 1 268801954d3SPaul Walmsley #define OMAP24XX_AUTOSTATE_L4_MASK (1 << 1) 269801954d3SPaul Walmsley #define OMAP24XX_AUTOSTATE_L3_SHIFT 0 270801954d3SPaul Walmsley #define OMAP24XX_AUTOSTATE_L3_MASK (1 << 0) 27169d88a00SPaul Walmsley 27269d88a00SPaul Walmsley /* CM_FCLKEN_GFX */ 27369d88a00SPaul Walmsley #define OMAP24XX_EN_3D_SHIFT 2 274f38ca10aSPaul Walmsley #define OMAP24XX_EN_3D_MASK (1 << 2) 27569d88a00SPaul Walmsley #define OMAP24XX_EN_2D_SHIFT 1 276f38ca10aSPaul Walmsley #define OMAP24XX_EN_2D_MASK (1 << 1) 27769d88a00SPaul Walmsley 27869d88a00SPaul Walmsley /* CM_ICLKEN_GFX specific bits */ 27969d88a00SPaul Walmsley 28069d88a00SPaul Walmsley /* CM_IDLEST_GFX specific bits */ 28169d88a00SPaul Walmsley 28269d88a00SPaul Walmsley /* CM_CLKSEL_GFX specific bits */ 28369d88a00SPaul Walmsley 28469d88a00SPaul Walmsley /* CM_CLKSTCTRL_GFX */ 285801954d3SPaul Walmsley #define OMAP24XX_AUTOSTATE_GFX_SHIFT 0 286801954d3SPaul Walmsley #define OMAP24XX_AUTOSTATE_GFX_MASK (1 << 0) 28769d88a00SPaul Walmsley 28869d88a00SPaul Walmsley /* CM_FCLKEN_WKUP specific bits */ 28969d88a00SPaul Walmsley 29069d88a00SPaul Walmsley /* CM_ICLKEN_WKUP specific bits */ 29169d88a00SPaul Walmsley #define OMAP2430_EN_ICR_SHIFT 6 292f38ca10aSPaul Walmsley #define OMAP2430_EN_ICR_MASK (1 << 6) 29369d88a00SPaul Walmsley #define OMAP24XX_EN_OMAPCTRL_SHIFT 5 294f38ca10aSPaul Walmsley #define OMAP24XX_EN_OMAPCTRL_MASK (1 << 5) 29569d88a00SPaul Walmsley #define OMAP24XX_EN_WDT1_SHIFT 4 296f38ca10aSPaul Walmsley #define OMAP24XX_EN_WDT1_MASK (1 << 4) 29769d88a00SPaul Walmsley #define OMAP24XX_EN_32KSYNC_SHIFT 1 298f38ca10aSPaul Walmsley #define OMAP24XX_EN_32KSYNC_MASK (1 << 1) 29969d88a00SPaul Walmsley 30069d88a00SPaul Walmsley /* CM_IDLEST_WKUP specific bits */ 301da0747d4SPaul Walmsley #define OMAP2430_ST_ICR_SHIFT 6 302da0747d4SPaul Walmsley #define OMAP2430_ST_ICR_MASK (1 << 6) 303da0747d4SPaul Walmsley #define OMAP24XX_ST_OMAPCTRL_SHIFT 5 304da0747d4SPaul Walmsley #define OMAP24XX_ST_OMAPCTRL_MASK (1 << 5) 305da0747d4SPaul Walmsley #define OMAP24XX_ST_WDT1_SHIFT 4 306da0747d4SPaul Walmsley #define OMAP24XX_ST_WDT1_MASK (1 << 4) 307da0747d4SPaul Walmsley #define OMAP24XX_ST_MPU_WDT_SHIFT 3 308da0747d4SPaul Walmsley #define OMAP24XX_ST_MPU_WDT_MASK (1 << 3) 309da0747d4SPaul Walmsley #define OMAP24XX_ST_32KSYNC_SHIFT 1 310da0747d4SPaul Walmsley #define OMAP24XX_ST_32KSYNC_MASK (1 << 1) 31169d88a00SPaul Walmsley 31269d88a00SPaul Walmsley /* CM_AUTOIDLE_WKUP */ 313f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_OMAPCTRL_MASK (1 << 5) 314f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_WDT1_MASK (1 << 4) 315f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_MPU_WDT_MASK (1 << 3) 316f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_GPIOS_MASK (1 << 2) 317f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_32KSYNC_MASK (1 << 1) 318f38ca10aSPaul Walmsley #define OMAP24XX_AUTO_GPT1_MASK (1 << 0) 31969d88a00SPaul Walmsley 32069d88a00SPaul Walmsley /* CM_CLKSEL_WKUP */ 32169d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT1_SHIFT 0 32269d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_GPT1_MASK (0x3 << 0) 32369d88a00SPaul Walmsley 32469d88a00SPaul Walmsley /* CM_CLKEN_PLL */ 32569d88a00SPaul Walmsley #define OMAP24XX_EN_54M_PLL_SHIFT 6 32669d88a00SPaul Walmsley #define OMAP24XX_EN_54M_PLL_MASK (0x3 << 6) 32769d88a00SPaul Walmsley #define OMAP24XX_EN_96M_PLL_SHIFT 2 32869d88a00SPaul Walmsley #define OMAP24XX_EN_96M_PLL_MASK (0x3 << 2) 32969d88a00SPaul Walmsley #define OMAP24XX_EN_DPLL_SHIFT 0 33069d88a00SPaul Walmsley #define OMAP24XX_EN_DPLL_MASK (0x3 << 0) 33169d88a00SPaul Walmsley 33269d88a00SPaul Walmsley /* CM_IDLEST_CKGEN */ 333f38ca10aSPaul Walmsley #define OMAP24XX_ST_54M_APLL_MASK (1 << 9) 334f38ca10aSPaul Walmsley #define OMAP24XX_ST_96M_APLL_MASK (1 << 8) 335f38ca10aSPaul Walmsley #define OMAP24XX_ST_54M_CLK_MASK (1 << 6) 336f38ca10aSPaul Walmsley #define OMAP24XX_ST_12M_CLK_MASK (1 << 5) 337f38ca10aSPaul Walmsley #define OMAP24XX_ST_48M_CLK_MASK (1 << 4) 338f38ca10aSPaul Walmsley #define OMAP24XX_ST_96M_CLK_MASK (1 << 2) 33969d88a00SPaul Walmsley #define OMAP24XX_ST_CORE_CLK_SHIFT 0 34069d88a00SPaul Walmsley #define OMAP24XX_ST_CORE_CLK_MASK (0x3 << 0) 34169d88a00SPaul Walmsley 34269d88a00SPaul Walmsley /* CM_AUTOIDLE_PLL */ 34369d88a00SPaul Walmsley #define OMAP24XX_AUTO_54M_SHIFT 6 34469d88a00SPaul Walmsley #define OMAP24XX_AUTO_54M_MASK (0x3 << 6) 34569d88a00SPaul Walmsley #define OMAP24XX_AUTO_96M_SHIFT 2 34669d88a00SPaul Walmsley #define OMAP24XX_AUTO_96M_MASK (0x3 << 2) 34769d88a00SPaul Walmsley #define OMAP24XX_AUTO_DPLL_SHIFT 0 34869d88a00SPaul Walmsley #define OMAP24XX_AUTO_DPLL_MASK (0x3 << 0) 34969d88a00SPaul Walmsley 35069d88a00SPaul Walmsley /* CM_CLKSEL1_PLL */ 35169d88a00SPaul Walmsley #define OMAP2430_MAXDPLLFASTLOCK_SHIFT 28 35269d88a00SPaul Walmsley #define OMAP2430_MAXDPLLFASTLOCK_MASK (0x7 << 28) 35369d88a00SPaul Walmsley #define OMAP24XX_APLLS_CLKIN_SHIFT 23 35469d88a00SPaul Walmsley #define OMAP24XX_APLLS_CLKIN_MASK (0x7 << 23) 35569d88a00SPaul Walmsley #define OMAP24XX_DPLL_MULT_SHIFT 12 35669d88a00SPaul Walmsley #define OMAP24XX_DPLL_MULT_MASK (0x3ff << 12) 35769d88a00SPaul Walmsley #define OMAP24XX_DPLL_DIV_SHIFT 8 35869d88a00SPaul Walmsley #define OMAP24XX_DPLL_DIV_MASK (0xf << 8) 35969d88a00SPaul Walmsley #define OMAP24XX_54M_SOURCE_SHIFT 5 360f38ca10aSPaul Walmsley #define OMAP24XX_54M_SOURCE_MASK (1 << 5) 36169d88a00SPaul Walmsley #define OMAP2430_96M_SOURCE_SHIFT 4 362f38ca10aSPaul Walmsley #define OMAP2430_96M_SOURCE_MASK (1 << 4) 36369d88a00SPaul Walmsley #define OMAP24XX_48M_SOURCE_SHIFT 3 364f38ca10aSPaul Walmsley #define OMAP24XX_48M_SOURCE_MASK (1 << 3) 36569d88a00SPaul Walmsley #define OMAP2430_ALTCLK_SOURCE_SHIFT 0 36669d88a00SPaul Walmsley #define OMAP2430_ALTCLK_SOURCE_MASK (0x7 << 0) 36769d88a00SPaul Walmsley 36869d88a00SPaul Walmsley /* CM_CLKSEL2_PLL */ 36969d88a00SPaul Walmsley #define OMAP24XX_CORE_CLK_SRC_SHIFT 0 37069d88a00SPaul Walmsley #define OMAP24XX_CORE_CLK_SRC_MASK (0x3 << 0) 37169d88a00SPaul Walmsley 37269d88a00SPaul Walmsley /* CM_FCLKEN_DSP */ 37369d88a00SPaul Walmsley #define OMAP2420_EN_IVA_COP_SHIFT 10 374f38ca10aSPaul Walmsley #define OMAP2420_EN_IVA_COP_MASK (1 << 10) 37569d88a00SPaul Walmsley #define OMAP2420_EN_IVA_MPU_SHIFT 8 376f38ca10aSPaul Walmsley #define OMAP2420_EN_IVA_MPU_MASK (1 << 8) 37769d88a00SPaul Walmsley #define OMAP24XX_CM_FCLKEN_DSP_EN_DSP_SHIFT 0 378f38ca10aSPaul Walmsley #define OMAP24XX_CM_FCLKEN_DSP_EN_DSP_MASK (1 << 0) 37969d88a00SPaul Walmsley 38069d88a00SPaul Walmsley /* CM_ICLKEN_DSP */ 38169d88a00SPaul Walmsley #define OMAP2420_EN_DSP_IPI_SHIFT 1 382f38ca10aSPaul Walmsley #define OMAP2420_EN_DSP_IPI_MASK (1 << 1) 38369d88a00SPaul Walmsley 38469d88a00SPaul Walmsley /* CM_IDLEST_DSP */ 385f38ca10aSPaul Walmsley #define OMAP2420_ST_IVA_MASK (1 << 8) 386f38ca10aSPaul Walmsley #define OMAP2420_ST_IPI_MASK (1 << 1) 387f38ca10aSPaul Walmsley #define OMAP24XX_ST_DSP_MASK (1 << 0) 38869d88a00SPaul Walmsley 38969d88a00SPaul Walmsley /* CM_AUTOIDLE_DSP */ 390f38ca10aSPaul Walmsley #define OMAP2420_AUTO_DSP_IPI_MASK (1 << 1) 39169d88a00SPaul Walmsley 39269d88a00SPaul Walmsley /* CM_CLKSEL_DSP */ 393f38ca10aSPaul Walmsley #define OMAP2420_SYNC_IVA_MASK (1 << 13) 39469d88a00SPaul Walmsley #define OMAP2420_CLKSEL_IVA_SHIFT 8 39569d88a00SPaul Walmsley #define OMAP2420_CLKSEL_IVA_MASK (0x1f << 8) 396f38ca10aSPaul Walmsley #define OMAP24XX_SYNC_DSP_MASK (1 << 7) 39769d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_DSP_IF_SHIFT 5 39869d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_DSP_IF_MASK (0x3 << 5) 39969d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_DSP_SHIFT 0 40069d88a00SPaul Walmsley #define OMAP24XX_CLKSEL_DSP_MASK (0x1f << 0) 40169d88a00SPaul Walmsley 40269d88a00SPaul Walmsley /* CM_CLKSTCTRL_DSP */ 403801954d3SPaul Walmsley #define OMAP2420_AUTOSTATE_IVA_SHIFT 8 404801954d3SPaul Walmsley #define OMAP2420_AUTOSTATE_IVA_MASK (1 << 8) 405801954d3SPaul Walmsley #define OMAP24XX_AUTOSTATE_DSP_SHIFT 0 406801954d3SPaul Walmsley #define OMAP24XX_AUTOSTATE_DSP_MASK (1 << 0) 40769d88a00SPaul Walmsley 40869d88a00SPaul Walmsley /* CM_FCLKEN_MDM */ 40969d88a00SPaul Walmsley /* 2430 only */ 41069d88a00SPaul Walmsley #define OMAP2430_EN_OSC_SHIFT 1 411f38ca10aSPaul Walmsley #define OMAP2430_EN_OSC_MASK (1 << 1) 41269d88a00SPaul Walmsley 41369d88a00SPaul Walmsley /* CM_ICLKEN_MDM */ 41469d88a00SPaul Walmsley /* 2430 only */ 41569d88a00SPaul Walmsley #define OMAP2430_CM_ICLKEN_MDM_EN_MDM_SHIFT 0 416f38ca10aSPaul Walmsley #define OMAP2430_CM_ICLKEN_MDM_EN_MDM_MASK (1 << 0) 41769d88a00SPaul Walmsley 41869d88a00SPaul Walmsley /* CM_IDLEST_MDM specific bits */ 41969d88a00SPaul Walmsley /* 2430 only */ 42069d88a00SPaul Walmsley 42169d88a00SPaul Walmsley /* CM_AUTOIDLE_MDM */ 42269d88a00SPaul Walmsley /* 2430 only */ 423f38ca10aSPaul Walmsley #define OMAP2430_AUTO_OSC_MASK (1 << 1) 424f38ca10aSPaul Walmsley #define OMAP2430_AUTO_MDM_MASK (1 << 0) 42569d88a00SPaul Walmsley 42669d88a00SPaul Walmsley /* CM_CLKSEL_MDM */ 42769d88a00SPaul Walmsley /* 2430 only */ 428f38ca10aSPaul Walmsley #define OMAP2430_SYNC_MDM_MASK (1 << 4) 42969d88a00SPaul Walmsley #define OMAP2430_CLKSEL_MDM_SHIFT 0 43069d88a00SPaul Walmsley #define OMAP2430_CLKSEL_MDM_MASK (0xf << 0) 43169d88a00SPaul Walmsley 43269d88a00SPaul Walmsley /* CM_CLKSTCTRL_MDM */ 43369d88a00SPaul Walmsley /* 2430 only */ 434801954d3SPaul Walmsley #define OMAP2430_AUTOSTATE_MDM_SHIFT 0 435801954d3SPaul Walmsley #define OMAP2430_AUTOSTATE_MDM_MASK (1 << 0) 43669d88a00SPaul Walmsley 437*55ae3507SPaul Walmsley /* OMAP24XX CM_CLKSTCTRL_*.AUTOSTATE_* register bit values */ 438*55ae3507SPaul Walmsley #define OMAP24XX_CLKSTCTRL_DISABLE_AUTO 0x0 439*55ae3507SPaul Walmsley #define OMAP24XX_CLKSTCTRL_ENABLE_AUTO 0x1 440*55ae3507SPaul Walmsley 441*55ae3507SPaul Walmsley 44269d88a00SPaul Walmsley #endif 443