17b0b0191SHector Martin// SPDX-License-Identifier: GPL-2.0+ OR MIT 27b0b0191SHector Martin/* 37b0b0191SHector Martin * Devices used on die 0 on the Apple T6002 "M1 Ultra" SoC and present on 47b0b0191SHector Martin * Apple T6000 / T6001 "M1 Pro" / "M1 Max". 57b0b0191SHector Martin * 67b0b0191SHector Martin * Copyright The Asahi Linux Contributors 77b0b0191SHector Martin */ 87b0b0191SHector Martin 97b0b0191SHector Martin 1051979fbbSJanne Grunau nco: clock-controller@28e03c000 { 1151979fbbSJanne Grunau compatible = "apple,t6000-nco", "apple,nco"; 1251979fbbSJanne Grunau reg = <0x2 0x8e03c000 0x0 0x14000>; 1351979fbbSJanne Grunau clocks = <&nco_clkref>; 1451979fbbSJanne Grunau #clock-cells = <1>; 1551979fbbSJanne Grunau }; 1651979fbbSJanne Grunau 177b0b0191SHector Martin aic: interrupt-controller@28e100000 { 187b0b0191SHector Martin compatible = "apple,t6000-aic", "apple,aic2"; 197b0b0191SHector Martin #interrupt-cells = <4>; 207b0b0191SHector Martin interrupt-controller; 217b0b0191SHector Martin reg = <0x2 0x8e100000 0x0 0xc000>, 227b0b0191SHector Martin <0x2 0x8e10c000 0x0 0x4>; 237b0b0191SHector Martin reg-names = "core", "event"; 247b0b0191SHector Martin power-domains = <&ps_aic>; 257b0b0191SHector Martin }; 267b0b0191SHector Martin 277b0b0191SHector Martin pinctrl_smc: pinctrl@290820000 { 287b0b0191SHector Martin compatible = "apple,t6000-pinctrl", "apple,pinctrl"; 297b0b0191SHector Martin reg = <0x2 0x90820000 0x0 0x4000>; 307b0b0191SHector Martin 317b0b0191SHector Martin gpio-controller; 327b0b0191SHector Martin #gpio-cells = <2>; 337b0b0191SHector Martin gpio-ranges = <&pinctrl_smc 0 0 30>; 347b0b0191SHector Martin apple,npins = <30>; 357b0b0191SHector Martin 367b0b0191SHector Martin interrupt-controller; 377b0b0191SHector Martin #interrupt-cells = <2>; 387b0b0191SHector Martin interrupt-parent = <&aic>; 397b0b0191SHector Martin interrupts = <AIC_IRQ 0 743 IRQ_TYPE_LEVEL_HIGH>, 407b0b0191SHector Martin <AIC_IRQ 0 744 IRQ_TYPE_LEVEL_HIGH>, 417b0b0191SHector Martin <AIC_IRQ 0 745 IRQ_TYPE_LEVEL_HIGH>, 427b0b0191SHector Martin <AIC_IRQ 0 746 IRQ_TYPE_LEVEL_HIGH>, 437b0b0191SHector Martin <AIC_IRQ 0 747 IRQ_TYPE_LEVEL_HIGH>, 447b0b0191SHector Martin <AIC_IRQ 0 748 IRQ_TYPE_LEVEL_HIGH>, 457b0b0191SHector Martin <AIC_IRQ 0 749 IRQ_TYPE_LEVEL_HIGH>; 467b0b0191SHector Martin }; 477b0b0191SHector Martin 487b0b0191SHector Martin wdt: watchdog@2922b0000 { 497b0b0191SHector Martin compatible = "apple,t6000-wdt", "apple,wdt"; 507b0b0191SHector Martin reg = <0x2 0x922b0000 0x0 0x4000>; 517b0b0191SHector Martin clocks = <&clkref>; 527b0b0191SHector Martin interrupt-parent = <&aic>; 537b0b0191SHector Martin interrupts = <AIC_IRQ 0 631 IRQ_TYPE_LEVEL_HIGH>; 547b0b0191SHector Martin }; 557b0b0191SHector Martin 5651979fbbSJanne Grunau dart_sio_0: iommu@39b004000 { 5751979fbbSJanne Grunau compatible = "apple,t6000-dart"; 5851979fbbSJanne Grunau reg = <0x3 0x9b004000 0x0 0x4000>; 5951979fbbSJanne Grunau interrupt-parent = <&aic>; 6051979fbbSJanne Grunau interrupts = <AIC_IRQ 0 1130 IRQ_TYPE_LEVEL_HIGH>; 6151979fbbSJanne Grunau #iommu-cells = <1>; 6251979fbbSJanne Grunau power-domains = <&ps_sio_cpu>; 6351979fbbSJanne Grunau }; 6451979fbbSJanne Grunau 6551979fbbSJanne Grunau dart_sio_1: iommu@39b008000 { 6651979fbbSJanne Grunau compatible = "apple,t6000-dart"; 6751979fbbSJanne Grunau reg = <0x3 0x9b008000 0x0 0x8000>; 6851979fbbSJanne Grunau interrupt-parent = <&aic>; 6951979fbbSJanne Grunau interrupts = <AIC_IRQ 0 1130 IRQ_TYPE_LEVEL_HIGH>; 7051979fbbSJanne Grunau #iommu-cells = <1>; 7151979fbbSJanne Grunau power-domains = <&ps_sio_cpu>; 7251979fbbSJanne Grunau }; 7351979fbbSJanne Grunau 747b0b0191SHector Martin i2c0: i2c@39b040000 { 757b0b0191SHector Martin compatible = "apple,t6000-i2c", "apple,i2c"; 767b0b0191SHector Martin reg = <0x3 0x9b040000 0x0 0x4000>; 777b0b0191SHector Martin clocks = <&clkref>; 787b0b0191SHector Martin interrupt-parent = <&aic>; 797b0b0191SHector Martin interrupts = <AIC_IRQ 0 1119 IRQ_TYPE_LEVEL_HIGH>; 807b0b0191SHector Martin pinctrl-0 = <&i2c0_pins>; 817b0b0191SHector Martin pinctrl-names = "default"; 827b0b0191SHector Martin power-domains = <&ps_i2c0>; 837b0b0191SHector Martin #address-cells = <0x1>; 847b0b0191SHector Martin #size-cells = <0x0>; 857b0b0191SHector Martin }; 867b0b0191SHector Martin 877b0b0191SHector Martin i2c1: i2c@39b044000 { 887b0b0191SHector Martin compatible = "apple,t6000-i2c", "apple,i2c"; 897b0b0191SHector Martin reg = <0x3 0x9b044000 0x0 0x4000>; 907b0b0191SHector Martin clocks = <&clkref>; 917b0b0191SHector Martin interrupt-parent = <&aic>; 927b0b0191SHector Martin interrupts = <AIC_IRQ 0 1120 IRQ_TYPE_LEVEL_HIGH>; 937b0b0191SHector Martin pinctrl-0 = <&i2c1_pins>; 947b0b0191SHector Martin pinctrl-names = "default"; 957b0b0191SHector Martin power-domains = <&ps_i2c1>; 967b0b0191SHector Martin #address-cells = <0x1>; 977b0b0191SHector Martin #size-cells = <0x0>; 987b0b0191SHector Martin status = "disabled"; 997b0b0191SHector Martin }; 1007b0b0191SHector Martin 1017b0b0191SHector Martin i2c2: i2c@39b048000 { 1027b0b0191SHector Martin compatible = "apple,t6000-i2c", "apple,i2c"; 1037b0b0191SHector Martin reg = <0x3 0x9b048000 0x0 0x4000>; 1047b0b0191SHector Martin clocks = <&clkref>; 1057b0b0191SHector Martin interrupt-parent = <&aic>; 1067b0b0191SHector Martin interrupts = <AIC_IRQ 0 1121 IRQ_TYPE_LEVEL_HIGH>; 1077b0b0191SHector Martin pinctrl-0 = <&i2c2_pins>; 1087b0b0191SHector Martin pinctrl-names = "default"; 1097b0b0191SHector Martin power-domains = <&ps_i2c2>; 1107b0b0191SHector Martin #address-cells = <0x1>; 1117b0b0191SHector Martin #size-cells = <0x0>; 1127b0b0191SHector Martin status = "disabled"; 1137b0b0191SHector Martin }; 1147b0b0191SHector Martin 1157b0b0191SHector Martin i2c3: i2c@39b04c000 { 1167b0b0191SHector Martin compatible = "apple,t6000-i2c", "apple,i2c"; 1177b0b0191SHector Martin reg = <0x3 0x9b04c000 0x0 0x4000>; 1187b0b0191SHector Martin clocks = <&clkref>; 1197b0b0191SHector Martin interrupt-parent = <&aic>; 1207b0b0191SHector Martin interrupts = <AIC_IRQ 0 1122 IRQ_TYPE_LEVEL_HIGH>; 1217b0b0191SHector Martin pinctrl-0 = <&i2c3_pins>; 1227b0b0191SHector Martin pinctrl-names = "default"; 1237b0b0191SHector Martin power-domains = <&ps_i2c3>; 1247b0b0191SHector Martin #address-cells = <0x1>; 1257b0b0191SHector Martin #size-cells = <0x0>; 1267b0b0191SHector Martin status = "disabled"; 1277b0b0191SHector Martin }; 1287b0b0191SHector Martin 1297b0b0191SHector Martin i2c4: i2c@39b050000 { 1307b0b0191SHector Martin compatible = "apple,t6000-i2c", "apple,i2c"; 1317b0b0191SHector Martin reg = <0x3 0x9b050000 0x0 0x4000>; 1327b0b0191SHector Martin clocks = <&clkref>; 1337b0b0191SHector Martin interrupt-parent = <&aic>; 1347b0b0191SHector Martin interrupts = <AIC_IRQ 0 1123 IRQ_TYPE_LEVEL_HIGH>; 1357b0b0191SHector Martin pinctrl-0 = <&i2c4_pins>; 1367b0b0191SHector Martin pinctrl-names = "default"; 1377b0b0191SHector Martin power-domains = <&ps_i2c4>; 1387b0b0191SHector Martin #address-cells = <0x1>; 1397b0b0191SHector Martin #size-cells = <0x0>; 1407b0b0191SHector Martin status = "disabled"; 1417b0b0191SHector Martin }; 1427b0b0191SHector Martin 1437b0b0191SHector Martin i2c5: i2c@39b054000 { 1447b0b0191SHector Martin compatible = "apple,t6000-i2c", "apple,i2c"; 1457b0b0191SHector Martin reg = <0x3 0x9b054000 0x0 0x4000>; 1467b0b0191SHector Martin clocks = <&clkref>; 1477b0b0191SHector Martin interrupt-parent = <&aic>; 1487b0b0191SHector Martin interrupts = <AIC_IRQ 0 1124 IRQ_TYPE_LEVEL_HIGH>; 1497b0b0191SHector Martin pinctrl-0 = <&i2c5_pins>; 1507b0b0191SHector Martin pinctrl-names = "default"; 1517b0b0191SHector Martin power-domains = <&ps_i2c5>; 1527b0b0191SHector Martin #address-cells = <0x1>; 1537b0b0191SHector Martin #size-cells = <0x0>; 1547b0b0191SHector Martin status = "disabled"; 1557b0b0191SHector Martin }; 1567b0b0191SHector Martin 1577b0b0191SHector Martin serial0: serial@39b200000 { 1587b0b0191SHector Martin compatible = "apple,s5l-uart"; 1597b0b0191SHector Martin reg = <0x3 0x9b200000 0x0 0x1000>; 1607b0b0191SHector Martin reg-io-width = <4>; 1617b0b0191SHector Martin interrupt-parent = <&aic>; 1627b0b0191SHector Martin interrupts = <AIC_IRQ 0 1097 IRQ_TYPE_LEVEL_HIGH>; 1637b0b0191SHector Martin /* 1647b0b0191SHector Martin * TODO: figure out the clocking properly, there may 1657b0b0191SHector Martin * be a third selectable clock. 1667b0b0191SHector Martin */ 1677b0b0191SHector Martin clocks = <&clkref>, <&clkref>; 1687b0b0191SHector Martin clock-names = "uart", "clk_uart_baud0"; 1697b0b0191SHector Martin power-domains = <&ps_uart0>; 1707b0b0191SHector Martin status = "disabled"; 1717b0b0191SHector Martin }; 1727b0b0191SHector Martin 17351979fbbSJanne Grunau admac: dma-controller@39b400000 { 17451979fbbSJanne Grunau compatible = "apple,t6000-admac", "apple,admac"; 17551979fbbSJanne Grunau reg = <0x3 0x9b400000 0x0 0x34000>; 17651979fbbSJanne Grunau #dma-cells = <1>; 17751979fbbSJanne Grunau dma-channels = <16>; 17851979fbbSJanne Grunau interrupts-extended = <0>, 17951979fbbSJanne Grunau <&aic AIC_IRQ 0 1118 IRQ_TYPE_LEVEL_HIGH>, 18051979fbbSJanne Grunau <0>, 18151979fbbSJanne Grunau <0>; 18251979fbbSJanne Grunau iommus = <&dart_sio_0 2>, <&dart_sio_1 2>; 18351979fbbSJanne Grunau power-domains = <&ps_sio_adma>; 184*56fed763SMartin Povišer resets = <&ps_audio_p>; 18551979fbbSJanne Grunau }; 18651979fbbSJanne Grunau 18751979fbbSJanne Grunau mca: mca@39b600000 { 18851979fbbSJanne Grunau compatible = "apple,t6000-mca", "apple,mca"; 18951979fbbSJanne Grunau reg = <0x3 0x9b600000 0x0 0x10000>, 19051979fbbSJanne Grunau <0x3 0x9b500000 0x0 0x20000>; 19151979fbbSJanne Grunau clocks = <&nco 0>, <&nco 1>, <&nco 2>, <&nco 3>; 19251979fbbSJanne Grunau dmas = <&admac 0>, <&admac 1>, <&admac 2>, <&admac 3>, 19351979fbbSJanne Grunau <&admac 4>, <&admac 5>, <&admac 6>, <&admac 7>, 19451979fbbSJanne Grunau <&admac 8>, <&admac 9>, <&admac 10>, <&admac 11>, 19551979fbbSJanne Grunau <&admac 12>, <&admac 13>, <&admac 14>, <&admac 15>; 19651979fbbSJanne Grunau dma-names = "tx0a", "rx0a", "tx0b", "rx0b", 19751979fbbSJanne Grunau "tx1a", "rx1a", "tx1b", "rx1b", 19851979fbbSJanne Grunau "tx2a", "rx2a", "tx2b", "rx2b", 19951979fbbSJanne Grunau "tx3a", "rx3a", "tx3b", "rx3b"; 20051979fbbSJanne Grunau interrupt-parent = <&aic>; 20151979fbbSJanne Grunau interrupts = <AIC_IRQ 0 1112 IRQ_TYPE_LEVEL_HIGH>, 20251979fbbSJanne Grunau <AIC_IRQ 0 1113 IRQ_TYPE_LEVEL_HIGH>, 20351979fbbSJanne Grunau <AIC_IRQ 0 1114 IRQ_TYPE_LEVEL_HIGH>, 20451979fbbSJanne Grunau <AIC_IRQ 0 1115 IRQ_TYPE_LEVEL_HIGH>; 20551979fbbSJanne Grunau power-domains = <&ps_audio_p>, <&ps_mca0>, <&ps_mca1>, 20651979fbbSJanne Grunau <&ps_mca2>, <&ps_mca3>; 20751979fbbSJanne Grunau resets = <&ps_audio_p>; 20851979fbbSJanne Grunau #sound-dai-cells = <1>; 20951979fbbSJanne Grunau }; 21051979fbbSJanne Grunau 2117b0b0191SHector Martin pcie0_dart_0: dart@581008000 { 2127b0b0191SHector Martin compatible = "apple,t6000-dart"; 2137b0b0191SHector Martin reg = <0x5 0x81008000 0x0 0x4000>; 2147b0b0191SHector Martin #iommu-cells = <1>; 2157b0b0191SHector Martin interrupt-parent = <&aic>; 2167b0b0191SHector Martin interrupts = <AIC_IRQ 0 1271 IRQ_TYPE_LEVEL_HIGH>; 2177b0b0191SHector Martin power-domains = <&ps_apcie_gp_sys>; 2187b0b0191SHector Martin }; 2197b0b0191SHector Martin 2207b0b0191SHector Martin pcie0_dart_1: dart@582008000 { 2217b0b0191SHector Martin compatible = "apple,t6000-dart"; 2227b0b0191SHector Martin reg = <0x5 0x82008000 0x0 0x4000>; 2237b0b0191SHector Martin #iommu-cells = <1>; 2247b0b0191SHector Martin interrupt-parent = <&aic>; 2257b0b0191SHector Martin interrupts = <AIC_IRQ 0 1274 IRQ_TYPE_LEVEL_HIGH>; 2267b0b0191SHector Martin power-domains = <&ps_apcie_gp_sys>; 2277b0b0191SHector Martin }; 2287b0b0191SHector Martin 2297b0b0191SHector Martin pcie0_dart_2: dart@583008000 { 2307b0b0191SHector Martin compatible = "apple,t6000-dart"; 2317b0b0191SHector Martin reg = <0x5 0x83008000 0x0 0x4000>; 2327b0b0191SHector Martin #iommu-cells = <1>; 2337b0b0191SHector Martin interrupt-parent = <&aic>; 2347b0b0191SHector Martin interrupts = <AIC_IRQ 0 1277 IRQ_TYPE_LEVEL_HIGH>; 2357b0b0191SHector Martin power-domains = <&ps_apcie_gp_sys>; 2367b0b0191SHector Martin }; 2377b0b0191SHector Martin 2387b0b0191SHector Martin pcie0_dart_3: dart@584008000 { 2397b0b0191SHector Martin compatible = "apple,t6000-dart"; 2407b0b0191SHector Martin reg = <0x5 0x84008000 0x0 0x4000>; 2417b0b0191SHector Martin #iommu-cells = <1>; 2427b0b0191SHector Martin interrupt-parent = <&aic>; 2437b0b0191SHector Martin interrupts = <AIC_IRQ 0 1280 IRQ_TYPE_LEVEL_HIGH>; 2447b0b0191SHector Martin power-domains = <&ps_apcie_gp_sys>; 2457b0b0191SHector Martin }; 2467b0b0191SHector Martin 2477b0b0191SHector Martin pcie0: pcie@590000000 { 2487b0b0191SHector Martin compatible = "apple,t6000-pcie", "apple,pcie"; 2497b0b0191SHector Martin device_type = "pci"; 2507b0b0191SHector Martin 2517b0b0191SHector Martin reg = <0x5 0x90000000 0x0 0x1000000>, 2527b0b0191SHector Martin <0x5 0x80000000 0x0 0x100000>, 2537b0b0191SHector Martin <0x5 0x81000000 0x0 0x4000>, 2547b0b0191SHector Martin <0x5 0x82000000 0x0 0x4000>, 2557b0b0191SHector Martin <0x5 0x83000000 0x0 0x4000>, 2567b0b0191SHector Martin <0x5 0x84000000 0x0 0x4000>; 2577b0b0191SHector Martin reg-names = "config", "rc", "port0", "port1", "port2", "port3"; 2587b0b0191SHector Martin 2597b0b0191SHector Martin interrupt-parent = <&aic>; 2607b0b0191SHector Martin interrupts = <AIC_IRQ 0 1270 IRQ_TYPE_LEVEL_HIGH>, 2617b0b0191SHector Martin <AIC_IRQ 0 1273 IRQ_TYPE_LEVEL_HIGH>, 2627b0b0191SHector Martin <AIC_IRQ 0 1276 IRQ_TYPE_LEVEL_HIGH>, 2637b0b0191SHector Martin <AIC_IRQ 0 1279 IRQ_TYPE_LEVEL_HIGH>; 2647b0b0191SHector Martin 2657b0b0191SHector Martin msi-controller; 2667b0b0191SHector Martin msi-parent = <&pcie0>; 2677b0b0191SHector Martin msi-ranges = <&aic AIC_IRQ 0 1581 IRQ_TYPE_EDGE_RISING 32>; 2687b0b0191SHector Martin 2697b0b0191SHector Martin 2707b0b0191SHector Martin iommu-map = <0x100 &pcie0_dart_0 1 1>, 2717b0b0191SHector Martin <0x200 &pcie0_dart_1 1 1>, 2727b0b0191SHector Martin <0x300 &pcie0_dart_2 1 1>, 2737b0b0191SHector Martin <0x400 &pcie0_dart_3 1 1>; 2747b0b0191SHector Martin iommu-map-mask = <0xff00>; 2757b0b0191SHector Martin 2767b0b0191SHector Martin bus-range = <0 4>; 2777b0b0191SHector Martin #address-cells = <3>; 2787b0b0191SHector Martin #size-cells = <2>; 2797b0b0191SHector Martin ranges = <0x43000000 0x5 0xa0000000 0x5 0xa0000000 0x0 0x20000000>, 2807b0b0191SHector Martin <0x02000000 0x0 0xc0000000 0x5 0xc0000000 0x0 0x40000000>; 2817b0b0191SHector Martin 2827b0b0191SHector Martin power-domains = <&ps_apcie_gp_sys>; 2837b0b0191SHector Martin pinctrl-0 = <&pcie_pins>; 2847b0b0191SHector Martin pinctrl-names = "default"; 2857b0b0191SHector Martin 2867b0b0191SHector Martin port00: pci@0,0 { 2877b0b0191SHector Martin device_type = "pci"; 2887b0b0191SHector Martin reg = <0x0 0x0 0x0 0x0 0x0>; 2897b0b0191SHector Martin reset-gpios = <&pinctrl_ap 4 GPIO_ACTIVE_LOW>; 2907b0b0191SHector Martin 2917b0b0191SHector Martin #address-cells = <3>; 2927b0b0191SHector Martin #size-cells = <2>; 2937b0b0191SHector Martin ranges; 2947b0b0191SHector Martin 2957b0b0191SHector Martin interrupt-controller; 2967b0b0191SHector Martin #interrupt-cells = <1>; 2977b0b0191SHector Martin 2987b0b0191SHector Martin interrupt-map-mask = <0 0 0 7>; 2997b0b0191SHector Martin interrupt-map = <0 0 0 1 &port00 0 0 0 0>, 3007b0b0191SHector Martin <0 0 0 2 &port00 0 0 0 1>, 3017b0b0191SHector Martin <0 0 0 3 &port00 0 0 0 2>, 3027b0b0191SHector Martin <0 0 0 4 &port00 0 0 0 3>; 3037b0b0191SHector Martin }; 3047b0b0191SHector Martin 3057b0b0191SHector Martin port01: pci@1,0 { 3067b0b0191SHector Martin device_type = "pci"; 3077b0b0191SHector Martin reg = <0x800 0x0 0x0 0x0 0x0>; 3087b0b0191SHector Martin reset-gpios = <&pinctrl_ap 5 GPIO_ACTIVE_LOW>; 3097b0b0191SHector Martin 3107b0b0191SHector Martin #address-cells = <3>; 3117b0b0191SHector Martin #size-cells = <2>; 3127b0b0191SHector Martin ranges; 3137b0b0191SHector Martin 3147b0b0191SHector Martin interrupt-controller; 3157b0b0191SHector Martin #interrupt-cells = <1>; 3167b0b0191SHector Martin 3177b0b0191SHector Martin interrupt-map-mask = <0 0 0 7>; 3187b0b0191SHector Martin interrupt-map = <0 0 0 1 &port01 0 0 0 0>, 3197b0b0191SHector Martin <0 0 0 2 &port01 0 0 0 1>, 3207b0b0191SHector Martin <0 0 0 3 &port01 0 0 0 2>, 3217b0b0191SHector Martin <0 0 0 4 &port01 0 0 0 3>; 3227b0b0191SHector Martin }; 3237b0b0191SHector Martin 3247b0b0191SHector Martin port02: pci@2,0 { 3257b0b0191SHector Martin device_type = "pci"; 3267b0b0191SHector Martin reg = <0x1000 0x0 0x0 0x0 0x0>; 3277b0b0191SHector Martin reset-gpios = <&pinctrl_ap 6 GPIO_ACTIVE_LOW>; 3287b0b0191SHector Martin 3297b0b0191SHector Martin #address-cells = <3>; 3307b0b0191SHector Martin #size-cells = <2>; 3317b0b0191SHector Martin ranges; 3327b0b0191SHector Martin 3337b0b0191SHector Martin interrupt-controller; 3347b0b0191SHector Martin #interrupt-cells = <1>; 3357b0b0191SHector Martin 3367b0b0191SHector Martin interrupt-map-mask = <0 0 0 7>; 3377b0b0191SHector Martin interrupt-map = <0 0 0 1 &port02 0 0 0 0>, 3387b0b0191SHector Martin <0 0 0 2 &port02 0 0 0 1>, 3397b0b0191SHector Martin <0 0 0 3 &port02 0 0 0 2>, 3407b0b0191SHector Martin <0 0 0 4 &port02 0 0 0 3>; 3417b0b0191SHector Martin }; 3427b0b0191SHector Martin 3437b0b0191SHector Martin port03: pci@3,0 { 3447b0b0191SHector Martin device_type = "pci"; 3457b0b0191SHector Martin reg = <0x1800 0x0 0x0 0x0 0x0>; 3467b0b0191SHector Martin reset-gpios = <&pinctrl_ap 7 GPIO_ACTIVE_LOW>; 3477b0b0191SHector Martin 3487b0b0191SHector Martin #address-cells = <3>; 3497b0b0191SHector Martin #size-cells = <2>; 3507b0b0191SHector Martin ranges; 3517b0b0191SHector Martin 3527b0b0191SHector Martin interrupt-controller; 3537b0b0191SHector Martin #interrupt-cells = <1>; 3547b0b0191SHector Martin 3557b0b0191SHector Martin interrupt-map-mask = <0 0 0 7>; 3567b0b0191SHector Martin interrupt-map = <0 0 0 1 &port03 0 0 0 0>, 3577b0b0191SHector Martin <0 0 0 2 &port03 0 0 0 1>, 3587b0b0191SHector Martin <0 0 0 3 &port03 0 0 0 2>, 3597b0b0191SHector Martin <0 0 0 4 &port03 0 0 0 3>; 3607b0b0191SHector Martin }; 3617b0b0191SHector Martin }; 362