diff options
author | Tony Lindgren <tony@atomide.com> | 2011-08-10 06:36:42 -0400 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2011-08-10 06:36:42 -0400 |
commit | 58cf5e7fd5554735901dc855f5d4c16c59331dd5 (patch) | |
tree | 313ed295ec518b7bbc3d3ba952fc4fe430dc2ace /arch/arm | |
parent | c9a48c2aac235f7a7e31fb7214a33afcd0da26b7 (diff) | |
parent | 98333b3dda1e490b02304a6a6643c294d4e520c3 (diff) |
Merge branch 'for_3.1/pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into fixes
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/mach-omap2/Kconfig | 1 | ||||
-rw-r--r-- | arch/arm/mach-omap2/board-omap3beagle.c | 23 | ||||
-rw-r--r-- | arch/arm/mach-omap2/smartreflex.c | 3 | ||||
-rw-r--r-- | arch/arm/plat-omap/Kconfig | 1 |
4 files changed, 13 insertions, 15 deletions
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig index 4ae6257b39a4..57b66d590c52 100644 --- a/arch/arm/mach-omap2/Kconfig +++ b/arch/arm/mach-omap2/Kconfig | |||
@@ -7,7 +7,6 @@ config ARCH_OMAP2PLUS_TYPICAL | |||
7 | default y | 7 | default y |
8 | select AEABI | 8 | select AEABI |
9 | select REGULATOR | 9 | select REGULATOR |
10 | select PM | ||
11 | select PM_RUNTIME | 10 | select PM_RUNTIME |
12 | select VFP | 11 | select VFP |
13 | select NEON if ARCH_OMAP3 || ARCH_OMAP4 | 12 | select NEON if ARCH_OMAP3 || ARCH_OMAP4 |
diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c index 32f5f895568a..3ae16b4e3f52 100644 --- a/arch/arm/mach-omap2/board-omap3beagle.c +++ b/arch/arm/mach-omap2/board-omap3beagle.c | |||
@@ -491,23 +491,22 @@ static void __init beagle_opp_init(void) | |||
491 | 491 | ||
492 | /* Custom OPP enabled for all xM versions */ | 492 | /* Custom OPP enabled for all xM versions */ |
493 | if (cpu_is_omap3630()) { | 493 | if (cpu_is_omap3630()) { |
494 | struct omap_hwmod *mh = omap_hwmod_lookup("mpu"); | 494 | struct device *mpu_dev, *iva_dev; |
495 | struct omap_hwmod *dh = omap_hwmod_lookup("iva"); | ||
496 | struct device *dev; | ||
497 | 495 | ||
498 | if (!mh || !dh) { | 496 | mpu_dev = omap2_get_mpuss_device(); |
497 | iva_dev = omap2_get_iva_device(); | ||
498 | |||
499 | if (!mpu_dev || !iva_dev) { | ||
499 | pr_err("%s: Aiee.. no mpu/dsp devices? %p %p\n", | 500 | pr_err("%s: Aiee.. no mpu/dsp devices? %p %p\n", |
500 | __func__, mh, dh); | 501 | __func__, mpu_dev, iva_dev); |
501 | return; | 502 | return; |
502 | } | 503 | } |
503 | /* Enable MPU 1GHz and lower opps */ | 504 | /* Enable MPU 1GHz and lower opps */ |
504 | dev = &mh->od->pdev.dev; | 505 | r = opp_enable(mpu_dev, 800000000); |
505 | r = opp_enable(dev, 800000000); | ||
506 | /* TODO: MPU 1GHz needs SR and ABB */ | 506 | /* TODO: MPU 1GHz needs SR and ABB */ |
507 | 507 | ||
508 | /* Enable IVA 800MHz and lower opps */ | 508 | /* Enable IVA 800MHz and lower opps */ |
509 | dev = &dh->od->pdev.dev; | 509 | r |= opp_enable(iva_dev, 660000000); |
510 | r |= opp_enable(dev, 660000000); | ||
511 | /* TODO: DSP 800MHz needs SR and ABB */ | 510 | /* TODO: DSP 800MHz needs SR and ABB */ |
512 | if (r) { | 511 | if (r) { |
513 | pr_err("%s: failed to enable higher opp %d\n", | 512 | pr_err("%s: failed to enable higher opp %d\n", |
@@ -516,10 +515,8 @@ static void __init beagle_opp_init(void) | |||
516 | * Cleanup - disable the higher freqs - we dont care | 515 | * Cleanup - disable the higher freqs - we dont care |
517 | * about the results | 516 | * about the results |
518 | */ | 517 | */ |
519 | dev = &mh->od->pdev.dev; | 518 | opp_disable(mpu_dev, 800000000); |
520 | opp_disable(dev, 800000000); | 519 | opp_disable(iva_dev, 660000000); |
521 | dev = &dh->od->pdev.dev; | ||
522 | opp_disable(dev, 660000000); | ||
523 | } | 520 | } |
524 | } | 521 | } |
525 | return; | 522 | return; |
diff --git a/arch/arm/mach-omap2/smartreflex.c b/arch/arm/mach-omap2/smartreflex.c index 2ce2fb7664bc..34c01a7de810 100644 --- a/arch/arm/mach-omap2/smartreflex.c +++ b/arch/arm/mach-omap2/smartreflex.c | |||
@@ -621,7 +621,7 @@ void sr_disable(struct voltagedomain *voltdm) | |||
621 | sr_v2_disable(sr); | 621 | sr_v2_disable(sr); |
622 | } | 622 | } |
623 | 623 | ||
624 | pm_runtime_put_sync(&sr->pdev->dev); | 624 | pm_runtime_put_sync_suspend(&sr->pdev->dev); |
625 | } | 625 | } |
626 | 626 | ||
627 | /** | 627 | /** |
@@ -860,6 +860,7 @@ static int __init omap_sr_probe(struct platform_device *pdev) | |||
860 | irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0); | 860 | irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0); |
861 | 861 | ||
862 | pm_runtime_enable(&pdev->dev); | 862 | pm_runtime_enable(&pdev->dev); |
863 | pm_runtime_irq_safe(&pdev->dev); | ||
863 | 864 | ||
864 | sr_info->pdev = pdev; | 865 | sr_info->pdev = pdev; |
865 | sr_info->srid = pdev->id; | 866 | sr_info->srid = pdev->id; |
diff --git a/arch/arm/plat-omap/Kconfig b/arch/arm/plat-omap/Kconfig index 6e6735f04ee3..bb8f4a6b3e37 100644 --- a/arch/arm/plat-omap/Kconfig +++ b/arch/arm/plat-omap/Kconfig | |||
@@ -13,6 +13,7 @@ config ARCH_OMAP1 | |||
13 | bool "TI OMAP1" | 13 | bool "TI OMAP1" |
14 | select CLKDEV_LOOKUP | 14 | select CLKDEV_LOOKUP |
15 | select CLKSRC_MMIO | 15 | select CLKSRC_MMIO |
16 | select GENERIC_IRQ_CHIP | ||
16 | help | 17 | help |
17 | "Systems based on omap7xx, omap15xx or omap16xx" | 18 | "Systems based on omap7xx, omap15xx or omap16xx" |
18 | 19 | ||