OSDN Git Service

arm64: dts: apple: t8103: Add root port interrupt routing
authorMarc Zyngier <maz@kernel.org>
Mon, 25 Oct 2021 21:10:17 +0000 (22:10 +0100)
committerHector Martin <marcan@marcan.st>
Wed, 27 Oct 2021 12:12:30 +0000 (21:12 +0900)
Add the interrupt-map properties that are required for INTx
signalling.

Tested-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Hector Martin <marcan@marcan.st>
arch/arm64/boot/dts/apple/t8103.dtsi

index ded82a7..fc8b2bb 100644 (file)
                        pinctrl-0 = <&pcie_pins>;
                        pinctrl-names = "default";
 
-                       pci@0,0 {
+                       port00: pci@0,0 {
                                device_type = "pci";
                                reg = <0x0 0x0 0x0 0x0 0x0>;
                                reset-gpios = <&pinctrl_ap 152 0>;
                                #address-cells = <3>;
                                #size-cells = <2>;
                                ranges;
+
+                               interrupt-controller;
+                               #interrupt-cells = <1>;
+
+                               interrupt-map-mask = <0 0 0 7>;
+                               interrupt-map = <0 0 0 1 &port00 0 0 0 0>,
+                                               <0 0 0 2 &port00 0 0 0 1>,
+                                               <0 0 0 3 &port00 0 0 0 2>,
+                                               <0 0 0 4 &port00 0 0 0 3>;
                        };
 
-                       pci@1,0 {
+                       port01: pci@1,0 {
                                device_type = "pci";
                                reg = <0x800 0x0 0x0 0x0 0x0>;
                                reset-gpios = <&pinctrl_ap 153 0>;
                                #address-cells = <3>;
                                #size-cells = <2>;
                                ranges;
+
+                               interrupt-controller;
+                               #interrupt-cells = <1>;
+
+                               interrupt-map-mask = <0 0 0 7>;
+                               interrupt-map = <0 0 0 1 &port01 0 0 0 0>,
+                                               <0 0 0 2 &port01 0 0 0 1>,
+                                               <0 0 0 3 &port01 0 0 0 2>,
+                                               <0 0 0 4 &port01 0 0 0 3>;
                        };
 
-                       pci@2,0 {
+                       port02: pci@2,0 {
                                device_type = "pci";
                                reg = <0x1000 0x0 0x0 0x0 0x0>;
                                reset-gpios = <&pinctrl_ap 33 0>;
                                #address-cells = <3>;
                                #size-cells = <2>;
                                ranges;
+
+                               interrupt-controller;
+                               #interrupt-cells = <1>;
+
+                               interrupt-map-mask = <0 0 0 7>;
+                               interrupt-map = <0 0 0 1 &port02 0 0 0 0>,
+                                               <0 0 0 2 &port02 0 0 0 1>,
+                                               <0 0 0 3 &port02 0 0 0 2>,
+                                               <0 0 0 4 &port02 0 0 0 3>;
                        };
                };
        };