The entries in arrays must have fixed order, so the bindings and Linux driver expecting various combinations of 'reg' addresses was never actually conforming to guidelines. Specifically Linux driver always expects 'core' reg entry as second item, but some DTSes are having there 'cqhci'. Bring at least some sanity here by enforcing one known (used in DTS) configuration of 'reg': 'hc' followed by 'core' for older variants. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> --- .../devicetree/bindings/mmc/sdhci-msm.yaml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Documentation/devicetree/bindings/mmc/sdhci-msm.yaml b/Documentation/devicetree/bindings/mmc/sdhci-msm.yaml index 10707c4f7184..ac48e36a6949 100644 --- a/Documentation/devicetree/bindings/mmc/sdhci-msm.yaml +++ b/Documentation/devicetree/bindings/mmc/sdhci-msm.yaml @@ -176,6 +176,22 @@ required: allOf: - $ref: mmc-controller.yaml# + - if: + properties: + compatible: + contains: + enum: + - qcom,sdhci-msm-v4 + then: + properties: + reg: + minItems: 2 + maxItems: 2 + reg-names: + items: + - const: hc + - const: core + unevaluatedProperties: false examples: -- 2.34.1