diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-omap2/omap-mpuss-lowpower.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-omap2/pm34xx.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-omap2/powerdomain.c | 16 | ||||
-rw-r--r-- | arch/arm/mach-omap2/powerdomain.h | 4 |
4 files changed, 18 insertions, 10 deletions
diff --git a/arch/arm/mach-omap2/omap-mpuss-lowpower.c b/arch/arm/mach-omap2/omap-mpuss-lowpower.c index 13670aa84e58..e35a86bf4e1d 100644 --- a/arch/arm/mach-omap2/omap-mpuss-lowpower.c +++ b/arch/arm/mach-omap2/omap-mpuss-lowpower.c | |||
@@ -255,7 +255,7 @@ int omap4_enter_lowpower(unsigned int cpu, unsigned int power_state) | |||
255 | return -ENXIO; | 255 | return -ENXIO; |
256 | } | 256 | } |
257 | 257 | ||
258 | pwrdm_pre_transition(); | 258 | pwrdm_pre_transition(NULL); |
259 | 259 | ||
260 | /* | 260 | /* |
261 | * Check MPUSS next state and save interrupt controller if needed. | 261 | * Check MPUSS next state and save interrupt controller if needed. |
@@ -287,7 +287,7 @@ int omap4_enter_lowpower(unsigned int cpu, unsigned int power_state) | |||
287 | wakeup_cpu = smp_processor_id(); | 287 | wakeup_cpu = smp_processor_id(); |
288 | set_cpu_next_pwrst(wakeup_cpu, PWRDM_POWER_ON); | 288 | set_cpu_next_pwrst(wakeup_cpu, PWRDM_POWER_ON); |
289 | 289 | ||
290 | pwrdm_post_transition(); | 290 | pwrdm_post_transition(NULL); |
291 | 291 | ||
292 | return 0; | 292 | return 0; |
293 | } | 293 | } |
diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c index e67d898433fb..0bbbc8c82fd8 100644 --- a/arch/arm/mach-omap2/pm34xx.c +++ b/arch/arm/mach-omap2/pm34xx.c | |||
@@ -273,7 +273,7 @@ void omap_sram_idle(void) | |||
273 | per_next_state = pwrdm_read_next_pwrst(per_pwrdm); | 273 | per_next_state = pwrdm_read_next_pwrst(per_pwrdm); |
274 | core_next_state = pwrdm_read_next_pwrst(core_pwrdm); | 274 | core_next_state = pwrdm_read_next_pwrst(core_pwrdm); |
275 | 275 | ||
276 | pwrdm_pre_transition(); | 276 | pwrdm_pre_transition(NULL); |
277 | 277 | ||
278 | /* PER */ | 278 | /* PER */ |
279 | if (per_next_state < PWRDM_POWER_ON) { | 279 | if (per_next_state < PWRDM_POWER_ON) { |
@@ -338,7 +338,7 @@ void omap_sram_idle(void) | |||
338 | } | 338 | } |
339 | omap3_intc_resume_idle(); | 339 | omap3_intc_resume_idle(); |
340 | 340 | ||
341 | pwrdm_post_transition(); | 341 | pwrdm_post_transition(NULL); |
342 | 342 | ||
343 | /* PER */ | 343 | /* PER */ |
344 | if (per_next_state < PWRDM_POWER_ON) | 344 | if (per_next_state < PWRDM_POWER_ON) |
diff --git a/arch/arm/mach-omap2/powerdomain.c b/arch/arm/mach-omap2/powerdomain.c index 96114901b932..eefe179045e6 100644 --- a/arch/arm/mach-omap2/powerdomain.c +++ b/arch/arm/mach-omap2/powerdomain.c | |||
@@ -981,15 +981,23 @@ int pwrdm_state_switch(struct powerdomain *pwrdm) | |||
981 | return ret; | 981 | return ret; |
982 | } | 982 | } |
983 | 983 | ||
984 | int pwrdm_pre_transition(void) | 984 | int pwrdm_pre_transition(struct powerdomain *pwrdm) |
985 | { | 985 | { |
986 | pwrdm_for_each(_pwrdm_pre_transition_cb, NULL); | 986 | if (pwrdm) |
987 | _pwrdm_pre_transition_cb(pwrdm, NULL); | ||
988 | else | ||
989 | pwrdm_for_each(_pwrdm_pre_transition_cb, NULL); | ||
990 | |||
987 | return 0; | 991 | return 0; |
988 | } | 992 | } |
989 | 993 | ||
990 | int pwrdm_post_transition(void) | 994 | int pwrdm_post_transition(struct powerdomain *pwrdm) |
991 | { | 995 | { |
992 | pwrdm_for_each(_pwrdm_post_transition_cb, NULL); | 996 | if (pwrdm) |
997 | _pwrdm_post_transition_cb(pwrdm, NULL); | ||
998 | else | ||
999 | pwrdm_for_each(_pwrdm_post_transition_cb, NULL); | ||
1000 | |||
993 | return 0; | 1001 | return 0; |
994 | } | 1002 | } |
995 | 1003 | ||
diff --git a/arch/arm/mach-omap2/powerdomain.h b/arch/arm/mach-omap2/powerdomain.h index 8f88d65c46ea..a6a4604801ad 100644 --- a/arch/arm/mach-omap2/powerdomain.h +++ b/arch/arm/mach-omap2/powerdomain.h | |||
@@ -213,8 +213,8 @@ bool pwrdm_has_hdwr_sar(struct powerdomain *pwrdm); | |||
213 | int pwrdm_wait_transition(struct powerdomain *pwrdm); | 213 | int pwrdm_wait_transition(struct powerdomain *pwrdm); |
214 | 214 | ||
215 | int pwrdm_state_switch(struct powerdomain *pwrdm); | 215 | int pwrdm_state_switch(struct powerdomain *pwrdm); |
216 | int pwrdm_pre_transition(void); | 216 | int pwrdm_pre_transition(struct powerdomain *pwrdm); |
217 | int pwrdm_post_transition(void); | 217 | int pwrdm_post_transition(struct powerdomain *pwrdm); |
218 | int pwrdm_set_lowpwrstchange(struct powerdomain *pwrdm); | 218 | int pwrdm_set_lowpwrstchange(struct powerdomain *pwrdm); |
219 | int pwrdm_get_context_loss_count(struct powerdomain *pwrdm); | 219 | int pwrdm_get_context_loss_count(struct powerdomain *pwrdm); |
220 | bool pwrdm_can_ever_lose_context(struct powerdomain *pwrdm); | 220 | bool pwrdm_can_ever_lose_context(struct powerdomain *pwrdm); |