diff options
Diffstat (limited to 'arch/arm/mach-omap2/opp.c')
| -rw-r--r-- | arch/arm/mach-omap2/opp.c | 10 | 
1 files changed, 7 insertions, 3 deletions
diff --git a/arch/arm/mach-omap2/opp.c b/arch/arm/mach-omap2/opp.c index bd41d59a7ca..a358a07e18f 100644 --- a/arch/arm/mach-omap2/opp.c +++ b/arch/arm/mach-omap2/opp.c @@ -17,7 +17,8 @@   * GNU General Public License for more details.   */  #include <linux/module.h> -#include <linux/opp.h> +#include <linux/of.h> +#include <linux/pm_opp.h>  #include <linux/cpu.h>  #include "omap_device.h" @@ -40,6 +41,9 @@ int __init omap_init_opp_table(struct omap_opp_def *opp_def,  {  	int i, r; +	if (of_have_populated_dt()) +		return -EINVAL; +  	if (!opp_def || !opp_def_size) {  		pr_err("%s: invalid params!\n", __func__);  		return -EINVAL; @@ -81,14 +85,14 @@ int __init omap_init_opp_table(struct omap_opp_def *opp_def,  			dev = &oh->od->pdev->dev;  		} -		r = opp_add(dev, opp_def->freq, opp_def->u_volt); +		r = dev_pm_opp_add(dev, opp_def->freq, opp_def->u_volt);  		if (r) {  			dev_err(dev, "%s: add OPP %ld failed for %s [%d] result=%d\n",  				__func__, opp_def->freq,  				opp_def->hwmod_name, i, r);  		} else {  			if (!opp_def->default_available) -				r = opp_disable(dev, opp_def->freq); +				r = dev_pm_opp_disable(dev, opp_def->freq);  			if (r)  				dev_err(dev, "%s: disable %ld failed for %s [%d] result=%d\n",  					__func__, opp_def->freq,  | 
