Re: [PATCH RFC 01/15] dt-bindings: mfd: Split out Qcom RPM MSG RAM

From: Rob Herring
Date: Fri Mar 10 2023 - 22:01:44 EST



On Sat, 11 Mar 2023 02:21:31 +0100, Konrad Dybcio wrote:
> The RPM Message RAM is a part of the RPM low-power core's RAM that's a
> MMIO-mapped region from the main ARM CPUs' POV. It contains sleep stats
> divided per "RPM master" (ARM cluster, *DSP, ...), an interrupt controller
> (MPM) that's vital in the low-power mode entry/exit sequence, as it
> signals the readiness to enter sleep, replays the interrupts after a total
> power collapse recovery and is able to receive external interrupts from
> other IPs (like the PMIC, TSENS and USB) on the SoC to initiate a wakeup
> sequence.
>
> On top of that, it contains some regions that are (ab)used by SMEM (by
> design!), but we're not completely sure what ranges are r/w to/from.
> This would probably need to be determined on a SoC-by-SoC - or even worse
> - firmware-by-firmware basis, but since this region is quite "wild west"
> by design (it may be accessed and altered in one form or another by all of
> the subsystems at the same time) this shouldn't really worry us..
>
> Split out the bindings and re-model it as a simple-mfd to allow for better
> representation of the partitions within and allow child devices (MPM,
> master sleep stats - coming soon).
>
> Signed-off-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxx>
> ---
> .../devicetree/bindings/mfd/qcom,rpm-msg-ram.yaml | 82 ++++++++++++++++++++++
> Documentation/devicetree/bindings/sram/sram.yaml | 2 -
> 2 files changed, 82 insertions(+), 2 deletions(-)
>

My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/soc/qcom/qcom,smem.example.dtb: sram@fc428000: compatible: ['qcom,rpm-msg-ram'] is too short
From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/mfd/qcom,rpm-msg-ram.yaml
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/mfd/qcom,rpm-msg-ram.example.dtb: sram@45f0000: interrupt-controller@1b8: 'oneOf' conditional failed, one must be fixed:
'#power-domain-cells' does not match any of the regexes: 'pinctrl-[0-9]+'
From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/mfd/qcom,rpm-msg-ram.yaml
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/mfd/qcom,rpm-msg-ram.example.dtb: interrupt-controller@1b8: '#power-domain-cells' does not match any of the regexes: 'pinctrl-[0-9]+'
From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/interrupt-controller/qcom,mpm.yaml

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20230311-topic-msg_ram-v1-1-e9c2094daf09@xxxxxxxxxx

The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.