rk3576 is using dwc controller, with msi interrupt directly to gic instead of to gic its, so - no its support is required and the 'msi-map' is not need anymore, - a new 'msi' interrupt is needed. Signed-off-by: Kever Yang <kever.yang@xxxxxxxxxxxxxx> --- Changes in v6: - Fix make dt_binding_check and make CHECK_DTBS=y Changes in v5: - Add constraints per device for interrupt-names due to the interrupt is different from rk3588. Changes in v4: - Fix wrong indentation in dt_binding_check report by Rob Changes in v3: - Fix dtb check broken on rk3588 - Update commit message Changes in v2: - remove required 'msi-map' - add interrupt name 'msi' .../bindings/pci/rockchip-dw-pcie-common.yaml | 59 +++++++++++++++---- .../bindings/pci/rockchip-dw-pcie.yaml | 4 +- 2 files changed, 50 insertions(+), 13 deletions(-) diff --git a/Documentation/devicetree/bindings/pci/rockchip-dw-pcie-common.yaml b/Documentation/devicetree/bindings/pci/rockchip-dw-pcie-common.yaml index cc9adfc7611c..069eb267c0bb 100644 --- a/Documentation/devicetree/bindings/pci/rockchip-dw-pcie-common.yaml +++ b/Documentation/devicetree/bindings/pci/rockchip-dw-pcie-common.yaml @@ -64,6 +64,10 @@ properties: interrupts - aer_rc_err, aer_rc_err_msi, rx_cpl_timeout, tx_cpl_timeout, cor_err_sent, nf_err_sent, f_err_sent, cor_err_rx, nf_err_rx, f_err_rx, radm_qoverflow + - description: + Combinded MSI line interrupt, which is to support MSI interrupts + output to GIC controller via GIC SPI interrupt instead of GIC its + interrupt. - description: eDMA write channel 0 interrupt - description: @@ -75,16 +79,6 @@ properties: interrupt-names: minItems: 5 - items: - - const: sys - - const: pmc - - const: msg - - const: legacy - - const: err - - const: dma0 - - const: dma1 - - const: dma2 - - const: dma3 num-lanes: true @@ -123,4 +117,49 @@ required: additionalProperties: true +anyOf: + - if: + properties: + compatible: + contains: + enum: + - rockchip,rk3568-pcie + - rockchip,rk3588-pcie + - rockchip,rk3588-pcie-ep + then: + properties: + interrupt-names: + minItems: 5 + type: array + items: + - const: sys + - const: pmc + - const: msg + - const: legacy + - const: err + - const: dma0 + - const: dma1 + - const: dma2 + - const: dma3 + + - if: + properties: + compatible: + contains: + enum: + - rockchip,rk3576-pcie + then: + properties: + interrupt-names: + type: array + items: + - const: sys + - const: pmc + - const: msg + - const: legacy + - const: err + - const: msi + minItems: 6 + maxItems: 6 + ... diff --git a/Documentation/devicetree/bindings/pci/rockchip-dw-pcie.yaml b/Documentation/devicetree/bindings/pci/rockchip-dw-pcie.yaml index 550d8a684af3..9a464731fa4a 100644 --- a/Documentation/devicetree/bindings/pci/rockchip-dw-pcie.yaml +++ b/Documentation/devicetree/bindings/pci/rockchip-dw-pcie.yaml @@ -26,6 +26,7 @@ properties: - const: rockchip,rk3568-pcie - items: - enum: + - rockchip,rk3576-pcie - rockchip,rk3588-pcie - const: rockchip,rk3568-pcie @@ -71,9 +72,6 @@ properties: vpcie3v3-supply: true -required: - - msi-map - unevaluatedProperties: false examples: -- 2.25.1