aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c
diff options
context:
space:
mode:
authorPaul Walmsley <paul@pwsan.com>2012-10-21 03:01:11 -0400
committerPaul Walmsley <paul@pwsan.com>2012-10-21 03:01:11 -0400
commitff4ae5d9319b86f940e410e92659c50f9879ff46 (patch)
treec522f8b1c8981a51ed7fc0280be7a9d345074ad8 /arch/arm/mach-omap2/clockdomain2xxx_3xxx.c
parent498153995b9ff41279be54fc56facb92f5cad793 (diff)
ARM: OMAP2+: CM/hwmod: split CM functions into OMAP2, OMAP3-specific files
Move OMAP3xxx-specific CM functions & macros into cm3xxx.[ch] and OMAP2xxx-specific macros into cm2xxx.[ch]. Move basic CM register access functions into static inline functions in cm2xxx_3xxx.h, leaving only OMAP2/3 hardreset functions in cm2xxx_3xxx.c. As part of this, split the CM and hwmod code that waits for devices to become ready into SoC-specific functions. This is in preparation for the upcoming move of this code to drivers/. Signed-off-by: Paul Walmsley <paul@pwsan.com> Reviewed-by: Russ Dill <Russ.Dill@ti.com> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2/clockdomain2xxx_3xxx.c')
-rw-r--r--arch/arm/mach-omap2/clockdomain2xxx_3xxx.c27
1 files changed, 14 insertions, 13 deletions
diff --git a/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c b/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c
index 70294f54e35a..658487c34cb2 100644
--- a/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c
+++ b/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c
@@ -17,7 +17,8 @@
17#include "prm.h" 17#include "prm.h"
18#include "prm2xxx_3xxx.h" 18#include "prm2xxx_3xxx.h"
19#include "cm.h" 19#include "cm.h"
20#include "cm2xxx_3xxx.h" 20#include "cm2xxx.h"
21#include "cm3xxx.h"
21#include "cm-regbits-24xx.h" 22#include "cm-regbits-24xx.h"
22#include "cm-regbits-34xx.h" 23#include "cm-regbits-34xx.h"
23#include "prm-regbits-24xx.h" 24#include "prm-regbits-24xx.h"
@@ -176,15 +177,15 @@ static int omap3_clkdm_wakeup(struct clockdomain *clkdm)
176 return 0; 177 return 0;
177} 178}
178 179
179static int omap2_clkdm_clk_enable(struct clockdomain *clkdm) 180static int omap2xxx_clkdm_clk_enable(struct clockdomain *clkdm)
180{ 181{
181 bool hwsup = false; 182 bool hwsup = false;
182 183
183 if (!clkdm->clktrctrl_mask) 184 if (!clkdm->clktrctrl_mask)
184 return 0; 185 return 0;
185 186
186 hwsup = omap2_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs, 187 hwsup = omap3xxx_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs,
187 clkdm->clktrctrl_mask); 188 clkdm->clktrctrl_mask);
188 189
189 if (hwsup) { 190 if (hwsup) {
190 /* Disable HW transitions when we are changing deps */ 191 /* Disable HW transitions when we are changing deps */
@@ -199,15 +200,15 @@ static int omap2_clkdm_clk_enable(struct clockdomain *clkdm)
199 return 0; 200 return 0;
200} 201}
201 202
202static int omap2_clkdm_clk_disable(struct clockdomain *clkdm) 203static int omap2xxx_clkdm_clk_disable(struct clockdomain *clkdm)
203{ 204{
204 bool hwsup = false; 205 bool hwsup = false;
205 206
206 if (!clkdm->clktrctrl_mask) 207 if (!clkdm->clktrctrl_mask)
207 return 0; 208 return 0;
208 209
209 hwsup = omap2_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs, 210 hwsup = omap3xxx_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs,
210 clkdm->clktrctrl_mask); 211 clkdm->clktrctrl_mask);
211 212
212 if (hwsup) { 213 if (hwsup) {
213 /* Disable HW transitions when we are changing deps */ 214 /* Disable HW transitions when we are changing deps */
@@ -258,8 +259,8 @@ static int omap3xxx_clkdm_clk_enable(struct clockdomain *clkdm)
258 return 0; 259 return 0;
259 } 260 }
260 261
261 hwsup = omap2_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs, 262 hwsup = omap2xxx_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs,
262 clkdm->clktrctrl_mask); 263 clkdm->clktrctrl_mask);
263 264
264 if (hwsup) { 265 if (hwsup) {
265 /* Disable HW transitions when we are changing deps */ 266 /* Disable HW transitions when we are changing deps */
@@ -292,8 +293,8 @@ static int omap3xxx_clkdm_clk_disable(struct clockdomain *clkdm)
292 return 0; 293 return 0;
293 } 294 }
294 295
295 hwsup = omap2_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs, 296 hwsup = omap2xxx_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs,
296 clkdm->clktrctrl_mask); 297 clkdm->clktrctrl_mask);
297 298
298 if (hwsup) { 299 if (hwsup) {
299 /* Disable HW transitions when we are changing deps */ 300 /* Disable HW transitions when we are changing deps */
@@ -317,8 +318,8 @@ struct clkdm_ops omap2_clkdm_operations = {
317 .clkdm_wakeup = omap2_clkdm_wakeup, 318 .clkdm_wakeup = omap2_clkdm_wakeup,
318 .clkdm_allow_idle = omap2_clkdm_allow_idle, 319 .clkdm_allow_idle = omap2_clkdm_allow_idle,
319 .clkdm_deny_idle = omap2_clkdm_deny_idle, 320 .clkdm_deny_idle = omap2_clkdm_deny_idle,
320 .clkdm_clk_enable = omap2_clkdm_clk_enable, 321 .clkdm_clk_enable = omap2xxx_clkdm_clk_enable,
321 .clkdm_clk_disable = omap2_clkdm_clk_disable, 322 .clkdm_clk_disable = omap2xxx_clkdm_clk_disable,
322}; 323};
323 324
324struct clkdm_ops omap3_clkdm_operations = { 325struct clkdm_ops omap3_clkdm_operations = {