Merge branch 'for_3.1/pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into fixes
This commit is contained in:
commit
58cf5e7fd5
|
@ -7,7 +7,6 @@ config ARCH_OMAP2PLUS_TYPICAL
|
||||||
default y
|
default y
|
||||||
select AEABI
|
select AEABI
|
||||||
select REGULATOR
|
select REGULATOR
|
||||||
select PM
|
|
||||||
select PM_RUNTIME
|
select PM_RUNTIME
|
||||||
select VFP
|
select VFP
|
||||||
select NEON if ARCH_OMAP3 || ARCH_OMAP4
|
select NEON if ARCH_OMAP3 || ARCH_OMAP4
|
||||||
|
|
|
@ -491,23 +491,22 @@ static void __init beagle_opp_init(void)
|
||||||
|
|
||||||
/* Custom OPP enabled for all xM versions */
|
/* Custom OPP enabled for all xM versions */
|
||||||
if (cpu_is_omap3630()) {
|
if (cpu_is_omap3630()) {
|
||||||
struct omap_hwmod *mh = omap_hwmod_lookup("mpu");
|
struct device *mpu_dev, *iva_dev;
|
||||||
struct omap_hwmod *dh = omap_hwmod_lookup("iva");
|
|
||||||
struct device *dev;
|
|
||||||
|
|
||||||
if (!mh || !dh) {
|
mpu_dev = omap2_get_mpuss_device();
|
||||||
|
iva_dev = omap2_get_iva_device();
|
||||||
|
|
||||||
|
if (!mpu_dev || !iva_dev) {
|
||||||
pr_err("%s: Aiee.. no mpu/dsp devices? %p %p\n",
|
pr_err("%s: Aiee.. no mpu/dsp devices? %p %p\n",
|
||||||
__func__, mh, dh);
|
__func__, mpu_dev, iva_dev);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
/* Enable MPU 1GHz and lower opps */
|
/* Enable MPU 1GHz and lower opps */
|
||||||
dev = &mh->od->pdev.dev;
|
r = opp_enable(mpu_dev, 800000000);
|
||||||
r = opp_enable(dev, 800000000);
|
|
||||||
/* TODO: MPU 1GHz needs SR and ABB */
|
/* TODO: MPU 1GHz needs SR and ABB */
|
||||||
|
|
||||||
/* Enable IVA 800MHz and lower opps */
|
/* Enable IVA 800MHz and lower opps */
|
||||||
dev = &dh->od->pdev.dev;
|
r |= opp_enable(iva_dev, 660000000);
|
||||||
r |= opp_enable(dev, 660000000);
|
|
||||||
/* TODO: DSP 800MHz needs SR and ABB */
|
/* TODO: DSP 800MHz needs SR and ABB */
|
||||||
if (r) {
|
if (r) {
|
||||||
pr_err("%s: failed to enable higher opp %d\n",
|
pr_err("%s: failed to enable higher opp %d\n",
|
||||||
|
@ -516,10 +515,8 @@ static void __init beagle_opp_init(void)
|
||||||
* Cleanup - disable the higher freqs - we dont care
|
* Cleanup - disable the higher freqs - we dont care
|
||||||
* about the results
|
* about the results
|
||||||
*/
|
*/
|
||||||
dev = &mh->od->pdev.dev;
|
opp_disable(mpu_dev, 800000000);
|
||||||
opp_disable(dev, 800000000);
|
opp_disable(iva_dev, 660000000);
|
||||||
dev = &dh->od->pdev.dev;
|
|
||||||
opp_disable(dev, 660000000);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -621,7 +621,7 @@ void sr_disable(struct voltagedomain *voltdm)
|
||||||
sr_v2_disable(sr);
|
sr_v2_disable(sr);
|
||||||
}
|
}
|
||||||
|
|
||||||
pm_runtime_put_sync(&sr->pdev->dev);
|
pm_runtime_put_sync_suspend(&sr->pdev->dev);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -860,6 +860,7 @@ static int __init omap_sr_probe(struct platform_device *pdev)
|
||||||
irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
|
irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
|
||||||
|
|
||||||
pm_runtime_enable(&pdev->dev);
|
pm_runtime_enable(&pdev->dev);
|
||||||
|
pm_runtime_irq_safe(&pdev->dev);
|
||||||
|
|
||||||
sr_info->pdev = pdev;
|
sr_info->pdev = pdev;
|
||||||
sr_info->srid = pdev->id;
|
sr_info->srid = pdev->id;
|
||||||
|
|
|
@ -13,6 +13,7 @@ config ARCH_OMAP1
|
||||||
bool "TI OMAP1"
|
bool "TI OMAP1"
|
||||||
select CLKDEV_LOOKUP
|
select CLKDEV_LOOKUP
|
||||||
select CLKSRC_MMIO
|
select CLKSRC_MMIO
|
||||||
|
select GENERIC_IRQ_CHIP
|
||||||
help
|
help
|
||||||
"Systems based on omap7xx, omap15xx or omap16xx"
|
"Systems based on omap7xx, omap15xx or omap16xx"
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue