Re: [PATCH v5 3/5] dt-bindings: PCI: qcom: Document the IPQ5332 PCIe controller

From: Krzysztof Kozlowski
Date: Wed Jan 08 2025 - 05:11:17 EST


On 08/01/2025 08:40, Varadarajan Narayanan wrote:
> On Wed, Jan 08, 2025 at 08:19:19AM +0100, Krzysztof Kozlowski wrote:
>> On 07/01/2025 12:05, Varadarajan Narayanan wrote:
>>>>> ---
>>>>> Documentation/devicetree/bindings/pci/qcom,pcie.yaml | 10 ++++++++--
>>>>> 1 file changed, 8 insertions(+), 2 deletions(-)
>>>>>
>>>>> diff --git a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml
>>>>> index bd87f6b49d68..9f37eca1ce0d 100644
>>>>> --- a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml
>>>>> +++ b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml
>>>>> @@ -26,7 +26,6 @@ properties:
>>>>> - qcom,pcie-ipq8064-v2
>>>>> - qcom,pcie-ipq8074
>>>>> - qcom,pcie-ipq8074-gen3
>>>>> - - qcom,pcie-ipq9574
>>>>
>>>> I don't understand this change at all and your commit msg explains
>>>> here nothing.
>>>
>>> All DT entries except "reg" is similar between ipq5332 and
>>> ipq9574. ipq9574 has 5 registers while ipq5332 has 6. MHI is the
>>> additional (i.e. sixth) entry for ipq5332.
>>>
>>> If ipq9574 is not removed from here, dt_binding_check gives the
>>> following errors
>>>
>>> 1. /local/mnt/workspace/varada/upstream/pci-v6/arch/arm64/boot/dts/qcom/ipq5332-rdp474.dtb: pcie@18000000: reg: [[557056, 12288], [402653184, 3869], [402657056, 168], [402657280, 4096], [403701760, 4096], [569344, 4096]] is too long
>>>
>>> Failed validating 'maxItems' in schema['allOf'][2]['then']['properties']['reg']:
>>> {'maxItems': 5, 'minItems': 5}
>>>
>>> 2. /local/mnt/workspace/varada/upstream/pci-v6/arch/arm64/boot/dts/qcom/ipq5332-rdp474.dtb: pcie@18000000: reg-names: ['parf', 'dbi', 'elbi', 'atu', 'config', 'mhi'] is too long
>>>
>>> Failed validating 'maxItems' in schema['allOf'][2]['then']['properties']['reg-names']:
>>> {'items': [{'const': 'dbi'},
>>> {'const': 'elbi'},
>>> {'const': 'atu'},
>>> {'const': 'parf'},
>>> {'const': 'config'}],
>>> 'maxItems': 5,
>>> 'minItems': 5,
>>> 'type': 'array'}
>>>
>>> Hence had to remove it from here and add it to the sdx55 reg
>>> definition.
>>
>> So you entirely dropped constrain for regs. No. This has to be fixed,
>> not dropped.
>
> ipq9574 is not dropped entirely. It is clubbed with sdx55's
> constraints. Please see this
>
> @@ -206,6 +208,8 @@ allOf:
> compatible:
> contains:
> enum:
> + - qcom,pcie-ipq5332
> + - qcom,pcie-ipq9574
> - qcom,pcie-sdx55
Correct, not dropped entirely, but now it receives mhi for no reason.
This should be separate commit with its own explanation - why ipq9574
has now MHI address space.

Best regards,
Krzysztof