On Mon, 16 Feb 2026 10:37:43 +0100 Boris Brezillon <[email protected]> wrote:
> On Sun, 15 Feb 2026 13:02:51 +0300 > Onur Özkan <[email protected]> wrote: > > > If sram-supply is missing, Panthor falls back to a > > dummy regulator with a warning. This implicit behavior > > hides missing DT wiring behind regulator core fallback. > > > > Make SRAM handling explicit: require sram-supply for all > > Panthor compatibles except mt8196-mali where GPU supplies > > are intentionally managed outside Panthor and DT does not > > model sram-supply for that compatible. > > > > This keeps DT power modeling explicit and avoids relying on > > dummy-regulator fallback. > > > > Link: https://lore.kernel.org/all/20260213155937.6af75786@nimda/ > > Signed-off-by: Onur Özkan <[email protected]> > > --- > > drivers/gpu/drm/panthor/panthor_devfreq.c | 13 +++++++++---- > > 1 file changed, 9 insertions(+), 4 deletions(-) > > > > diff --git a/drivers/gpu/drm/panthor/panthor_devfreq.c > > b/drivers/gpu/drm/panthor/panthor_devfreq.c index > > 2249b41ca4af..5f6075f18fe3 100644 --- > > a/drivers/gpu/drm/panthor/panthor_devfreq.c +++ > > b/drivers/gpu/drm/panthor/panthor_devfreq.c @@ -206,12 +206,17 @@ > > int panthor_devfreq_init(struct panthor_device *ptdev) > > * But without knowing if it's beneficial or not (in term > > of power > > * consumption), or how much it slows down the > > suspend/resume steps, > > * let's just keep regulators enabled for the device > > lifetime. > > + * > > + * Treat sram-supply as mandatory except for mt8196-mali. > > It manages > > + * SRAM outside Panthor so this driver must not require > > direct control > > + * over it. > > */ > > - ret = devm_regulator_get_enable_optional(dev, "sram"); > > - if (ret && ret != -ENODEV) { > > - if (ret != -EPROBE_DEFER) > > + if (!of_device_is_compatible(dev->of_node, > > "mediatek,mt8196-mali")) { > > Rather than checking for specific compats here, let's go for > a dont_need_sram_supply bool in panthor_soc_data. > Makes sense. > > + ret = devm_regulator_get_enable_optional(dev, > > "sram"); > > If we assume SRAM supply is mandatory, should this be > devm_regulator_get_enable() instead? > That was the first thing I did but when I tested it, it didn't work as expected because devm_regulator_get_enable() fell back to the dummy regulator without returning an error. Regards, Onur > > + if (ret) { > > DRM_DEV_ERROR(dev, "Couldn't > > retrieve/enable sram supply\n"); > > - return ret; > > + return ret; > > + } > > } > > > > opp = devfreq_recommended_opp(dev, &cur_freq, 0); >
