Re: [PATCH 2/2] drm/panfrost: add devfreq regulator support

From: ClÃment PÃron
Date: Sat May 02 2020 - 18:09:47 EST


Hi Steven,

On Tue, 14 Apr 2020 at 15:10, Steven Price <steven.price@xxxxxxx> wrote:
>
> Hi ClÃment,
>
> On 13/04/2020 18:28, ClÃment PÃron wrote:
> > Hi Steven,
> >

<snip>

> Getting a backtrace from the two occurrences, I see one added from:
>
> (debugfs_create_dir) from [<c04633f8>] (create_regulator+0xe0/0x220)
> (create_regulator) from [<c04681d8>] (_regulator_get+0x168/0x204)
> (_regulator_get) from [<c04682e0>] (regulator_bulk_get+0x64/0xf4)
> (regulator_bulk_get) from [<c04696f0>]
> (devm_regulator_bulk_get+0x40/0x74)
> (devm_regulator_bulk_get) from [<bf00af44>]
> (panfrost_device_init+0x1b4/0x48c [panfrost])
> (panfrost_device_init [panfrost]) from [<bf00a4d4>]
> (panfrost_probe+0x94/0x184 [panfrost])
> (panfrost_probe [panfrost]) from [<c04ee694>]
> (platform_drv_probe+0x48/0x94)
>
> And the other:
>
> (debugfs_create_dir) from [<c04633f8>] (create_regulator+0xe0/0x220)
> (create_regulator) from [<c04681d8>] (_regulator_get+0x168/0x204)
> (_regulator_get) from [<c05c1280>] (dev_pm_opp_set_regulators+0x6c/0x184)
> (dev_pm_opp_set_regulators) from [<bf00b4ac>]
> (panfrost_devfreq_init+0x38/0x1ac [panfrost])
> (panfrost_devfreq_init [panfrost]) from [<bf00a508>]
> (panfrost_probe+0xc8/0x184 [panfrost])
> (panfrost_probe [panfrost]) from [<c04ee694>]
> (platform_drv_probe+0x48/0x94)
>
> Both are created at /regulator/vdd_gpu

I'm preparing a new version with some clean from lima devfreq.
My working branch :
https://github.com/clementperon/linux/commits/panfrost_devfreq

Two strange things I observe:
- After 30sec the regulator is released by OPP ???
[ 33.757627] vdd-gpu: disabling
Introduce the regulator support in this commit:
https://github.com/clementperon/linux/commit/be310c37b82010e293b7f129ccdcb711a2abb2ce

- The Cooling map is not probe correctly :
[ 2.545756] panfrost 1800000.gpu: [drm:panfrost_devfreq_init
[panfrost]] Failed to register cooling device
Introduce in this commit :
https://github.com/clementperon/linux/commit/0252c38fd55ad78366ac4b1714e285c88db34557

Do you have an hint about what I'm missing ?

Thanks for your help,
Clement