Merge branches 'pm-cpufreq' and 'pm-opp'
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 23 Feb 2021 18:47:03 +0000 (19:47 +0100)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 23 Feb 2021 18:47:03 +0000 (19:47 +0100)
* pm-cpufreq:
  cpufreq: Fix typo in kerneldoc comment
  cpufreq: schedutil: Remove update_lock comment from struct sugov_policy definition
  cpufreq: schedutil: Remove needless sg_policy parameter from ignore_dl_rate_limit()
  cpufreq: ACPI: Set cpuinfo.max_freq directly if max boost is known
  cpufreq: qcom-hw: drop devm_xxx() calls from init/exit hooks

* pm-opp:
  opp: Don't skip freq update for different frequency

1  2  3 
drivers/cpufreq/qcom-cpufreq-hw.c

@@@@ -303,14 -305,28 -303,14 +305,28 @@@@ static int qcom_cpufreq_hw_cpu_init(str
   
        index = args.args[0];
   
- -     base = devm_platform_ioremap_resource(pdev, index);
- -     if (IS_ERR(base))
- -             return PTR_ERR(base);
+ +     res = platform_get_resource(pdev, IORESOURCE_MEM, index);
+ +     if (!res) {
+ +             dev_err(dev, "failed to get mem resource %d\n", index);
+ +             return -ENODEV;
+ +     }
+ +
+ +     if (!request_mem_region(res->start, resource_size(res), res->name)) {
+ +             dev_err(dev, "failed to request resource %pR\n", res);
+ +             return -EBUSY;
+ +     }
  +
-       data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL);
+ +     base = ioremap(res->start, resource_size(res));
+ +     if (IS_ERR(base)) {
+ +             dev_err(dev, "failed to map resource %pR\n", res);
+ +             ret = PTR_ERR(base);
+ +             goto release_region;
+ +     }
+  
  -     data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL);
+ +     data = kzalloc(sizeof(*data), GFP_KERNEL);
        if (!data) {
                ret = -ENOMEM;
- -             goto error;
+ +             goto unmap_base;
        }
   
        data->soc_data = of_device_get_match_data(&pdev->dev);
   
        dev_pm_opp_of_register_em(cpu_dev, policy->cpus);
   
  +     if (policy_has_boost_freq(policy)) {
  +             ret = cpufreq_enable_boost_support();
  +             if (ret)
  +                     dev_warn(cpu_dev, "failed to enable boost: %d\n", ret);
  +     }
  +
        return 0;
   error:
- -     devm_iounmap(dev, base);
+ +     kfree(data);
+ +unmap_base:
+ +     iounmap(data->base);
+ +release_region:
+ +     release_mem_region(res->start, resource_size(res));
        return ret;
   }