Re: [PATCH 0/9] PCI: introduce the concept of power sequencing of PCIe devices

From: Bartosz Golaszewski
Date: Fri Jan 19 2024 - 09:12:07 EST


On Fri, Jan 19, 2024 at 3:07 PM Dmitry Baryshkov
<dmitry.baryshkov@xxxxxxxxxx> wrote:
>

[snip]

> > >
> >
> > Alright, so let's imagine we do model the PMU on the device tree. It would
> > look something like this:
> >
> > qca6390_pmu: pmic@0 {
> > compatible = "qcom,qca6390-pmu";
> >
> > bt-gpios = <...>;
> > wlan-gpios = <...>;
> >
> > vdd-supply = <&vreg...>;
> > ...
> >
> > regulators-0 {
> > vreg_x: foo {
> > ...
> > };
> >
> > ...
> > };
> > };
> >
> > Then the WLAN and BT consume the regulators from &qca6390_pmu. Obviously we
> > cannot go:
> >
> > wlan {
> > pwrseq = &qca6390_pmu;
> > };
> >
> > But it's enough to:
> >
> > wlan {
> > vdd-supply = <&vreg_x>;
> > };
>
> I'm not sure this will fly. This means expecting that regulator
> framework is reentrant, which I think is not the case.
>

Oh maybe I didn't make myself clear. That's the DT representation of
HW. With pwrseq, the BT or ATH11K drivers wouldn't use the regulator
framework. They would use the pwrseq framework and it could use the
phandle of the regulator to get into the correct pwrseq device without
making Rob and Krzysztof angry.

Bart

[snip]