Re: [PATCH v2] regulator: dt-bindings: qcom,rpmh: Indicate regulator-allow-set-load dependencies
From: Rob Herring
Date: Tue Sep 06 2022 - 17:41:26 EST
On Tue, 06 Sep 2022 15:19:59 -0500, Andrew Halaney wrote:
> For RPMH regulators it doesn't make sense to indicate
> regulator-allow-set-load without saying what modes you can switch to,
> so be sure to indicate a dependency on regulator-allowed-modes.
>
> With this in place devicetree validation can catch issues like this:
>
> /mnt/extrassd/git/linux-next/arch/arm64/boot/dts/qcom/sm8350-hdk.dtb: pm8350-rpmh-regulators: ldo5: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
> From schema: /mnt/extrassd/git/linux-next/Documentation/devicetree/bindings/regulator/qcom,rpmh-regulator.yaml
>
> Suggested-by: Johan Hovold <johan@xxxxxxxxxx>
> Signed-off-by: Andrew Halaney <ahalaney@xxxxxxxxxx>
> ---
>
> v1: https://lore.kernel.org/linux-arm-msm/20220902185148.635292-1-ahalaney@xxxxxxxxxx/
> Changes since v1:
> - Dropped first two patches in the series as they were user error
> (thanks Krzysztof for highlighting this!)
> - No change in the remaining patch
>
> Krzysztof also asked if this patch in particular should apply to other
> regulators, which I think it should for those regulator's who implement
> set_mode(). Unfortunately I don't know of a good way to get that
> information in order to apply it at a broader scope for devicetree
> regulator validation. At least with this in place RPMH users can get
> better coverage... if someone has suggestions for how to broaden the
> scope I'm all ears!
>
> Thanks,
> Andrew
>
> .../devicetree/bindings/regulator/qcom,rpmh-regulator.yaml | 4 ++++
> 1 file changed, 4 insertions(+)
>
Running 'make dtbs_check' with the schema in this patch gives the
following warnings. Consider if they are expected or the schema is
incorrect. These may not be new warnings.
Note that it is not yet a requirement to have 0 warnings for dtbs_check.
This will change in the future.
Full log is available here: https://patchwork.ozlabs.org/patch/
pm8150l-rpmh-regulators: ldo6: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sm8150-sony-xperia-kumano-bahamut.dtb
arch/arm64/boot/dts/qcom/sm8150-sony-xperia-kumano-griffin.dtb
arch/arm64/boot/dts/qcom/sm8250-sony-xperia-edo-pdx203.dtb
arch/arm64/boot/dts/qcom/sm8250-sony-xperia-edo-pdx206.dtb
pm8150l-rpmh-regulators: ldo9: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sm8150-sony-xperia-kumano-bahamut.dtb
arch/arm64/boot/dts/qcom/sm8150-sony-xperia-kumano-griffin.dtb
arch/arm64/boot/dts/qcom/sm8250-sony-xperia-edo-pdx203.dtb
arch/arm64/boot/dts/qcom/sm8250-sony-xperia-edo-pdx206.dtb
pm8350-rpmh-regulators: ldo5: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sm8350-hdk.dtb
pm8350-rpmh-regulators: ldo6: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sm8350-hdk.dtb
pm8350-rpmh-regulators: ldo7: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sm8350-hdk.dtb
pm8350-rpmh-regulators: ldo9: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sm8350-hdk.dtb
pmc8280-1-rpmh-regulators: ldo3: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sc8280xp-crd.dtb
arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dtb
pmc8280-1-rpmh-regulators: ldo4: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sc8280xp-crd.dtb
arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dtb
pmc8280-1-rpmh-regulators: ldo6: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sc8280xp-crd.dtb
arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dtb
pmc8280-2-rpmh-regulators: ldo3: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sc8280xp-crd.dtb
arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dtb
pmc8280-2-rpmh-regulators: ldo4: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sc8280xp-crd.dtb
arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dtb
pmc8280-2-rpmh-regulators: ldo6: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sc8280xp-crd.dtb
pmc8280-2-rpmh-regulators: ldo7: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sc8280xp-crd.dtb
arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dtb
pmc8280-2-rpmh-regulators: ldo9: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sc8280xp-crd.dtb
arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dtb
pmc8280c-rpmh-regulators: ldo12: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dtb
pmc8280c-rpmh-regulators: ldo13: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sc8280xp-crd.dtb
arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dtb
pmc8280c-rpmh-regulators: ldo1: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sc8280xp-crd.dtb
arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dtb
pmc8280c-rpmh-regulators: ldo7: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sc8280xp-crd.dtb
pmm8155au-1-rpmh-regulators: ldo10: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8155p-adp.dtb
pmm8155au-1-rpmh-regulators: ldo5: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8155p-adp.dtb
pmm8155au-2-rpmh-regulators: ldo5: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8155p-adp.dtb
pmm8155au-2-rpmh-regulators: ldo8: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8155p-adp.dtb
pmm8540-a-regulators: ldo13: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb
pmm8540-a-regulators: ldo3: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb
pmm8540-a-regulators: ldo5: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb
pmm8540-a-regulators: ldo7: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb
pmm8540-c-regulators: ldo10: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb
pmm8540-c-regulators: ldo17: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb
pmm8540-c-regulators: ldo1: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb
pmm8540-c-regulators: ldo2: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb
pmm8540-c-regulators: ldo3: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb
pmm8540-c-regulators: ldo4: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb
pmm8540-c-regulators: ldo6: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb
pmm8540-c-regulators: ldo7: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb
pmm8540-g-regulators: ldo3: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb
pmm8540-g-regulators: ldo7: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb
pmm8540-g-regulators: ldo8: 'regulator-allowed-modes' is a dependency of 'regulator-allow-set-load'
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb
pmm8540-g-regulators: qcom,pmic-id:0: 'g' is not one of ['a', 'b', 'c', 'd', 'e', 'f', 'h', 'k']
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb
pmm8540-g-regulators: Unevaluated properties are not allowed ('qcom,pmic-id' was unexpected)
arch/arm64/boot/dts/qcom/sa8295p-adp.dtb