diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2022-07-16 10:56:28 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2022-07-16 10:56:28 -0700 |
commit | ab6efe68a736748cf922a7641751583a3c783cb1 (patch) | |
tree | 17ca360b70ae948474c4f7817feac33194d620aa /drivers | |
parent | 16c957f089d520893b0b08e06641329fbcec492d (diff) | |
parent | 5a5adb1528e59e8a4b23ffa7dda4849b61e97cf8 (diff) | |
download | lwn-ab6efe68a736748cf922a7641751583a3c783cb1.tar.gz lwn-ab6efe68a736748cf922a7641751583a3c783cb1.zip |
Merge tag 'pm-5.19-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
Pull power management fix from Rafael Wysocki
"Fix recent regression in the cpufreq mediatek driver related to
incorrect handling of regulator_get_optional() return value
(AngeloGioacchino Del Regno)"
* tag 'pm-5.19-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
cpufreq: mediatek: Handle sram regulator probe deferral
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/cpufreq/mediatek-cpufreq.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/cpufreq/mediatek-cpufreq.c b/drivers/cpufreq/mediatek-cpufreq.c index 37a1eb20f5ba..76f6b3884e6b 100644 --- a/drivers/cpufreq/mediatek-cpufreq.c +++ b/drivers/cpufreq/mediatek-cpufreq.c @@ -439,9 +439,13 @@ static int mtk_cpu_dvfs_info_init(struct mtk_cpu_dvfs_info *info, int cpu) /* Both presence and absence of sram regulator are valid cases. */ info->sram_reg = regulator_get_optional(cpu_dev, "sram"); - if (IS_ERR(info->sram_reg)) + if (IS_ERR(info->sram_reg)) { + ret = PTR_ERR(info->sram_reg); + if (ret == -EPROBE_DEFER) + goto out_free_resources; + info->sram_reg = NULL; - else { + } else { ret = regulator_enable(info->sram_reg); if (ret) { dev_warn(cpu_dev, "cpu%d: failed to enable vsram\n", cpu); |