|
|
|
@ -491,23 +491,22 @@ static void __init beagle_opp_init(void) |
|
|
|
|
|
|
|
|
|
/* Custom OPP enabled for all xM versions */ |
|
|
|
|
if (cpu_is_omap3630()) { |
|
|
|
|
struct omap_hwmod *mh = omap_hwmod_lookup("mpu"); |
|
|
|
|
struct omap_hwmod *dh = omap_hwmod_lookup("iva"); |
|
|
|
|
struct device *dev; |
|
|
|
|
struct device *mpu_dev, *iva_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", |
|
|
|
|
__func__, mh, dh); |
|
|
|
|
__func__, mpu_dev, iva_dev); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
/* Enable MPU 1GHz and lower opps */ |
|
|
|
|
dev = &mh->od->pdev.dev; |
|
|
|
|
r = opp_enable(dev, 800000000); |
|
|
|
|
r = opp_enable(mpu_dev, 800000000); |
|
|
|
|
/* TODO: MPU 1GHz needs SR and ABB */ |
|
|
|
|
|
|
|
|
|
/* Enable IVA 800MHz and lower opps */ |
|
|
|
|
dev = &dh->od->pdev.dev; |
|
|
|
|
r |= opp_enable(dev, 660000000); |
|
|
|
|
r |= opp_enable(iva_dev, 660000000); |
|
|
|
|
/* TODO: DSP 800MHz needs SR and ABB */ |
|
|
|
|
if (r) { |
|
|
|
|
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 |
|
|
|
|
* about the results |
|
|
|
|
*/ |
|
|
|
|
dev = &mh->od->pdev.dev; |
|
|
|
|
opp_disable(dev, 800000000); |
|
|
|
|
dev = &dh->od->pdev.dev; |
|
|
|
|
opp_disable(dev, 660000000); |
|
|
|
|
opp_disable(mpu_dev, 800000000); |
|
|
|
|
opp_disable(iva_dev, 660000000); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
return; |
|
|
|
|