blob: 59598ffd878333978b1ca2ed52a26fee3b0e7f72 [file] [log] [blame]
Tony Lindgrenc5957132008-03-18 14:53:17 +02001#ifndef __ARCH_ARM_MACH_OMAP2_CM_REGBITS_34XX_H
2#define __ARCH_ARM_MACH_OMAP2_CM_REGBITS_34XX_H
3
4/*
5 * OMAP3430 Clock Management register bits
6 *
7 * Copyright (C) 2007-2008 Texas Instruments, Inc.
8 * Copyright (C) 2007-2008 Nokia Corporation
9 *
10 * Written by Paul Walmsley
11 *
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License version 2 as
14 * published by the Free Software Foundation.
15 */
16
Tony Lindgrenc5957132008-03-18 14:53:17 +020017/* Bits shared between registers */
18
19/* CM_FCLKEN1_CORE and CM_ICLKEN1_CORE shared bits */
20#define OMAP3430ES2_EN_MMC3_MASK (1 << 30)
21#define OMAP3430ES2_EN_MMC3_SHIFT 30
Paul Walmsley2bc4ef72010-05-18 18:47:24 -060022#define OMAP3430_EN_MSPRO_MASK (1 << 23)
Tony Lindgrenc5957132008-03-18 14:53:17 +020023#define OMAP3430_EN_MSPRO_SHIFT 23
Paul Walmsley2bc4ef72010-05-18 18:47:24 -060024#define OMAP3430_EN_HDQ_MASK (1 << 22)
Tony Lindgrenc5957132008-03-18 14:53:17 +020025#define OMAP3430_EN_HDQ_SHIFT 22
Paul Walmsley2bc4ef72010-05-18 18:47:24 -060026#define OMAP3430ES1_EN_FSHOSTUSB_MASK (1 << 5)
Tony Lindgrenc5957132008-03-18 14:53:17 +020027#define OMAP3430ES1_EN_FSHOSTUSB_SHIFT 5
Paul Walmsley2bc4ef72010-05-18 18:47:24 -060028#define OMAP3430ES1_EN_D2D_MASK (1 << 3)
Tony Lindgrenc5957132008-03-18 14:53:17 +020029#define OMAP3430ES1_EN_D2D_SHIFT 3
Paul Walmsley2bc4ef72010-05-18 18:47:24 -060030#define OMAP3430_EN_SSI_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +020031#define OMAP3430_EN_SSI_SHIFT 0
32
33/* CM_FCLKEN3_CORE and CM_ICLKEN3_CORE shared bits */
34#define OMAP3430ES2_EN_USBTLL_SHIFT 2
35#define OMAP3430ES2_EN_USBTLL_MASK (1 << 2)
36
37/* CM_FCLKEN_WKUP and CM_ICLKEN_WKUP shared bits */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -060038#define OMAP3430_EN_WDT2_MASK (1 << 5)
Tony Lindgrenc5957132008-03-18 14:53:17 +020039#define OMAP3430_EN_WDT2_SHIFT 5
40
41/* CM_ICLKEN_CAM, CM_FCLKEN_CAM shared bits */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -060042#define OMAP3430_EN_CAM_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +020043#define OMAP3430_EN_CAM_SHIFT 0
44
45/* CM_FCLKEN_PER, CM_ICLKEN_PER shared bits */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -060046#define OMAP3430_EN_WDT3_MASK (1 << 12)
Tony Lindgrenc5957132008-03-18 14:53:17 +020047#define OMAP3430_EN_WDT3_SHIFT 12
48
49/* CM_CLKSEL2_EMU, CM_CLKSEL3_EMU shared bits */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -060050#define OMAP3430_OVERRIDE_ENABLE_MASK (1 << 19)
Tony Lindgrenc5957132008-03-18 14:53:17 +020051
52
53/* Bits specific to each register */
54
55/* CM_FCLKEN_IVA2 */
Kevin Hilmandfa6d6f2010-02-24 12:05:48 -070056#define OMAP3430_CM_FCLKEN_IVA2_EN_IVA2_MASK (1 << 0)
Hiroshi DOYU31c203d2008-04-01 10:11:22 +030057#define OMAP3430_CM_FCLKEN_IVA2_EN_IVA2_SHIFT 0
Tony Lindgrenc5957132008-03-18 14:53:17 +020058
59/* CM_CLKEN_PLL_IVA2 */
60#define OMAP3430_IVA2_DPLL_RAMPTIME_SHIFT 8
61#define OMAP3430_IVA2_DPLL_RAMPTIME_MASK (0x3 << 8)
62#define OMAP3430_IVA2_DPLL_FREQSEL_SHIFT 4
63#define OMAP3430_IVA2_DPLL_FREQSEL_MASK (0xf << 4)
64#define OMAP3430_EN_IVA2_DPLL_DRIFTGUARD_SHIFT 3
65#define OMAP3430_EN_IVA2_DPLL_DRIFTGUARD_MASK (1 << 3)
66#define OMAP3430_EN_IVA2_DPLL_SHIFT 0
67#define OMAP3430_EN_IVA2_DPLL_MASK (0x7 << 0)
68
69/* CM_IDLEST_IVA2 */
Tero Kristoed733612012-09-03 11:50:52 -060070#define OMAP3430_ST_IVA2_SHIFT 0
Paul Walmsley2bc4ef72010-05-18 18:47:24 -060071#define OMAP3430_ST_IVA2_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +020072
73/* CM_IDLEST_PLL_IVA2 */
Paul Walmsley542313c2008-07-03 12:24:45 +030074#define OMAP3430_ST_IVA2_CLK_SHIFT 0
75#define OMAP3430_ST_IVA2_CLK_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +020076
77/* CM_AUTOIDLE_PLL_IVA2 */
78#define OMAP3430_AUTO_IVA2_DPLL_SHIFT 0
79#define OMAP3430_AUTO_IVA2_DPLL_MASK (0x7 << 0)
80
81/* CM_CLKSEL1_PLL_IVA2 */
82#define OMAP3430_IVA2_CLK_SRC_SHIFT 19
Rajendra Nayak4e68f5a2012-05-07 23:55:21 -060083#define OMAP3430_IVA2_CLK_SRC_MASK (0x7 << 19)
Tony Lindgrenc5957132008-03-18 14:53:17 +020084#define OMAP3430_IVA2_DPLL_MULT_SHIFT 8
85#define OMAP3430_IVA2_DPLL_MULT_MASK (0x7ff << 8)
86#define OMAP3430_IVA2_DPLL_DIV_SHIFT 0
87#define OMAP3430_IVA2_DPLL_DIV_MASK (0x7f << 0)
88
89/* CM_CLKSEL2_PLL_IVA2 */
90#define OMAP3430_IVA2_DPLL_CLKOUT_DIV_SHIFT 0
91#define OMAP3430_IVA2_DPLL_CLKOUT_DIV_MASK (0x1f << 0)
92
93/* CM_CLKSTCTRL_IVA2 */
94#define OMAP3430_CLKTRCTRL_IVA2_SHIFT 0
95#define OMAP3430_CLKTRCTRL_IVA2_MASK (0x3 << 0)
96
97/* CM_CLKSTST_IVA2 */
Paul Walmsley801954d2008-08-19 11:08:44 +030098#define OMAP3430_CLKACTIVITY_IVA2_SHIFT 0
99#define OMAP3430_CLKACTIVITY_IVA2_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200100
101/* CM_REVISION specific bits */
102
103/* CM_SYSCONFIG specific bits */
104
105/* CM_CLKEN_PLL_MPU */
106#define OMAP3430_MPU_DPLL_RAMPTIME_SHIFT 8
107#define OMAP3430_MPU_DPLL_RAMPTIME_MASK (0x3 << 8)
108#define OMAP3430_MPU_DPLL_FREQSEL_SHIFT 4
109#define OMAP3430_MPU_DPLL_FREQSEL_MASK (0xf << 4)
110#define OMAP3430_EN_MPU_DPLL_DRIFTGUARD_SHIFT 3
111#define OMAP3430_EN_MPU_DPLL_DRIFTGUARD_MASK (1 << 3)
112#define OMAP3430_EN_MPU_DPLL_SHIFT 0
113#define OMAP3430_EN_MPU_DPLL_MASK (0x7 << 0)
114
115/* CM_IDLEST_MPU */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600116#define OMAP3430_ST_MPU_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200117
118/* CM_IDLEST_PLL_MPU */
Paul Walmsley542313c2008-07-03 12:24:45 +0300119#define OMAP3430_ST_MPU_CLK_SHIFT 0
Roman Tereshonkov3760d312008-03-13 21:35:09 +0200120#define OMAP3430_ST_MPU_CLK_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200121
122/* CM_AUTOIDLE_PLL_MPU */
123#define OMAP3430_AUTO_MPU_DPLL_SHIFT 0
124#define OMAP3430_AUTO_MPU_DPLL_MASK (0x7 << 0)
125
126/* CM_CLKSEL1_PLL_MPU */
127#define OMAP3430_MPU_CLK_SRC_SHIFT 19
Rajendra Nayak4e68f5a2012-05-07 23:55:21 -0600128#define OMAP3430_MPU_CLK_SRC_MASK (0x7 << 19)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200129#define OMAP3430_MPU_DPLL_MULT_SHIFT 8
130#define OMAP3430_MPU_DPLL_MULT_MASK (0x7ff << 8)
131#define OMAP3430_MPU_DPLL_DIV_SHIFT 0
132#define OMAP3430_MPU_DPLL_DIV_MASK (0x7f << 0)
133
134/* CM_CLKSEL2_PLL_MPU */
135#define OMAP3430_MPU_DPLL_CLKOUT_DIV_SHIFT 0
136#define OMAP3430_MPU_DPLL_CLKOUT_DIV_MASK (0x1f << 0)
137
138/* CM_CLKSTCTRL_MPU */
139#define OMAP3430_CLKTRCTRL_MPU_SHIFT 0
140#define OMAP3430_CLKTRCTRL_MPU_MASK (0x3 << 0)
141
142/* CM_CLKSTST_MPU */
Paul Walmsley801954d2008-08-19 11:08:44 +0300143#define OMAP3430_CLKACTIVITY_MPU_SHIFT 0
144#define OMAP3430_CLKACTIVITY_MPU_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200145
146/* CM_FCLKEN1_CORE specific bits */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600147#define OMAP3430_EN_MODEM_MASK (1 << 31)
Kevin Hilman8111b222009-04-28 15:27:44 -0700148#define OMAP3430_EN_MODEM_SHIFT 31
Tony Lindgrenc5957132008-03-18 14:53:17 +0200149
150/* CM_ICLKEN1_CORE specific bits */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600151#define OMAP3430_EN_ICR_MASK (1 << 29)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200152#define OMAP3430_EN_ICR_SHIFT 29
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600153#define OMAP3430_EN_AES2_MASK (1 << 28)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200154#define OMAP3430_EN_AES2_SHIFT 28
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600155#define OMAP3430_EN_SHA12_MASK (1 << 27)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200156#define OMAP3430_EN_SHA12_SHIFT 27
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600157#define OMAP3430_EN_DES2_MASK (1 << 26)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200158#define OMAP3430_EN_DES2_SHIFT 26
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600159#define OMAP3430ES1_EN_FAC_MASK (1 << 8)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200160#define OMAP3430ES1_EN_FAC_SHIFT 8
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600161#define OMAP3430_EN_MAILBOXES_MASK (1 << 7)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200162#define OMAP3430_EN_MAILBOXES_SHIFT 7
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600163#define OMAP3430_EN_OMAPCTRL_MASK (1 << 6)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200164#define OMAP3430_EN_OMAPCTRL_SHIFT 6
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600165#define OMAP3430_EN_SAD2D_MASK (1 << 3)
Kevin Hilman8111b222009-04-28 15:27:44 -0700166#define OMAP3430_EN_SAD2D_SHIFT 3
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600167#define OMAP3430_EN_SDRC_MASK (1 << 1)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200168#define OMAP3430_EN_SDRC_SHIFT 1
169
Ranjith Lohithakshan3cc4a2f2010-02-24 12:05:55 -0700170/* AM35XX specific CM_ICLKEN1_CORE bits */
171#define AM35XX_EN_IPSS_MASK (1 << 4)
172#define AM35XX_EN_IPSS_SHIFT 4
Ranjith Lohithakshan3cc4a2f2010-02-24 12:05:55 -0700173
Tony Lindgrenc5957132008-03-18 14:53:17 +0200174/* CM_ICLKEN2_CORE */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600175#define OMAP3430_EN_PKA_MASK (1 << 4)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200176#define OMAP3430_EN_PKA_SHIFT 4
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600177#define OMAP3430_EN_AES1_MASK (1 << 3)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200178#define OMAP3430_EN_AES1_SHIFT 3
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600179#define OMAP3430_EN_RNG_MASK (1 << 2)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200180#define OMAP3430_EN_RNG_SHIFT 2
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600181#define OMAP3430_EN_SHA11_MASK (1 << 1)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200182#define OMAP3430_EN_SHA11_SHIFT 1
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600183#define OMAP3430_EN_DES1_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200184#define OMAP3430_EN_DES1_SHIFT 0
185
Kevin Hilman8111b222009-04-28 15:27:44 -0700186/* CM_ICLKEN3_CORE */
187#define OMAP3430_EN_MAD2D_SHIFT 3
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600188#define OMAP3430_EN_MAD2D_MASK (1 << 3)
Kevin Hilman8111b222009-04-28 15:27:44 -0700189
Tony Lindgrenc5957132008-03-18 14:53:17 +0200190/* CM_FCLKEN3_CORE specific bits */
191#define OMAP3430ES2_EN_TS_SHIFT 1
192#define OMAP3430ES2_EN_TS_MASK (1 << 1)
193#define OMAP3430ES2_EN_CPEFUSE_SHIFT 0
194#define OMAP3430ES2_EN_CPEFUSE_MASK (1 << 0)
195
196/* CM_IDLEST1_CORE specific bits */
Paul Walmsleyda0747d2009-01-28 12:18:22 -0700197#define OMAP3430ES2_ST_MMC3_SHIFT 30
198#define OMAP3430ES2_ST_MMC3_MASK (1 << 30)
199#define OMAP3430_ST_ICR_SHIFT 29
200#define OMAP3430_ST_ICR_MASK (1 << 29)
201#define OMAP3430_ST_AES2_SHIFT 28
202#define OMAP3430_ST_AES2_MASK (1 << 28)
203#define OMAP3430_ST_SHA12_SHIFT 27
204#define OMAP3430_ST_SHA12_MASK (1 << 27)
205#define OMAP3430_ST_DES2_SHIFT 26
206#define OMAP3430_ST_DES2_MASK (1 << 26)
207#define OMAP3430_ST_MSPRO_SHIFT 23
208#define OMAP3430_ST_MSPRO_MASK (1 << 23)
Paul Walmsleybf765232012-06-27 14:53:46 -0600209#define AM35XX_ST_UART4_SHIFT 23
210#define AM35XX_ST_UART4_MASK (1 << 23)
Paul Walmsleyda0747d2009-01-28 12:18:22 -0700211#define OMAP3430_ST_HDQ_SHIFT 22
212#define OMAP3430_ST_HDQ_MASK (1 << 22)
213#define OMAP3430ES1_ST_FAC_SHIFT 8
214#define OMAP3430ES1_ST_FAC_MASK (1 << 8)
215#define OMAP3430ES2_ST_SSI_IDLE_SHIFT 8
216#define OMAP3430ES2_ST_SSI_IDLE_MASK (1 << 8)
217#define OMAP3430_ST_MAILBOXES_SHIFT 7
218#define OMAP3430_ST_MAILBOXES_MASK (1 << 7)
219#define OMAP3430_ST_OMAPCTRL_SHIFT 6
220#define OMAP3430_ST_OMAPCTRL_MASK (1 << 6)
Tero Kristo8f993a02012-09-23 17:28:21 -0600221#define OMAP3430_ST_SAD2D_SHIFT 3
222#define OMAP3430_ST_SAD2D_MASK (1 << 3)
Paul Walmsleyda0747d2009-01-28 12:18:22 -0700223#define OMAP3430_ST_SDMA_SHIFT 2
224#define OMAP3430_ST_SDMA_MASK (1 << 2)
225#define OMAP3430_ST_SDRC_SHIFT 1
226#define OMAP3430_ST_SDRC_MASK (1 << 1)
227#define OMAP3430_ST_SSI_STDBY_SHIFT 0
228#define OMAP3430_ST_SSI_STDBY_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200229
Ranjith Lohithakshan3cc4a2f2010-02-24 12:05:55 -0700230/* AM35xx specific CM_IDLEST1_CORE bits */
231#define AM35XX_ST_IPSS_SHIFT 5
232#define AM35XX_ST_IPSS_MASK (1 << 5)
233
Tony Lindgrenc5957132008-03-18 14:53:17 +0200234/* CM_IDLEST2_CORE */
Paul Walmsleyda0747d2009-01-28 12:18:22 -0700235#define OMAP3430_ST_PKA_SHIFT 4
236#define OMAP3430_ST_PKA_MASK (1 << 4)
237#define OMAP3430_ST_AES1_SHIFT 3
238#define OMAP3430_ST_AES1_MASK (1 << 3)
239#define OMAP3430_ST_RNG_SHIFT 2
240#define OMAP3430_ST_RNG_MASK (1 << 2)
241#define OMAP3430_ST_SHA11_SHIFT 1
242#define OMAP3430_ST_SHA11_MASK (1 << 1)
243#define OMAP3430_ST_DES1_SHIFT 0
244#define OMAP3430_ST_DES1_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200245
246/* CM_IDLEST3_CORE */
247#define OMAP3430ES2_ST_USBTLL_SHIFT 2
248#define OMAP3430ES2_ST_USBTLL_MASK (1 << 2)
Paul Walmsleyda0747d2009-01-28 12:18:22 -0700249#define OMAP3430ES2_ST_CPEFUSE_SHIFT 0
250#define OMAP3430ES2_ST_CPEFUSE_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200251
252/* CM_AUTOIDLE1_CORE */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600253#define OMAP3430_AUTO_MODEM_MASK (1 << 31)
Kevin Hilman8111b222009-04-28 15:27:44 -0700254#define OMAP3430_AUTO_MODEM_SHIFT 31
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600255#define OMAP3430ES2_AUTO_MMC3_MASK (1 << 30)
Jouni Hogander027d8de2008-05-16 13:58:18 +0300256#define OMAP3430ES2_AUTO_MMC3_SHIFT 30
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600257#define OMAP3430ES2_AUTO_ICR_MASK (1 << 29)
Jouni Hogander027d8de2008-05-16 13:58:18 +0300258#define OMAP3430ES2_AUTO_ICR_SHIFT 29
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600259#define OMAP3430_AUTO_AES2_MASK (1 << 28)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200260#define OMAP3430_AUTO_AES2_SHIFT 28
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600261#define OMAP3430_AUTO_SHA12_MASK (1 << 27)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200262#define OMAP3430_AUTO_SHA12_SHIFT 27
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600263#define OMAP3430_AUTO_DES2_MASK (1 << 26)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200264#define OMAP3430_AUTO_DES2_SHIFT 26
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600265#define OMAP3430_AUTO_MMC2_MASK (1 << 25)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200266#define OMAP3430_AUTO_MMC2_SHIFT 25
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600267#define OMAP3430_AUTO_MMC1_MASK (1 << 24)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200268#define OMAP3430_AUTO_MMC1_SHIFT 24
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600269#define OMAP3430_AUTO_MSPRO_MASK (1 << 23)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200270#define OMAP3430_AUTO_MSPRO_SHIFT 23
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600271#define OMAP3430_AUTO_HDQ_MASK (1 << 22)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200272#define OMAP3430_AUTO_HDQ_SHIFT 22
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600273#define OMAP3430_AUTO_MCSPI4_MASK (1 << 21)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200274#define OMAP3430_AUTO_MCSPI4_SHIFT 21
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600275#define OMAP3430_AUTO_MCSPI3_MASK (1 << 20)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200276#define OMAP3430_AUTO_MCSPI3_SHIFT 20
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600277#define OMAP3430_AUTO_MCSPI2_MASK (1 << 19)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200278#define OMAP3430_AUTO_MCSPI2_SHIFT 19
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600279#define OMAP3430_AUTO_MCSPI1_MASK (1 << 18)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200280#define OMAP3430_AUTO_MCSPI1_SHIFT 18
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600281#define OMAP3430_AUTO_I2C3_MASK (1 << 17)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200282#define OMAP3430_AUTO_I2C3_SHIFT 17
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600283#define OMAP3430_AUTO_I2C2_MASK (1 << 16)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200284#define OMAP3430_AUTO_I2C2_SHIFT 16
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600285#define OMAP3430_AUTO_I2C1_MASK (1 << 15)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200286#define OMAP3430_AUTO_I2C1_SHIFT 15
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600287#define OMAP3430_AUTO_UART2_MASK (1 << 14)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200288#define OMAP3430_AUTO_UART2_SHIFT 14
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600289#define OMAP3430_AUTO_UART1_MASK (1 << 13)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200290#define OMAP3430_AUTO_UART1_SHIFT 13
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600291#define OMAP3430_AUTO_GPT11_MASK (1 << 12)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200292#define OMAP3430_AUTO_GPT11_SHIFT 12
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600293#define OMAP3430_AUTO_GPT10_MASK (1 << 11)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200294#define OMAP3430_AUTO_GPT10_SHIFT 11
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600295#define OMAP3430_AUTO_MCBSP5_MASK (1 << 10)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200296#define OMAP3430_AUTO_MCBSP5_SHIFT 10
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600297#define OMAP3430_AUTO_MCBSP1_MASK (1 << 9)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200298#define OMAP3430_AUTO_MCBSP1_SHIFT 9
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600299#define OMAP3430ES1_AUTO_FAC_MASK (1 << 8)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200300#define OMAP3430ES1_AUTO_FAC_SHIFT 8
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600301#define OMAP3430_AUTO_MAILBOXES_MASK (1 << 7)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200302#define OMAP3430_AUTO_MAILBOXES_SHIFT 7
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600303#define OMAP3430_AUTO_OMAPCTRL_MASK (1 << 6)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200304#define OMAP3430_AUTO_OMAPCTRL_SHIFT 6
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600305#define OMAP3430ES1_AUTO_FSHOSTUSB_MASK (1 << 5)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200306#define OMAP3430ES1_AUTO_FSHOSTUSB_SHIFT 5
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600307#define OMAP3430_AUTO_HSOTGUSB_MASK (1 << 4)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200308#define OMAP3430_AUTO_HSOTGUSB_SHIFT 4
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600309#define OMAP3430ES1_AUTO_D2D_MASK (1 << 3)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200310#define OMAP3430ES1_AUTO_D2D_SHIFT 3
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600311#define OMAP3430_AUTO_SAD2D_MASK (1 << 3)
Kevin Hilman8111b222009-04-28 15:27:44 -0700312#define OMAP3430_AUTO_SAD2D_SHIFT 3
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600313#define OMAP3430_AUTO_SSI_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200314#define OMAP3430_AUTO_SSI_SHIFT 0
315
316/* CM_AUTOIDLE2_CORE */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600317#define OMAP3430_AUTO_PKA_MASK (1 << 4)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200318#define OMAP3430_AUTO_PKA_SHIFT 4
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600319#define OMAP3430_AUTO_AES1_MASK (1 << 3)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200320#define OMAP3430_AUTO_AES1_SHIFT 3
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600321#define OMAP3430_AUTO_RNG_MASK (1 << 2)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200322#define OMAP3430_AUTO_RNG_SHIFT 2
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600323#define OMAP3430_AUTO_SHA11_MASK (1 << 1)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200324#define OMAP3430_AUTO_SHA11_SHIFT 1
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600325#define OMAP3430_AUTO_DES1_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200326#define OMAP3430_AUTO_DES1_SHIFT 0
327
328/* CM_AUTOIDLE3_CORE */
Jouni Hogander027d8de2008-05-16 13:58:18 +0300329#define OMAP3430ES2_AUTO_USBHOST (1 << 0)
330#define OMAP3430ES2_AUTO_USBHOST_SHIFT 0
331#define OMAP3430ES2_AUTO_USBTLL (1 << 2)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200332#define OMAP3430ES2_AUTO_USBTLL_SHIFT 2
333#define OMAP3430ES2_AUTO_USBTLL_MASK (1 << 2)
Kevin Hilman8111b222009-04-28 15:27:44 -0700334#define OMAP3430_AUTO_MAD2D_SHIFT 3
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600335#define OMAP3430_AUTO_MAD2D_MASK (1 << 3)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200336
337/* CM_CLKSEL_CORE */
338#define OMAP3430_CLKSEL_SSI_SHIFT 8
339#define OMAP3430_CLKSEL_SSI_MASK (0xf << 8)
340#define OMAP3430_CLKSEL_GPT11_MASK (1 << 7)
341#define OMAP3430_CLKSEL_GPT11_SHIFT 7
342#define OMAP3430_CLKSEL_GPT10_MASK (1 << 6)
343#define OMAP3430_CLKSEL_GPT10_SHIFT 6
344#define OMAP3430ES1_CLKSEL_FSHOSTUSB_SHIFT 4
345#define OMAP3430ES1_CLKSEL_FSHOSTUSB_MASK (0x3 << 4)
346#define OMAP3430_CLKSEL_L4_SHIFT 2
347#define OMAP3430_CLKSEL_L4_MASK (0x3 << 2)
348#define OMAP3430_CLKSEL_L3_SHIFT 0
349#define OMAP3430_CLKSEL_L3_MASK (0x3 << 0)
Vishwanath BS7356f0b2010-02-22 22:09:10 -0700350#define OMAP3630_CLKSEL_96M_SHIFT 12
351#define OMAP3630_CLKSEL_96M_MASK (0x3 << 12)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200352
353/* CM_CLKSTCTRL_CORE */
354#define OMAP3430ES1_CLKTRCTRL_D2D_SHIFT 4
355#define OMAP3430ES1_CLKTRCTRL_D2D_MASK (0x3 << 4)
356#define OMAP3430_CLKTRCTRL_L4_SHIFT 2
357#define OMAP3430_CLKTRCTRL_L4_MASK (0x3 << 2)
358#define OMAP3430_CLKTRCTRL_L3_SHIFT 0
359#define OMAP3430_CLKTRCTRL_L3_MASK (0x3 << 0)
360
361/* CM_CLKSTST_CORE */
Paul Walmsley801954d2008-08-19 11:08:44 +0300362#define OMAP3430ES1_CLKACTIVITY_D2D_SHIFT 2
363#define OMAP3430ES1_CLKACTIVITY_D2D_MASK (1 << 2)
364#define OMAP3430_CLKACTIVITY_L4_SHIFT 1
365#define OMAP3430_CLKACTIVITY_L4_MASK (1 << 1)
366#define OMAP3430_CLKACTIVITY_L3_SHIFT 0
367#define OMAP3430_CLKACTIVITY_L3_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200368
369/* CM_FCLKEN_GFX */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600370#define OMAP3430ES1_EN_3D_MASK (1 << 2)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200371#define OMAP3430ES1_EN_3D_SHIFT 2
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600372#define OMAP3430ES1_EN_2D_MASK (1 << 1)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200373#define OMAP3430ES1_EN_2D_SHIFT 1
374
375/* CM_ICLKEN_GFX specific bits */
376
377/* CM_IDLEST_GFX specific bits */
378
379/* CM_CLKSEL_GFX specific bits */
380
381/* CM_SLEEPDEP_GFX specific bits */
382
383/* CM_CLKSTCTRL_GFX */
384#define OMAP3430ES1_CLKTRCTRL_GFX_SHIFT 0
385#define OMAP3430ES1_CLKTRCTRL_GFX_MASK (0x3 << 0)
386
387/* CM_CLKSTST_GFX */
Paul Walmsley801954d2008-08-19 11:08:44 +0300388#define OMAP3430ES1_CLKACTIVITY_GFX_SHIFT 0
389#define OMAP3430ES1_CLKACTIVITY_GFX_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200390
391/* CM_FCLKEN_SGX */
Daniel Stone712d7c82009-01-27 19:13:05 -0700392#define OMAP3430ES2_CM_FCLKEN_SGX_EN_SGX_SHIFT 1
393#define OMAP3430ES2_CM_FCLKEN_SGX_EN_SGX_MASK (1 << 1)
394
Tero Kristob024b542010-02-24 12:05:48 -0700395/* CM_IDLEST_SGX */
396#define OMAP3430ES2_ST_SGX_SHIFT 1
397#define OMAP3430ES2_ST_SGX_MASK (1 << 1)
398
Daniel Stone712d7c82009-01-27 19:13:05 -0700399/* CM_ICLKEN_SGX */
400#define OMAP3430ES2_CM_ICLKEN_SGX_EN_SGX_SHIFT 0
401#define OMAP3430ES2_CM_ICLKEN_SGX_EN_SGX_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200402
403/* CM_CLKSEL_SGX */
404#define OMAP3430ES2_CLKSEL_SGX_SHIFT 0
405#define OMAP3430ES2_CLKSEL_SGX_MASK (0x7 << 0)
406
Paul Walmsley801954d2008-08-19 11:08:44 +0300407/* CM_CLKSTCTRL_SGX */
408#define OMAP3430ES2_CLKTRCTRL_SGX_SHIFT 0
409#define OMAP3430ES2_CLKTRCTRL_SGX_MASK (0x3 << 0)
410
411/* CM_CLKSTST_SGX */
412#define OMAP3430ES2_CLKACTIVITY_SGX_SHIFT 0
413#define OMAP3430ES2_CLKACTIVITY_SGX_MASK (1 << 0)
414
Tony Lindgrenc5957132008-03-18 14:53:17 +0200415/* CM_FCLKEN_WKUP specific bits */
416#define OMAP3430ES2_EN_USIMOCP_SHIFT 9
Paul Walmsleyda0747d2009-01-28 12:18:22 -0700417#define OMAP3430ES2_EN_USIMOCP_MASK (1 << 9)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200418
419/* CM_ICLKEN_WKUP specific bits */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600420#define OMAP3430_EN_WDT1_MASK (1 << 4)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200421#define OMAP3430_EN_WDT1_SHIFT 4
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600422#define OMAP3430_EN_32KSYNC_MASK (1 << 2)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200423#define OMAP3430_EN_32KSYNC_SHIFT 2
424
425/* CM_IDLEST_WKUP specific bits */
Paul Walmsleyda0747d2009-01-28 12:18:22 -0700426#define OMAP3430ES2_ST_USIMOCP_SHIFT 9
427#define OMAP3430ES2_ST_USIMOCP_MASK (1 << 9)
428#define OMAP3430_ST_WDT2_SHIFT 5
429#define OMAP3430_ST_WDT2_MASK (1 << 5)
430#define OMAP3430_ST_WDT1_SHIFT 4
431#define OMAP3430_ST_WDT1_MASK (1 << 4)
432#define OMAP3430_ST_32KSYNC_SHIFT 2
433#define OMAP3430_ST_32KSYNC_MASK (1 << 2)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200434
435/* CM_AUTOIDLE_WKUP */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600436#define OMAP3430ES2_AUTO_USIMOCP_MASK (1 << 9)
Paul Walmsleyda0747d2009-01-28 12:18:22 -0700437#define OMAP3430ES2_AUTO_USIMOCP_SHIFT 9
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600438#define OMAP3430_AUTO_WDT2_MASK (1 << 5)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200439#define OMAP3430_AUTO_WDT2_SHIFT 5
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600440#define OMAP3430_AUTO_WDT1_MASK (1 << 4)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200441#define OMAP3430_AUTO_WDT1_SHIFT 4
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600442#define OMAP3430_AUTO_GPIO1_MASK (1 << 3)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200443#define OMAP3430_AUTO_GPIO1_SHIFT 3
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600444#define OMAP3430_AUTO_32KSYNC_MASK (1 << 2)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200445#define OMAP3430_AUTO_32KSYNC_SHIFT 2
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600446#define OMAP3430_AUTO_GPT12_MASK (1 << 1)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200447#define OMAP3430_AUTO_GPT12_SHIFT 1
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600448#define OMAP3430_AUTO_GPT1_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200449#define OMAP3430_AUTO_GPT1_SHIFT 0
450
451/* CM_CLKSEL_WKUP */
452#define OMAP3430ES2_CLKSEL_USIMOCP_MASK (0xf << 3)
453#define OMAP3430_CLKSEL_RM_SHIFT 1
454#define OMAP3430_CLKSEL_RM_MASK (0x3 << 1)
455#define OMAP3430_CLKSEL_GPT1_SHIFT 0
456#define OMAP3430_CLKSEL_GPT1_MASK (1 << 0)
457
458/* CM_CLKEN_PLL */
459#define OMAP3430_PWRDN_EMU_PERIPH_SHIFT 31
460#define OMAP3430_PWRDN_CAM_SHIFT 30
461#define OMAP3430_PWRDN_DSS1_SHIFT 29
462#define OMAP3430_PWRDN_TV_SHIFT 28
463#define OMAP3430_PWRDN_96M_SHIFT 27
464#define OMAP3430_PERIPH_DPLL_RAMPTIME_SHIFT 24
465#define OMAP3430_PERIPH_DPLL_RAMPTIME_MASK (0x3 << 24)
466#define OMAP3430_PERIPH_DPLL_FREQSEL_SHIFT 20
467#define OMAP3430_PERIPH_DPLL_FREQSEL_MASK (0xf << 20)
468#define OMAP3430_EN_PERIPH_DPLL_DRIFTGUARD_SHIFT 19
469#define OMAP3430_EN_PERIPH_DPLL_DRIFTGUARD_MASK (1 << 19)
470#define OMAP3430_EN_PERIPH_DPLL_SHIFT 16
471#define OMAP3430_EN_PERIPH_DPLL_MASK (0x7 << 16)
472#define OMAP3430_PWRDN_EMU_CORE_SHIFT 12
473#define OMAP3430_CORE_DPLL_RAMPTIME_SHIFT 8
474#define OMAP3430_CORE_DPLL_RAMPTIME_MASK (0x3 << 8)
475#define OMAP3430_CORE_DPLL_FREQSEL_SHIFT 4
476#define OMAP3430_CORE_DPLL_FREQSEL_MASK (0xf << 4)
477#define OMAP3430_EN_CORE_DPLL_DRIFTGUARD_SHIFT 3
478#define OMAP3430_EN_CORE_DPLL_DRIFTGUARD_MASK (1 << 3)
479#define OMAP3430_EN_CORE_DPLL_SHIFT 0
480#define OMAP3430_EN_CORE_DPLL_MASK (0x7 << 0)
481
482/* CM_CLKEN2_PLL */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600483#define OMAP3430ES2_EN_PERIPH2_DPLL_LPMODE_SHIFT 10
Tony Lindgrenc5957132008-03-18 14:53:17 +0200484#define OMAP3430ES2_PERIPH2_DPLL_RAMPTIME_MASK (0x3 << 8)
485#define OMAP3430ES2_PERIPH2_DPLL_FREQSEL_SHIFT 4
486#define OMAP3430ES2_PERIPH2_DPLL_FREQSEL_MASK (0xf << 4)
487#define OMAP3430ES2_EN_PERIPH2_DPLL_DRIFTGUARD_SHIFT 3
488#define OMAP3430ES2_EN_PERIPH2_DPLL_SHIFT 0
489#define OMAP3430ES2_EN_PERIPH2_DPLL_MASK (0x7 << 0)
490
491/* CM_IDLEST_CKGEN */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600492#define OMAP3430_ST_54M_CLK_MASK (1 << 5)
493#define OMAP3430_ST_12M_CLK_MASK (1 << 4)
494#define OMAP3430_ST_48M_CLK_MASK (1 << 3)
495#define OMAP3430_ST_96M_CLK_MASK (1 << 2)
Paul Walmsley542313c2008-07-03 12:24:45 +0300496#define OMAP3430_ST_PERIPH_CLK_SHIFT 1
497#define OMAP3430_ST_PERIPH_CLK_MASK (1 << 1)
498#define OMAP3430_ST_CORE_CLK_SHIFT 0
499#define OMAP3430_ST_CORE_CLK_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200500
501/* CM_IDLEST2_CKGEN */
Paul Walmsleyda0747d2009-01-28 12:18:22 -0700502#define OMAP3430ES2_ST_USIM_CLK_SHIFT 2
503#define OMAP3430ES2_ST_USIM_CLK_MASK (1 << 2)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200504#define OMAP3430ES2_ST_120M_CLK_SHIFT 1
505#define OMAP3430ES2_ST_120M_CLK_MASK (1 << 1)
506#define OMAP3430ES2_ST_PERIPH2_CLK_SHIFT 0
507#define OMAP3430ES2_ST_PERIPH2_CLK_MASK (1 << 0)
508
509/* CM_AUTOIDLE_PLL */
510#define OMAP3430_AUTO_PERIPH_DPLL_SHIFT 3
511#define OMAP3430_AUTO_PERIPH_DPLL_MASK (0x7 << 3)
512#define OMAP3430_AUTO_CORE_DPLL_SHIFT 0
513#define OMAP3430_AUTO_CORE_DPLL_MASK (0x7 << 0)
514
Paul Walmsley542313c2008-07-03 12:24:45 +0300515/* CM_AUTOIDLE2_PLL */
516#define OMAP3430ES2_AUTO_PERIPH2_DPLL_SHIFT 0
517#define OMAP3430ES2_AUTO_PERIPH2_DPLL_MASK (0x7 << 0)
518
Tony Lindgrenc5957132008-03-18 14:53:17 +0200519/* CM_CLKSEL1_PLL */
520/* Note that OMAP3430_CORE_DPLL_CLKOUT_DIV_MASK was (0x3 << 27) on 3430ES1 */
521#define OMAP3430_CORE_DPLL_CLKOUT_DIV_SHIFT 27
522#define OMAP3430_CORE_DPLL_CLKOUT_DIV_MASK (0x1f << 27)
523#define OMAP3430_CORE_DPLL_MULT_SHIFT 16
524#define OMAP3430_CORE_DPLL_MULT_MASK (0x7ff << 16)
525#define OMAP3430_CORE_DPLL_DIV_SHIFT 8
526#define OMAP3430_CORE_DPLL_DIV_MASK (0x7f << 8)
Paul Walmsley9cfd9852009-01-27 19:13:02 -0700527#define OMAP3430_SOURCE_96M_SHIFT 6
528#define OMAP3430_SOURCE_96M_MASK (1 << 6)
529#define OMAP3430_SOURCE_54M_SHIFT 5
530#define OMAP3430_SOURCE_54M_MASK (1 << 5)
531#define OMAP3430_SOURCE_48M_SHIFT 3
532#define OMAP3430_SOURCE_48M_MASK (1 << 3)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200533
534/* CM_CLKSEL2_PLL */
535#define OMAP3430_PERIPH_DPLL_MULT_SHIFT 8
536#define OMAP3430_PERIPH_DPLL_MULT_MASK (0x7ff << 8)
Richard Woodruff358965d2010-02-22 22:09:08 -0700537#define OMAP3630_PERIPH_DPLL_MULT_MASK (0xfff << 8)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200538#define OMAP3430_PERIPH_DPLL_DIV_SHIFT 0
539#define OMAP3430_PERIPH_DPLL_DIV_MASK (0x7f << 0)
Richard Woodruff358965d2010-02-22 22:09:08 -0700540#define OMAP3630_PERIPH_DPLL_DCO_SEL_SHIFT 21
541#define OMAP3630_PERIPH_DPLL_DCO_SEL_MASK (0x7 << 21)
542#define OMAP3630_PERIPH_DPLL_SD_DIV_SHIFT 24
543#define OMAP3630_PERIPH_DPLL_SD_DIV_MASK (0xff << 24)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200544
545/* CM_CLKSEL3_PLL */
546#define OMAP3430_DIV_96M_SHIFT 0
547#define OMAP3430_DIV_96M_MASK (0x1f << 0)
Vishwanath BS678bc9a2010-02-22 22:09:09 -0700548#define OMAP3630_DIV_96M_MASK (0x3f << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200549
550/* CM_CLKSEL4_PLL */
551#define OMAP3430ES2_PERIPH2_DPLL_MULT_SHIFT 8
552#define OMAP3430ES2_PERIPH2_DPLL_MULT_MASK (0x7ff << 8)
553#define OMAP3430ES2_PERIPH2_DPLL_DIV_SHIFT 0
554#define OMAP3430ES2_PERIPH2_DPLL_DIV_MASK (0x7f << 0)
555
556/* CM_CLKSEL5_PLL */
557#define OMAP3430ES2_DIV_120M_SHIFT 0
558#define OMAP3430ES2_DIV_120M_MASK (0x1f << 0)
559
560/* CM_CLKOUT_CTRL */
561#define OMAP3430_CLKOUT2_EN_SHIFT 7
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600562#define OMAP3430_CLKOUT2_EN_MASK (1 << 7)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200563#define OMAP3430_CLKOUT2_DIV_SHIFT 3
564#define OMAP3430_CLKOUT2_DIV_MASK (0x7 << 3)
565#define OMAP3430_CLKOUT2SOURCE_SHIFT 0
566#define OMAP3430_CLKOUT2SOURCE_MASK (0x3 << 0)
567
568/* CM_FCLKEN_DSS */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600569#define OMAP3430_EN_TV_MASK (1 << 2)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200570#define OMAP3430_EN_TV_SHIFT 2
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600571#define OMAP3430_EN_DSS2_MASK (1 << 1)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200572#define OMAP3430_EN_DSS2_SHIFT 1
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600573#define OMAP3430_EN_DSS1_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200574#define OMAP3430_EN_DSS1_SHIFT 0
575
576/* CM_ICLKEN_DSS */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600577#define OMAP3430_CM_ICLKEN_DSS_EN_DSS_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200578#define OMAP3430_CM_ICLKEN_DSS_EN_DSS_SHIFT 0
579
580/* CM_IDLEST_DSS */
Paul Walmsleyda0747d2009-01-28 12:18:22 -0700581#define OMAP3430ES2_ST_DSS_IDLE_SHIFT 1
582#define OMAP3430ES2_ST_DSS_IDLE_MASK (1 << 1)
583#define OMAP3430ES2_ST_DSS_STDBY_SHIFT 0
584#define OMAP3430ES2_ST_DSS_STDBY_MASK (1 << 0)
585#define OMAP3430ES1_ST_DSS_SHIFT 0
586#define OMAP3430ES1_ST_DSS_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200587
588/* CM_AUTOIDLE_DSS */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600589#define OMAP3430_AUTO_DSS_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200590#define OMAP3430_AUTO_DSS_SHIFT 0
591
592/* CM_CLKSEL_DSS */
593#define OMAP3430_CLKSEL_TV_SHIFT 8
594#define OMAP3430_CLKSEL_TV_MASK (0x1f << 8)
Vishwanath BS678bc9a2010-02-22 22:09:09 -0700595#define OMAP3630_CLKSEL_TV_MASK (0x3f << 8)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200596#define OMAP3430_CLKSEL_DSS1_SHIFT 0
597#define OMAP3430_CLKSEL_DSS1_MASK (0x1f << 0)
Vishwanath BS678bc9a2010-02-22 22:09:09 -0700598#define OMAP3630_CLKSEL_DSS1_MASK (0x3f << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200599
600/* CM_SLEEPDEP_DSS specific bits */
601
602/* CM_CLKSTCTRL_DSS */
603#define OMAP3430_CLKTRCTRL_DSS_SHIFT 0
604#define OMAP3430_CLKTRCTRL_DSS_MASK (0x3 << 0)
605
606/* CM_CLKSTST_DSS */
Paul Walmsley801954d2008-08-19 11:08:44 +0300607#define OMAP3430_CLKACTIVITY_DSS_SHIFT 0
608#define OMAP3430_CLKACTIVITY_DSS_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200609
610/* CM_FCLKEN_CAM specific bits */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600611#define OMAP3430_EN_CSI2_MASK (1 << 1)
Sergio Aguirre6c8fe0b2009-01-27 19:13:09 -0700612#define OMAP3430_EN_CSI2_SHIFT 1
Tony Lindgrenc5957132008-03-18 14:53:17 +0200613
614/* CM_ICLKEN_CAM specific bits */
615
616/* CM_IDLEST_CAM */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600617#define OMAP3430_ST_CAM_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200618
619/* CM_AUTOIDLE_CAM */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600620#define OMAP3430_AUTO_CAM_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200621#define OMAP3430_AUTO_CAM_SHIFT 0
622
623/* CM_CLKSEL_CAM */
624#define OMAP3430_CLKSEL_CAM_SHIFT 0
625#define OMAP3430_CLKSEL_CAM_MASK (0x1f << 0)
Vishwanath BS678bc9a2010-02-22 22:09:09 -0700626#define OMAP3630_CLKSEL_CAM_MASK (0x3f << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200627
628/* CM_SLEEPDEP_CAM specific bits */
629
630/* CM_CLKSTCTRL_CAM */
631#define OMAP3430_CLKTRCTRL_CAM_SHIFT 0
632#define OMAP3430_CLKTRCTRL_CAM_MASK (0x3 << 0)
633
634/* CM_CLKSTST_CAM */
Paul Walmsley801954d2008-08-19 11:08:44 +0300635#define OMAP3430_CLKACTIVITY_CAM_SHIFT 0
636#define OMAP3430_CLKACTIVITY_CAM_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200637
638/* CM_FCLKEN_PER specific bits */
639
640/* CM_ICLKEN_PER specific bits */
641
642/* CM_IDLEST_PER */
Paul Walmsleyda0747d2009-01-28 12:18:22 -0700643#define OMAP3430_ST_WDT3_SHIFT 12
644#define OMAP3430_ST_WDT3_MASK (1 << 12)
645#define OMAP3430_ST_MCBSP4_SHIFT 2
646#define OMAP3430_ST_MCBSP4_MASK (1 << 2)
647#define OMAP3430_ST_MCBSP3_SHIFT 1
648#define OMAP3430_ST_MCBSP3_MASK (1 << 1)
649#define OMAP3430_ST_MCBSP2_SHIFT 0
650#define OMAP3430_ST_MCBSP2_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200651
652/* CM_AUTOIDLE_PER */
Govindraj.Re5863682010-09-27 20:20:25 +0530653#define OMAP3630_AUTO_UART4_MASK (1 << 18)
654#define OMAP3630_AUTO_UART4_SHIFT 18
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600655#define OMAP3430_AUTO_GPIO6_MASK (1 << 17)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200656#define OMAP3430_AUTO_GPIO6_SHIFT 17
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600657#define OMAP3430_AUTO_GPIO5_MASK (1 << 16)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200658#define OMAP3430_AUTO_GPIO5_SHIFT 16
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600659#define OMAP3430_AUTO_GPIO4_MASK (1 << 15)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200660#define OMAP3430_AUTO_GPIO4_SHIFT 15
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600661#define OMAP3430_AUTO_GPIO3_MASK (1 << 14)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200662#define OMAP3430_AUTO_GPIO3_SHIFT 14
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600663#define OMAP3430_AUTO_GPIO2_MASK (1 << 13)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200664#define OMAP3430_AUTO_GPIO2_SHIFT 13
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600665#define OMAP3430_AUTO_WDT3_MASK (1 << 12)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200666#define OMAP3430_AUTO_WDT3_SHIFT 12
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600667#define OMAP3430_AUTO_UART3_MASK (1 << 11)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200668#define OMAP3430_AUTO_UART3_SHIFT 11
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600669#define OMAP3430_AUTO_GPT9_MASK (1 << 10)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200670#define OMAP3430_AUTO_GPT9_SHIFT 10
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600671#define OMAP3430_AUTO_GPT8_MASK (1 << 9)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200672#define OMAP3430_AUTO_GPT8_SHIFT 9
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600673#define OMAP3430_AUTO_GPT7_MASK (1 << 8)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200674#define OMAP3430_AUTO_GPT7_SHIFT 8
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600675#define OMAP3430_AUTO_GPT6_MASK (1 << 7)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200676#define OMAP3430_AUTO_GPT6_SHIFT 7
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600677#define OMAP3430_AUTO_GPT5_MASK (1 << 6)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200678#define OMAP3430_AUTO_GPT5_SHIFT 6
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600679#define OMAP3430_AUTO_GPT4_MASK (1 << 5)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200680#define OMAP3430_AUTO_GPT4_SHIFT 5
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600681#define OMAP3430_AUTO_GPT3_MASK (1 << 4)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200682#define OMAP3430_AUTO_GPT3_SHIFT 4
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600683#define OMAP3430_AUTO_GPT2_MASK (1 << 3)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200684#define OMAP3430_AUTO_GPT2_SHIFT 3
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600685#define OMAP3430_AUTO_MCBSP4_MASK (1 << 2)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200686#define OMAP3430_AUTO_MCBSP4_SHIFT 2
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600687#define OMAP3430_AUTO_MCBSP3_MASK (1 << 1)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200688#define OMAP3430_AUTO_MCBSP3_SHIFT 1
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600689#define OMAP3430_AUTO_MCBSP2_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200690#define OMAP3430_AUTO_MCBSP2_SHIFT 0
691
692/* CM_CLKSEL_PER */
693#define OMAP3430_CLKSEL_GPT9_MASK (1 << 7)
694#define OMAP3430_CLKSEL_GPT9_SHIFT 7
695#define OMAP3430_CLKSEL_GPT8_MASK (1 << 6)
696#define OMAP3430_CLKSEL_GPT8_SHIFT 6
697#define OMAP3430_CLKSEL_GPT7_MASK (1 << 5)
698#define OMAP3430_CLKSEL_GPT7_SHIFT 5
699#define OMAP3430_CLKSEL_GPT6_MASK (1 << 4)
700#define OMAP3430_CLKSEL_GPT6_SHIFT 4
701#define OMAP3430_CLKSEL_GPT5_MASK (1 << 3)
702#define OMAP3430_CLKSEL_GPT5_SHIFT 3
703#define OMAP3430_CLKSEL_GPT4_MASK (1 << 2)
704#define OMAP3430_CLKSEL_GPT4_SHIFT 2
705#define OMAP3430_CLKSEL_GPT3_MASK (1 << 1)
706#define OMAP3430_CLKSEL_GPT3_SHIFT 1
707#define OMAP3430_CLKSEL_GPT2_MASK (1 << 0)
708#define OMAP3430_CLKSEL_GPT2_SHIFT 0
709
710/* CM_SLEEPDEP_PER specific bits */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600711#define OMAP3430_CM_SLEEPDEP_PER_EN_IVA2_MASK (1 << 2)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200712
713/* CM_CLKSTCTRL_PER */
714#define OMAP3430_CLKTRCTRL_PER_SHIFT 0
715#define OMAP3430_CLKTRCTRL_PER_MASK (0x3 << 0)
716
717/* CM_CLKSTST_PER */
Paul Walmsley801954d2008-08-19 11:08:44 +0300718#define OMAP3430_CLKACTIVITY_PER_SHIFT 0
719#define OMAP3430_CLKACTIVITY_PER_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200720
721/* CM_CLKSEL1_EMU */
722#define OMAP3430_DIV_DPLL4_SHIFT 24
723#define OMAP3430_DIV_DPLL4_MASK (0x1f << 24)
Vishwanath BS678bc9a2010-02-22 22:09:09 -0700724#define OMAP3630_DIV_DPLL4_MASK (0x3f << 24)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200725#define OMAP3430_DIV_DPLL3_SHIFT 16
726#define OMAP3430_DIV_DPLL3_MASK (0x1f << 16)
727#define OMAP3430_CLKSEL_TRACECLK_SHIFT 11
728#define OMAP3430_CLKSEL_TRACECLK_MASK (0x7 << 11)
729#define OMAP3430_CLKSEL_PCLK_SHIFT 8
730#define OMAP3430_CLKSEL_PCLK_MASK (0x7 << 8)
731#define OMAP3430_CLKSEL_PCLKX2_SHIFT 6
732#define OMAP3430_CLKSEL_PCLKX2_MASK (0x3 << 6)
733#define OMAP3430_CLKSEL_ATCLK_SHIFT 4
734#define OMAP3430_CLKSEL_ATCLK_MASK (0x3 << 4)
735#define OMAP3430_TRACE_MUX_CTRL_SHIFT 2
736#define OMAP3430_TRACE_MUX_CTRL_MASK (0x3 << 2)
737#define OMAP3430_MUX_CTRL_SHIFT 0
738#define OMAP3430_MUX_CTRL_MASK (0x3 << 0)
739
740/* CM_CLKSTCTRL_EMU */
741#define OMAP3430_CLKTRCTRL_EMU_SHIFT 0
742#define OMAP3430_CLKTRCTRL_EMU_MASK (0x3 << 0)
743
744/* CM_CLKSTST_EMU */
Paul Walmsley801954d2008-08-19 11:08:44 +0300745#define OMAP3430_CLKACTIVITY_EMU_SHIFT 0
746#define OMAP3430_CLKACTIVITY_EMU_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200747
748/* CM_CLKSEL2_EMU specific bits */
749#define OMAP3430_CORE_DPLL_EMU_MULT_SHIFT 8
750#define OMAP3430_CORE_DPLL_EMU_MULT_MASK (0x7ff << 8)
751#define OMAP3430_CORE_DPLL_EMU_DIV_SHIFT 0
752#define OMAP3430_CORE_DPLL_EMU_DIV_MASK (0x7f << 0)
753
754/* CM_CLKSEL3_EMU specific bits */
755#define OMAP3430_PERIPH_DPLL_EMU_MULT_SHIFT 8
756#define OMAP3430_PERIPH_DPLL_EMU_MULT_MASK (0x7ff << 8)
757#define OMAP3430_PERIPH_DPLL_EMU_DIV_SHIFT 0
758#define OMAP3430_PERIPH_DPLL_EMU_DIV_MASK (0x7f << 0)
759
760/* CM_POLCTRL */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600761#define OMAP3430_CLKOUT2_POL_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200762
763/* CM_IDLEST_NEON */
Paul Walmsley2bc4ef72010-05-18 18:47:24 -0600764#define OMAP3430_ST_NEON_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200765
766/* CM_CLKSTCTRL_NEON */
767#define OMAP3430_CLKTRCTRL_NEON_SHIFT 0
768#define OMAP3430_CLKTRCTRL_NEON_MASK (0x3 << 0)
769
770/* CM_FCLKEN_USBHOST */
771#define OMAP3430ES2_EN_USBHOST2_SHIFT 1
772#define OMAP3430ES2_EN_USBHOST2_MASK (1 << 1)
773#define OMAP3430ES2_EN_USBHOST1_SHIFT 0
774#define OMAP3430ES2_EN_USBHOST1_MASK (1 << 0)
775
776/* CM_ICLKEN_USBHOST */
777#define OMAP3430ES2_EN_USBHOST_SHIFT 0
778#define OMAP3430ES2_EN_USBHOST_MASK (1 << 0)
779
780/* CM_IDLEST_USBHOST */
Paul Walmsleyda0747d2009-01-28 12:18:22 -0700781#define OMAP3430ES2_ST_USBHOST_IDLE_SHIFT 1
782#define OMAP3430ES2_ST_USBHOST_IDLE_MASK (1 << 1)
783#define OMAP3430ES2_ST_USBHOST_STDBY_SHIFT 0
784#define OMAP3430ES2_ST_USBHOST_STDBY_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200785
786/* CM_AUTOIDLE_USBHOST */
787#define OMAP3430ES2_AUTO_USBHOST_SHIFT 0
788#define OMAP3430ES2_AUTO_USBHOST_MASK (1 << 0)
789
790/* CM_SLEEPDEP_USBHOST */
791#define OMAP3430ES2_EN_MPU_SHIFT 1
792#define OMAP3430ES2_EN_MPU_MASK (1 << 1)
793#define OMAP3430ES2_EN_IVA2_SHIFT 2
794#define OMAP3430ES2_EN_IVA2_MASK (1 << 2)
795
796/* CM_CLKSTCTRL_USBHOST */
797#define OMAP3430ES2_CLKTRCTRL_USBHOST_SHIFT 0
798#define OMAP3430ES2_CLKTRCTRL_USBHOST_MASK (3 << 0)
799
Paul Walmsley801954d2008-08-19 11:08:44 +0300800/* CM_CLKSTST_USBHOST */
801#define OMAP3430ES2_CLKACTIVITY_USBHOST_SHIFT 0
802#define OMAP3430ES2_CLKACTIVITY_USBHOST_MASK (1 << 0)
Tony Lindgrenc5957132008-03-18 14:53:17 +0200803
Paul Walmsleybd2122c2010-12-21 21:05:15 -0700804/*
805 *
806 */
807
808/* OMAP3XXX CM_CLKSTCTRL_*.CLKTRCTRL_* register bit values */
809#define OMAP34XX_CLKSTCTRL_DISABLE_AUTO 0x0
810#define OMAP34XX_CLKSTCTRL_FORCE_SLEEP 0x1
811#define OMAP34XX_CLKSTCTRL_FORCE_WAKEUP 0x2
812#define OMAP34XX_CLKSTCTRL_ENABLE_AUTO 0x3
813
814
Tony Lindgrenc5957132008-03-18 14:53:17 +0200815#endif