Message ID | 20200708154554.26450-18-wens@csie.org (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
Series | PM / OPP v2 & cpufreq backports part 2 | expand |
Hi! On Wed 2020-07-08 23:45:48, Chen-Yu Tsai (Moxa) wrote: > From: Jon Hunter <jonathanh@nvidia.com> > > commit 78ecc56247f0ec2bc0cf6f2f2af69e98d99767bc upstream. > > Commit 7d34d56ef334 (PM / OPP: Disable OPPs that aren't supported by > the regulator) causes a crash to happen on Tegra124 Jetson TK1 when > using the DFLL clock source for the CPU. The DFLL manages the voltage > itself and so there is no regulator specified for the OPPs and so we > get a crash when we try to dereference the regulator pointer. Fix > this by checking to see if the regulator IS_ERR_OR_NULL before > dereferencing it. > > Fixes: 7d34d56ef334 (PM / OPP: Disable OPPs that aren't supported by So this one should be close to the patch it fixes, or maybe squashed together. Best regards, Pavel > diff --git a/drivers/base/power/opp/core.c b/drivers/base/power/opp/core.c > index 91b4cc261d84a..067379f931662 100644 > --- a/drivers/base/power/opp/core.c > +++ b/drivers/base/power/opp/core.c > @@ -975,7 +975,7 @@ static bool _opp_supported_by_regulators(struct dev_pm_opp *opp, > { > struct regulator *reg = dev_opp->regulator; > > - if (!IS_ERR(reg) && > + if (!IS_ERR_OR_NULL(reg) && > !regulator_is_supported_voltage(reg, opp->u_volt_min, > opp->u_volt_max)) { > pr_warn("%s: OPP minuV: %lu maxuV: %lu, not supported by regulator\n",
diff --git a/drivers/base/power/opp/core.c b/drivers/base/power/opp/core.c index 91b4cc261d84a..067379f931662 100644 --- a/drivers/base/power/opp/core.c +++ b/drivers/base/power/opp/core.c @@ -975,7 +975,7 @@ static bool _opp_supported_by_regulators(struct dev_pm_opp *opp, { struct regulator *reg = dev_opp->regulator; - if (!IS_ERR(reg) && + if (!IS_ERR_OR_NULL(reg) && !regulator_is_supported_voltage(reg, opp->u_volt_min, opp->u_volt_max)) { pr_warn("%s: OPP minuV: %lu maxuV: %lu, not supported by regulator\n",