[PATCH V226/7] dt-bindings: PCI: host-generic-pci: Add snps,dw-pcie-ecam-msi binding
Mayank Rana
quic_mrana at quicinc.com
Tue Jul 16 15:09:28 PDT 2024
Hi Krzysztof
On 7/16/2024 12:28 AM, Krzysztof Kozlowski wrote:
> On 15/07/2024 20:13, Mayank Rana wrote:
>> To support MSI functionality using Synopsys DesignWare PCIe controller
>> based MSI controller with ECAM driver, add "snps,dw-pcie-ecam-msi
>> compatible binding which uses provided SPIs to support MSI functionality.
>
> To support MSI, you add MSI support... That's a tautology. Describe
> hardware instead.
Ok. let me repharse it to provide more useful information.
>>
>> Signed-off-by: Mayank Rana <quic_mrana at quicinc.com>
>> ---
>> .../devicetree/bindings/pci/host-generic-pci.yaml | 57 ++++++++++++++++++++++
>> 1 file changed, 57 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/pci/host-generic-pci.yaml b/Documentation/devicetree/bindings/pci/host-generic-pci.yaml
>> index 9c714fa..9e860d5 100644
>> --- a/Documentation/devicetree/bindings/pci/host-generic-pci.yaml
>> +++ b/Documentation/devicetree/bindings/pci/host-generic-pci.yaml
>> @@ -81,6 +81,12 @@ properties:
>> - marvell,armada8k-pcie-ecam
>> - socionext,synquacer-pcie-ecam
>> - const: snps,dw-pcie-ecam
>> + - description: |
>> + Firmware is configuring Synopsys DesignWare PCIe controller in RC mode with
>> + ECAM compatible fashion. To use MSI controller of Synopsys DesignWare PCIe
>> + controller for MSI functionality, this compatible is used.
>> + items:
>> + - const: snps,dw-pcie-ecam-msi
>
> MSI is already present in the binding, isn't it?
It is mentioning as msi-parent usage which could be different MSI
controller (GIC or vendor specific one) not related to designware PCIe
controller based MSI controller.
>Anyway, aren't you
> forgetting specific compatible? Please open your internal (quite
> comprehensive) guideline on bindings and DTS.
Here I am trying to define Designware based PCIe ECAM controller
supporting MSIcontroller based device. Hence I am not mentioning vendor
specific compatible usage
and keeping generic compatible binding for such device.
>
>> - description:
>> CAM or ECAM compliant PCI host controllers without any quirks
>> enum:
>> @@ -116,6 +122,20 @@ properties:
>> A phandle to the node that controls power or/and system resource or interface to firmware
>> to enable ECAM compliant PCIe root complex.
>>
>> + interrupts:
>> + description:
>> + DWC PCIe Root Port/Complex specific MSI interrupt/IRQs.
>> + minItems: 1
>> + maxItems: 8
>> +
>> + interrupt-names:
>> + description:
>> + MSI interrupt names
>> + minItems: 1
>> + maxItems: 8
>> + items:
>> + pattern: '^msi[0-9]+$'
>
> Why the same devices have variable numbers?
Max supported MSI with designware PCIe controller is 8 Only, and it
depends if those all are
used or some of used on specific vendor based device. Hence I have kept
it here variable names. Although here it should be [0 - 7] instead of
[0 - 9].
>> +
>> required:
>> - compatible
>> - reg
>> @@ -146,11 +166,22 @@ allOf:
>> reg:
>> maxItems: 1
>
>
> Best regards,
> Krzysztof
>
More information about the linux-arm-kernel
mailing list