WSL2-Linux-Kernel/drivers/gpu/drm/panfrost
Clément Péron 2340f23c77 drm/panfrost: devfreq: set opp to the recommended one to configure regulator
[ Upstream commit d76034a427 ]

Enabling panfrost GPU OPP with dynamic regulator will make OPP
responsible to enable and configure it.

Unfortunately OPP configure and enable the regulator when an OPP
is asked to be set, which is not the case during
panfrost_devfreq_init().

This leave the regulator unconfigured and if no GPU load is
triggered, no OPP is asked to be set which make the regulator framework
switching it off during regulator_late_cleanup() without
noticing and therefore make the board hang as any access to GPU
memory space make bus locks up.

Call dev_pm_opp_set_opp() with the recommend OPP in
panfrost_devfreq_init() to enable the regulator, this will properly
configure and enable the regulator and will avoid any switch off
by regulator_late_cleanup().

Suggested-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Clément Péron <peron.clem@gmail.com>
Reviewed-by: Steven Price <steven.price@arm.com>
Signed-off-by: Steven Price <steven.price@arm.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220906153034.153321-5-peron.clem@gmail.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-09-23 14:15:51 +02:00
..
Kconfig
Makefile
TODO
panfrost_devfreq.c drm/panfrost: devfreq: set opp to the recommended one to configure regulator 2022-09-23 14:15:51 +02:00
panfrost_devfreq.h
panfrost_device.c
panfrost_device.h
panfrost_drv.c drm/shmem-helper: Pass GEM shmem object in public interfaces 2022-08-17 14:23:19 +02:00
panfrost_features.h
panfrost_gem.c drm/shmem-helper: Pass GEM shmem object in public interfaces 2022-08-17 14:23:19 +02:00
panfrost_gem.h
panfrost_gem_shrinker.c drm/shmem-helper: Pass GEM shmem object in public interfaces 2022-08-17 14:23:19 +02:00
panfrost_gpu.c drm/panfrost: Check for error num after setting mask 2022-04-08 14:23:24 +02:00
panfrost_gpu.h
panfrost_issues.h
panfrost_job.c
panfrost_job.h
panfrost_mmu.c drm/shmem-helper: Pass GEM shmem object in public interfaces 2022-08-17 14:23:19 +02:00
panfrost_mmu.h
panfrost_perfcnt.c drm/shmem-helper: Pass GEM shmem object in public interfaces 2022-08-17 14:23:19 +02:00
panfrost_perfcnt.h
panfrost_regs.h drm/panfrost: Clamp lock region to Bifrost minimum 2021-08-25 15:40:19 +01:00