Re: [PATCH 3/3] power: reset: add new gs101-poweroff driver

From: Peter Griffin
Date: Fri Mar 22 2024 - 08:25:30 EST


Hi Krzysztof,

Thanks for your review feedback!

On Wed, 20 Mar 2024 at 07:20, Krzysztof Kozlowski
<krzysztof.kozlowski@xxxxxxxxxx> wrote:
>
> On 20/03/2024 03:05, Alexey Klimov wrote:
> > +
> > + ret = devm_work_autocancel(dev, &gs101->shutdown_work,
> > + gs101_shutdown_work_fn);
> > + if (ret) {
> > + dev_err(dev, "failed to register gs101 shutdown_work: %i\n", ret);
> > + unregister_keyboard_notifier(&gs101->keyboard_nb);
> > + return ret;
> > + }
> > +
> > + gs101_poweroff_ctx = gs101;
> > + platform_set_drvdata(pdev, gs101);
> > +
> > + /*
> > + * At this point there is a chance that psci_sys_poweroff already
> > + * registered as pm_power_off hook but unfortunately it cannot power
> > + * off the gs101 SoC hence we are rewriting it here just as is.
> > + */
> > + pm_power_off = gs101_poweroff;
>
> So that's a duplicated syscon power off driver. Why syscon does not
> work? syscon_node_to_regmap() does not return correct regmap?

Yes, for gs101 the regmap handling PMU registers is now created by
exynos-pmu driver and is obtained using
exynos_get_pmu_regmap_by_phandle() API. That was required due to the
SMC call required to write to these registers from Linux.

> If so,
> this should be fixed instead of copying the driver with basically only
> one difference.

Are you suggesting we should add some API to syscon.c that allows
regmaps created in other drivers like exynos-pmu.c or altera-sysmgr.c
to be registered in the syscon_list?

Thanks,

Peter