kernel: bump 4.14 to 4.14.48 for 18.06
[openwrt/openwrt.git] / target / linux / ipq806x / patches-4.14 / 0052-PM-OPP-Update-the-voltage-tolerance-when-adjusting-t.patch
index 711e14c6cdd7b0dca2da25009e2d78b83d109c10..6299fcf25783498b859233805651b2ada36e76da 100644 (file)
@@ -18,21 +18,21 @@ Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
 --- a/drivers/base/power/opp/core.c
 +++ b/drivers/base/power/opp/core.c
 @@ -1649,6 +1649,7 @@ int dev_pm_opp_adjust_voltage(struct dev
-       struct opp_table *opp_table;
-       struct dev_pm_opp *new_opp, *tmp_opp, *opp = ERR_PTR(-ENODEV);
-       int r = 0;
+       struct opp_table *opp_table;
+       struct dev_pm_opp *new_opp, *tmp_opp, *opp = ERR_PTR(-ENODEV);
+       int r = 0;
 +      unsigned long tol;
-
-       /* keep the node allocated */
-       new_opp = kmalloc(sizeof(*new_opp), GFP_KERNEL);
+       /* keep the node allocated */
+       new_opp = kmalloc(sizeof(*new_opp), GFP_KERNEL);
 @@ -1685,6 +1686,10 @@ int dev_pm_opp_adjust_voltage(struct dev
-
-       /* plug in new node */
-       new_opp->supplies[0].u_volt = u_volt;
+       /* plug in new node */
+       new_opp->supplies[0].u_volt = u_volt;
 +      tol = u_volt * opp_table->voltage_tolerance_v1 / 100;
 +      new_opp->supplies[0].u_volt = u_volt;
 +      new_opp->supplies[0].u_volt_min = u_volt - tol;
 +      new_opp->supplies[0].u_volt_max = u_volt + tol;
-
-       list_replace(&opp->node, &new_opp->node);
-       mutex_unlock(&opp_table_lock);
+       list_replace(&opp->node, &new_opp->node);
+       mutex_unlock(&opp_table_lock);