diff options
Diffstat (limited to 'arch/arm/mach-omap2/pm34xx.c')
-rw-r--r-- | arch/arm/mach-omap2/pm34xx.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c index 331dfca93ed5..26f2aca9abe8 100644 --- a/arch/arm/mach-omap2/pm34xx.c +++ b/arch/arm/mach-omap2/pm34xx.c | |||
@@ -664,6 +664,30 @@ static void __init prcm_setup_regs(void) | |||
664 | omap3_d2d_idle(); | 664 | omap3_d2d_idle(); |
665 | } | 665 | } |
666 | 666 | ||
667 | int omap3_pm_get_suspend_state(struct powerdomain *pwrdm) | ||
668 | { | ||
669 | struct power_state *pwrst; | ||
670 | |||
671 | list_for_each_entry(pwrst, &pwrst_list, node) { | ||
672 | if (pwrst->pwrdm == pwrdm) | ||
673 | return pwrst->next_state; | ||
674 | } | ||
675 | return -EINVAL; | ||
676 | } | ||
677 | |||
678 | int omap3_pm_set_suspend_state(struct powerdomain *pwrdm, int state) | ||
679 | { | ||
680 | struct power_state *pwrst; | ||
681 | |||
682 | list_for_each_entry(pwrst, &pwrst_list, node) { | ||
683 | if (pwrst->pwrdm == pwrdm) { | ||
684 | pwrst->next_state = state; | ||
685 | return 0; | ||
686 | } | ||
687 | } | ||
688 | return -EINVAL; | ||
689 | } | ||
690 | |||
667 | static int __init pwrdms_setup(struct powerdomain *pwrdm, void *unused) | 691 | static int __init pwrdms_setup(struct powerdomain *pwrdm, void *unused) |
668 | { | 692 | { |
669 | struct power_state *pwrst; | 693 | struct power_state *pwrst; |