1 // SPDX-License-Identifier: GPL-2.0+ OR MIT 1 // SPDX-License-Identifier: GPL-2.0+ OR MIT 2 /* 2 /* 3 * Devices used on die 0 on the Apple T6002 "M 3 * Devices used on die 0 on the Apple T6002 "M1 Ultra" SoC and present on 4 * Apple T6000 / T6001 "M1 Pro" / "M1 Max". 4 * Apple T6000 / T6001 "M1 Pro" / "M1 Max". 5 * 5 * 6 * Copyright The Asahi Linux Contributors 6 * Copyright The Asahi Linux Contributors 7 */ 7 */ 8 8 9 9 10 nco: clock-controller@28e03c000 { 10 nco: clock-controller@28e03c000 { 11 compatible = "apple,t6000-nco" 11 compatible = "apple,t6000-nco", "apple,nco"; 12 reg = <0x2 0x8e03c000 0x0 0x14 12 reg = <0x2 0x8e03c000 0x0 0x14000>; 13 clocks = <&nco_clkref>; 13 clocks = <&nco_clkref>; 14 #clock-cells = <1>; 14 #clock-cells = <1>; 15 }; 15 }; 16 16 17 aic: interrupt-controller@28e100000 { 17 aic: interrupt-controller@28e100000 { 18 compatible = "apple,t6000-aic" 18 compatible = "apple,t6000-aic", "apple,aic2"; 19 #interrupt-cells = <4>; 19 #interrupt-cells = <4>; 20 interrupt-controller; 20 interrupt-controller; 21 reg = <0x2 0x8e100000 0x0 0xc0 21 reg = <0x2 0x8e100000 0x0 0xc000>, 22 <0x2 0x8e10c000 0x0 0x 22 <0x2 0x8e10c000 0x0 0x4>; 23 reg-names = "core", "event"; 23 reg-names = "core", "event"; 24 power-domains = <&ps_aic>; 24 power-domains = <&ps_aic>; 25 }; 25 }; 26 26 27 pinctrl_smc: pinctrl@290820000 { 27 pinctrl_smc: pinctrl@290820000 { 28 compatible = "apple,t6000-pinc 28 compatible = "apple,t6000-pinctrl", "apple,pinctrl"; 29 reg = <0x2 0x90820000 0x0 0x40 29 reg = <0x2 0x90820000 0x0 0x4000>; 30 30 31 gpio-controller; 31 gpio-controller; 32 #gpio-cells = <2>; 32 #gpio-cells = <2>; 33 gpio-ranges = <&pinctrl_smc 0 33 gpio-ranges = <&pinctrl_smc 0 0 30>; 34 apple,npins = <30>; 34 apple,npins = <30>; 35 35 36 interrupt-controller; 36 interrupt-controller; 37 #interrupt-cells = <2>; 37 #interrupt-cells = <2>; 38 interrupt-parent = <&aic>; 38 interrupt-parent = <&aic>; 39 interrupts = <AIC_IRQ 0 743 IR 39 interrupts = <AIC_IRQ 0 743 IRQ_TYPE_LEVEL_HIGH>, 40 <AIC_IRQ 0 744 40 <AIC_IRQ 0 744 IRQ_TYPE_LEVEL_HIGH>, 41 <AIC_IRQ 0 745 41 <AIC_IRQ 0 745 IRQ_TYPE_LEVEL_HIGH>, 42 <AIC_IRQ 0 746 42 <AIC_IRQ 0 746 IRQ_TYPE_LEVEL_HIGH>, 43 <AIC_IRQ 0 747 43 <AIC_IRQ 0 747 IRQ_TYPE_LEVEL_HIGH>, 44 <AIC_IRQ 0 748 44 <AIC_IRQ 0 748 IRQ_TYPE_LEVEL_HIGH>, 45 <AIC_IRQ 0 749 45 <AIC_IRQ 0 749 IRQ_TYPE_LEVEL_HIGH>; 46 }; 46 }; 47 47 48 wdt: watchdog@2922b0000 { 48 wdt: watchdog@2922b0000 { 49 compatible = "apple,t6000-wdt" 49 compatible = "apple,t6000-wdt", "apple,wdt"; 50 reg = <0x2 0x922b0000 0x0 0x40 50 reg = <0x2 0x922b0000 0x0 0x4000>; 51 clocks = <&clkref>; 51 clocks = <&clkref>; 52 interrupt-parent = <&aic>; 52 interrupt-parent = <&aic>; 53 interrupts = <AIC_IRQ 0 631 IR 53 interrupts = <AIC_IRQ 0 631 IRQ_TYPE_LEVEL_HIGH>; 54 }; 54 }; 55 55 56 sio_dart_0: iommu@39b004000 { 56 sio_dart_0: iommu@39b004000 { 57 compatible = "apple,t6000-dart 57 compatible = "apple,t6000-dart"; 58 reg = <0x3 0x9b004000 0x0 0x40 58 reg = <0x3 0x9b004000 0x0 0x4000>; 59 interrupt-parent = <&aic>; 59 interrupt-parent = <&aic>; 60 interrupts = <AIC_IRQ 0 1130 I 60 interrupts = <AIC_IRQ 0 1130 IRQ_TYPE_LEVEL_HIGH>; 61 #iommu-cells = <1>; 61 #iommu-cells = <1>; 62 power-domains = <&ps_sio_cpu>; 62 power-domains = <&ps_sio_cpu>; 63 }; 63 }; 64 64 65 sio_dart_1: iommu@39b008000 { 65 sio_dart_1: iommu@39b008000 { 66 compatible = "apple,t6000-dart 66 compatible = "apple,t6000-dart"; 67 reg = <0x3 0x9b008000 0x0 0x80 67 reg = <0x3 0x9b008000 0x0 0x8000>; 68 interrupt-parent = <&aic>; 68 interrupt-parent = <&aic>; 69 interrupts = <AIC_IRQ 0 1130 I 69 interrupts = <AIC_IRQ 0 1130 IRQ_TYPE_LEVEL_HIGH>; 70 #iommu-cells = <1>; 70 #iommu-cells = <1>; 71 power-domains = <&ps_sio_cpu>; 71 power-domains = <&ps_sio_cpu>; 72 }; 72 }; 73 73 74 fpwm0: pwm@39b030000 { << 75 compatible = "apple,t6000-fpwm << 76 reg = <0x3 0x9b030000 0x0 0x40 << 77 power-domains = <&ps_fpwm0>; << 78 clocks = <&clkref>; << 79 #pwm-cells = <2>; << 80 status = "disabled"; << 81 }; << 82 << 83 i2c0: i2c@39b040000 { 74 i2c0: i2c@39b040000 { 84 compatible = "apple,t6000-i2c" 75 compatible = "apple,t6000-i2c", "apple,i2c"; 85 reg = <0x3 0x9b040000 0x0 0x40 76 reg = <0x3 0x9b040000 0x0 0x4000>; 86 clocks = <&clkref>; 77 clocks = <&clkref>; 87 interrupt-parent = <&aic>; 78 interrupt-parent = <&aic>; 88 interrupts = <AIC_IRQ 0 1119 I 79 interrupts = <AIC_IRQ 0 1119 IRQ_TYPE_LEVEL_HIGH>; 89 pinctrl-0 = <&i2c0_pins>; 80 pinctrl-0 = <&i2c0_pins>; 90 pinctrl-names = "default"; 81 pinctrl-names = "default"; 91 power-domains = <&ps_i2c0>; 82 power-domains = <&ps_i2c0>; 92 #address-cells = <0x1>; 83 #address-cells = <0x1>; 93 #size-cells = <0x0>; 84 #size-cells = <0x0>; 94 }; 85 }; 95 86 96 i2c1: i2c@39b044000 { 87 i2c1: i2c@39b044000 { 97 compatible = "apple,t6000-i2c" 88 compatible = "apple,t6000-i2c", "apple,i2c"; 98 reg = <0x3 0x9b044000 0x0 0x40 89 reg = <0x3 0x9b044000 0x0 0x4000>; 99 clocks = <&clkref>; 90 clocks = <&clkref>; 100 interrupt-parent = <&aic>; 91 interrupt-parent = <&aic>; 101 interrupts = <AIC_IRQ 0 1120 I 92 interrupts = <AIC_IRQ 0 1120 IRQ_TYPE_LEVEL_HIGH>; 102 pinctrl-0 = <&i2c1_pins>; 93 pinctrl-0 = <&i2c1_pins>; 103 pinctrl-names = "default"; 94 pinctrl-names = "default"; 104 power-domains = <&ps_i2c1>; 95 power-domains = <&ps_i2c1>; 105 #address-cells = <0x1>; 96 #address-cells = <0x1>; 106 #size-cells = <0x0>; 97 #size-cells = <0x0>; 107 status = "disabled"; 98 status = "disabled"; 108 }; 99 }; 109 100 110 i2c2: i2c@39b048000 { 101 i2c2: i2c@39b048000 { 111 compatible = "apple,t6000-i2c" 102 compatible = "apple,t6000-i2c", "apple,i2c"; 112 reg = <0x3 0x9b048000 0x0 0x40 103 reg = <0x3 0x9b048000 0x0 0x4000>; 113 clocks = <&clkref>; 104 clocks = <&clkref>; 114 interrupt-parent = <&aic>; 105 interrupt-parent = <&aic>; 115 interrupts = <AIC_IRQ 0 1121 I 106 interrupts = <AIC_IRQ 0 1121 IRQ_TYPE_LEVEL_HIGH>; 116 pinctrl-0 = <&i2c2_pins>; 107 pinctrl-0 = <&i2c2_pins>; 117 pinctrl-names = "default"; 108 pinctrl-names = "default"; 118 power-domains = <&ps_i2c2>; 109 power-domains = <&ps_i2c2>; 119 #address-cells = <0x1>; 110 #address-cells = <0x1>; 120 #size-cells = <0x0>; 111 #size-cells = <0x0>; 121 status = "disabled"; 112 status = "disabled"; 122 }; 113 }; 123 114 124 i2c3: i2c@39b04c000 { 115 i2c3: i2c@39b04c000 { 125 compatible = "apple,t6000-i2c" 116 compatible = "apple,t6000-i2c", "apple,i2c"; 126 reg = <0x3 0x9b04c000 0x0 0x40 117 reg = <0x3 0x9b04c000 0x0 0x4000>; 127 clocks = <&clkref>; 118 clocks = <&clkref>; 128 interrupt-parent = <&aic>; 119 interrupt-parent = <&aic>; 129 interrupts = <AIC_IRQ 0 1122 I 120 interrupts = <AIC_IRQ 0 1122 IRQ_TYPE_LEVEL_HIGH>; 130 pinctrl-0 = <&i2c3_pins>; 121 pinctrl-0 = <&i2c3_pins>; 131 pinctrl-names = "default"; 122 pinctrl-names = "default"; 132 power-domains = <&ps_i2c3>; 123 power-domains = <&ps_i2c3>; 133 #address-cells = <0x1>; 124 #address-cells = <0x1>; 134 #size-cells = <0x0>; 125 #size-cells = <0x0>; 135 status = "disabled"; 126 status = "disabled"; 136 }; 127 }; 137 128 138 i2c4: i2c@39b050000 { 129 i2c4: i2c@39b050000 { 139 compatible = "apple,t6000-i2c" 130 compatible = "apple,t6000-i2c", "apple,i2c"; 140 reg = <0x3 0x9b050000 0x0 0x40 131 reg = <0x3 0x9b050000 0x0 0x4000>; 141 clocks = <&clkref>; 132 clocks = <&clkref>; 142 interrupt-parent = <&aic>; 133 interrupt-parent = <&aic>; 143 interrupts = <AIC_IRQ 0 1123 I 134 interrupts = <AIC_IRQ 0 1123 IRQ_TYPE_LEVEL_HIGH>; 144 pinctrl-0 = <&i2c4_pins>; 135 pinctrl-0 = <&i2c4_pins>; 145 pinctrl-names = "default"; 136 pinctrl-names = "default"; 146 power-domains = <&ps_i2c4>; 137 power-domains = <&ps_i2c4>; 147 #address-cells = <0x1>; 138 #address-cells = <0x1>; 148 #size-cells = <0x0>; 139 #size-cells = <0x0>; 149 status = "disabled"; 140 status = "disabled"; 150 }; 141 }; 151 142 152 i2c5: i2c@39b054000 { 143 i2c5: i2c@39b054000 { 153 compatible = "apple,t6000-i2c" 144 compatible = "apple,t6000-i2c", "apple,i2c"; 154 reg = <0x3 0x9b054000 0x0 0x40 145 reg = <0x3 0x9b054000 0x0 0x4000>; 155 clocks = <&clkref>; 146 clocks = <&clkref>; 156 interrupt-parent = <&aic>; 147 interrupt-parent = <&aic>; 157 interrupts = <AIC_IRQ 0 1124 I 148 interrupts = <AIC_IRQ 0 1124 IRQ_TYPE_LEVEL_HIGH>; 158 pinctrl-0 = <&i2c5_pins>; 149 pinctrl-0 = <&i2c5_pins>; 159 pinctrl-names = "default"; 150 pinctrl-names = "default"; 160 power-domains = <&ps_i2c5>; 151 power-domains = <&ps_i2c5>; 161 #address-cells = <0x1>; 152 #address-cells = <0x1>; 162 #size-cells = <0x0>; 153 #size-cells = <0x0>; 163 status = "disabled"; 154 status = "disabled"; 164 }; 155 }; 165 156 166 serial0: serial@39b200000 { 157 serial0: serial@39b200000 { 167 compatible = "apple,s5l-uart"; 158 compatible = "apple,s5l-uart"; 168 reg = <0x3 0x9b200000 0x0 0x10 159 reg = <0x3 0x9b200000 0x0 0x1000>; 169 reg-io-width = <4>; 160 reg-io-width = <4>; 170 interrupt-parent = <&aic>; 161 interrupt-parent = <&aic>; 171 interrupts = <AIC_IRQ 0 1097 I 162 interrupts = <AIC_IRQ 0 1097 IRQ_TYPE_LEVEL_HIGH>; 172 /* 163 /* 173 * TODO: figure out the clocki 164 * TODO: figure out the clocking properly, there may 174 * be a third selectable clock 165 * be a third selectable clock. 175 */ 166 */ 176 clocks = <&clkref>, <&clkref>; 167 clocks = <&clkref>, <&clkref>; 177 clock-names = "uart", "clk_uar 168 clock-names = "uart", "clk_uart_baud0"; 178 power-domains = <&ps_uart0>; 169 power-domains = <&ps_uart0>; 179 status = "disabled"; 170 status = "disabled"; 180 }; 171 }; 181 172 182 admac: dma-controller@39b400000 { 173 admac: dma-controller@39b400000 { 183 compatible = "apple,t6000-adma 174 compatible = "apple,t6000-admac", "apple,admac"; 184 reg = <0x3 0x9b400000 0x0 0x34 175 reg = <0x3 0x9b400000 0x0 0x34000>; 185 #dma-cells = <1>; 176 #dma-cells = <1>; 186 dma-channels = <16>; 177 dma-channels = <16>; 187 interrupts-extended = <0>, 178 interrupts-extended = <0>, 188 <&aic AI 179 <&aic AIC_IRQ 0 1118 IRQ_TYPE_LEVEL_HIGH>, 189 <0>, 180 <0>, 190 <0>; 181 <0>; 191 iommus = <&sio_dart_0 2>, <&si 182 iommus = <&sio_dart_0 2>, <&sio_dart_1 2>; 192 power-domains = <&ps_sio_adma> 183 power-domains = <&ps_sio_adma>; 193 resets = <&ps_audio_p>; 184 resets = <&ps_audio_p>; 194 }; 185 }; 195 186 196 mca: mca@39b600000 { 187 mca: mca@39b600000 { 197 compatible = "apple,t6000-mca" 188 compatible = "apple,t6000-mca", "apple,mca"; 198 reg = <0x3 0x9b600000 0x0 0x10 189 reg = <0x3 0x9b600000 0x0 0x10000>, 199 <0x3 0x9b500000 0x0 0x20 190 <0x3 0x9b500000 0x0 0x20000>; 200 clocks = <&nco 0>, <&nco 1>, < 191 clocks = <&nco 0>, <&nco 1>, <&nco 2>, <&nco 3>; 201 dmas = <&admac 0>, <&admac 1>, 192 dmas = <&admac 0>, <&admac 1>, <&admac 2>, <&admac 3>, 202 <&admac 4>, <&admac 5>, 193 <&admac 4>, <&admac 5>, <&admac 6>, <&admac 7>, 203 <&admac 8>, <&admac 9>, 194 <&admac 8>, <&admac 9>, <&admac 10>, <&admac 11>, 204 <&admac 12>, <&admac 13 195 <&admac 12>, <&admac 13>, <&admac 14>, <&admac 15>; 205 dma-names = "tx0a", "rx0a", "t 196 dma-names = "tx0a", "rx0a", "tx0b", "rx0b", 206 "tx1a", "rx1a", "t 197 "tx1a", "rx1a", "tx1b", "rx1b", 207 "tx2a", "rx2a", "t 198 "tx2a", "rx2a", "tx2b", "rx2b", 208 "tx3a", "rx3a", "t 199 "tx3a", "rx3a", "tx3b", "rx3b"; 209 interrupt-parent = <&aic>; 200 interrupt-parent = <&aic>; 210 interrupts = <AIC_IRQ 0 1112 I 201 interrupts = <AIC_IRQ 0 1112 IRQ_TYPE_LEVEL_HIGH>, 211 <AIC_IRQ 0 1113 I 202 <AIC_IRQ 0 1113 IRQ_TYPE_LEVEL_HIGH>, 212 <AIC_IRQ 0 1114 I 203 <AIC_IRQ 0 1114 IRQ_TYPE_LEVEL_HIGH>, 213 <AIC_IRQ 0 1115 I 204 <AIC_IRQ 0 1115 IRQ_TYPE_LEVEL_HIGH>; 214 power-domains = <&ps_audio_p>, 205 power-domains = <&ps_audio_p>, <&ps_mca0>, <&ps_mca1>, 215 <&ps_mca2>, <& 206 <&ps_mca2>, <&ps_mca3>; 216 resets = <&ps_audio_p>; 207 resets = <&ps_audio_p>; 217 #sound-dai-cells = <1>; 208 #sound-dai-cells = <1>; 218 }; 209 }; 219 210 220 pcie0_dart_0: iommu@581008000 { 211 pcie0_dart_0: iommu@581008000 { 221 compatible = "apple,t6000-dart 212 compatible = "apple,t6000-dart"; 222 reg = <0x5 0x81008000 0x0 0x40 213 reg = <0x5 0x81008000 0x0 0x4000>; 223 #iommu-cells = <1>; 214 #iommu-cells = <1>; 224 interrupt-parent = <&aic>; 215 interrupt-parent = <&aic>; 225 interrupts = <AIC_IRQ 0 1271 I 216 interrupts = <AIC_IRQ 0 1271 IRQ_TYPE_LEVEL_HIGH>; 226 power-domains = <&ps_apcie_gp_ 217 power-domains = <&ps_apcie_gp_sys>; 227 }; 218 }; 228 219 229 pcie0_dart_1: iommu@582008000 { 220 pcie0_dart_1: iommu@582008000 { 230 compatible = "apple,t6000-dart 221 compatible = "apple,t6000-dart"; 231 reg = <0x5 0x82008000 0x0 0x40 222 reg = <0x5 0x82008000 0x0 0x4000>; 232 #iommu-cells = <1>; 223 #iommu-cells = <1>; 233 interrupt-parent = <&aic>; 224 interrupt-parent = <&aic>; 234 interrupts = <AIC_IRQ 0 1274 I 225 interrupts = <AIC_IRQ 0 1274 IRQ_TYPE_LEVEL_HIGH>; 235 power-domains = <&ps_apcie_gp_ 226 power-domains = <&ps_apcie_gp_sys>; 236 }; 227 }; 237 228 238 pcie0_dart_2: iommu@583008000 { 229 pcie0_dart_2: iommu@583008000 { 239 compatible = "apple,t6000-dart 230 compatible = "apple,t6000-dart"; 240 reg = <0x5 0x83008000 0x0 0x40 231 reg = <0x5 0x83008000 0x0 0x4000>; 241 #iommu-cells = <1>; 232 #iommu-cells = <1>; 242 interrupt-parent = <&aic>; 233 interrupt-parent = <&aic>; 243 interrupts = <AIC_IRQ 0 1277 I 234 interrupts = <AIC_IRQ 0 1277 IRQ_TYPE_LEVEL_HIGH>; 244 power-domains = <&ps_apcie_gp_ 235 power-domains = <&ps_apcie_gp_sys>; 245 status = "disabled"; << 246 }; 236 }; 247 237 248 pcie0_dart_3: iommu@584008000 { 238 pcie0_dart_3: iommu@584008000 { 249 compatible = "apple,t6000-dart 239 compatible = "apple,t6000-dart"; 250 reg = <0x5 0x84008000 0x0 0x40 240 reg = <0x5 0x84008000 0x0 0x4000>; 251 #iommu-cells = <1>; 241 #iommu-cells = <1>; 252 interrupt-parent = <&aic>; 242 interrupt-parent = <&aic>; 253 interrupts = <AIC_IRQ 0 1280 I 243 interrupts = <AIC_IRQ 0 1280 IRQ_TYPE_LEVEL_HIGH>; 254 power-domains = <&ps_apcie_gp_ 244 power-domains = <&ps_apcie_gp_sys>; 255 status = "disabled"; << 256 }; 245 }; 257 246 258 pcie0: pcie@590000000 { 247 pcie0: pcie@590000000 { 259 compatible = "apple,t6000-pcie 248 compatible = "apple,t6000-pcie", "apple,pcie"; 260 device_type = "pci"; 249 device_type = "pci"; 261 250 262 reg = <0x5 0x90000000 0x0 0x10 251 reg = <0x5 0x90000000 0x0 0x1000000>, 263 <0x5 0x80000000 0x0 0x 252 <0x5 0x80000000 0x0 0x100000>, 264 <0x5 0x81000000 0x0 0x 253 <0x5 0x81000000 0x0 0x4000>, 265 <0x5 0x82000000 0x0 0x 254 <0x5 0x82000000 0x0 0x4000>, 266 <0x5 0x83000000 0x0 0x 255 <0x5 0x83000000 0x0 0x4000>, 267 <0x5 0x84000000 0x0 0x 256 <0x5 0x84000000 0x0 0x4000>; 268 reg-names = "config", "rc", "p 257 reg-names = "config", "rc", "port0", "port1", "port2", "port3"; 269 258 270 interrupt-parent = <&aic>; 259 interrupt-parent = <&aic>; 271 interrupts = <AIC_IRQ 0 1270 I 260 interrupts = <AIC_IRQ 0 1270 IRQ_TYPE_LEVEL_HIGH>, 272 <AIC_IRQ 0 127 261 <AIC_IRQ 0 1273 IRQ_TYPE_LEVEL_HIGH>, 273 <AIC_IRQ 0 127 262 <AIC_IRQ 0 1276 IRQ_TYPE_LEVEL_HIGH>, 274 <AIC_IRQ 0 127 263 <AIC_IRQ 0 1279 IRQ_TYPE_LEVEL_HIGH>; 275 264 276 msi-controller; 265 msi-controller; 277 msi-parent = <&pcie0>; 266 msi-parent = <&pcie0>; 278 msi-ranges = <&aic AIC_IRQ 0 1 267 msi-ranges = <&aic AIC_IRQ 0 1581 IRQ_TYPE_EDGE_RISING 32>; 279 268 280 269 281 iommu-map = <0x100 &pcie0_dart 270 iommu-map = <0x100 &pcie0_dart_0 1 1>, 282 <0x200 &pcie0_ 271 <0x200 &pcie0_dart_1 1 1>, 283 <0x300 &pcie0_ 272 <0x300 &pcie0_dart_2 1 1>, 284 <0x400 &pcie0_ 273 <0x400 &pcie0_dart_3 1 1>; 285 iommu-map-mask = <0xff00>; 274 iommu-map-mask = <0xff00>; 286 275 287 bus-range = <0 4>; 276 bus-range = <0 4>; 288 #address-cells = <3>; 277 #address-cells = <3>; 289 #size-cells = <2>; 278 #size-cells = <2>; 290 ranges = <0x43000000 0x5 0xa00 279 ranges = <0x43000000 0x5 0xa0000000 0x5 0xa0000000 0x0 0x20000000>, 291 <0x02000000 0x 280 <0x02000000 0x0 0xc0000000 0x5 0xc0000000 0x0 0x40000000>; 292 281 293 power-domains = <&ps_apcie_gp_ 282 power-domains = <&ps_apcie_gp_sys>; 294 pinctrl-0 = <&pcie_pins>; 283 pinctrl-0 = <&pcie_pins>; 295 pinctrl-names = "default"; 284 pinctrl-names = "default"; 296 285 297 port00: pci@0,0 { 286 port00: pci@0,0 { 298 device_type = "pci"; 287 device_type = "pci"; 299 reg = <0x0 0x0 0x0 0x0 288 reg = <0x0 0x0 0x0 0x0 0x0>; 300 reset-gpios = <&pinctr 289 reset-gpios = <&pinctrl_ap 4 GPIO_ACTIVE_LOW>; 301 290 302 #address-cells = <3>; 291 #address-cells = <3>; 303 #size-cells = <2>; 292 #size-cells = <2>; 304 ranges; 293 ranges; 305 294 306 interrupt-controller; 295 interrupt-controller; 307 #interrupt-cells = <1> 296 #interrupt-cells = <1>; 308 297 309 interrupt-map-mask = < 298 interrupt-map-mask = <0 0 0 7>; 310 interrupt-map = <0 0 0 299 interrupt-map = <0 0 0 1 &port00 0 0 0 0>, 311 <0 0 0 300 <0 0 0 2 &port00 0 0 0 1>, 312 <0 0 0 301 <0 0 0 3 &port00 0 0 0 2>, 313 <0 0 0 302 <0 0 0 4 &port00 0 0 0 3>; 314 }; 303 }; 315 304 316 port01: pci@1,0 { 305 port01: pci@1,0 { 317 device_type = "pci"; 306 device_type = "pci"; 318 reg = <0x800 0x0 0x0 0 307 reg = <0x800 0x0 0x0 0x0 0x0>; 319 reset-gpios = <&pinctr 308 reset-gpios = <&pinctrl_ap 5 GPIO_ACTIVE_LOW>; 320 309 321 #address-cells = <3>; 310 #address-cells = <3>; 322 #size-cells = <2>; 311 #size-cells = <2>; 323 ranges; 312 ranges; 324 313 325 interrupt-controller; 314 interrupt-controller; 326 #interrupt-cells = <1> 315 #interrupt-cells = <1>; 327 316 328 interrupt-map-mask = < 317 interrupt-map-mask = <0 0 0 7>; 329 interrupt-map = <0 0 0 318 interrupt-map = <0 0 0 1 &port01 0 0 0 0>, 330 <0 0 0 319 <0 0 0 2 &port01 0 0 0 1>, 331 <0 0 0 320 <0 0 0 3 &port01 0 0 0 2>, 332 <0 0 0 321 <0 0 0 4 &port01 0 0 0 3>; 333 }; 322 }; 334 323 335 port02: pci@2,0 { 324 port02: pci@2,0 { 336 device_type = "pci"; 325 device_type = "pci"; 337 reg = <0x1000 0x0 0x0 326 reg = <0x1000 0x0 0x0 0x0 0x0>; 338 reset-gpios = <&pinctr 327 reset-gpios = <&pinctrl_ap 6 GPIO_ACTIVE_LOW>; 339 328 340 #address-cells = <3>; 329 #address-cells = <3>; 341 #size-cells = <2>; 330 #size-cells = <2>; 342 ranges; 331 ranges; 343 332 344 interrupt-controller; 333 interrupt-controller; 345 #interrupt-cells = <1> 334 #interrupt-cells = <1>; 346 335 347 interrupt-map-mask = < 336 interrupt-map-mask = <0 0 0 7>; 348 interrupt-map = <0 0 0 337 interrupt-map = <0 0 0 1 &port02 0 0 0 0>, 349 <0 0 0 338 <0 0 0 2 &port02 0 0 0 1>, 350 <0 0 0 339 <0 0 0 3 &port02 0 0 0 2>, 351 <0 0 0 340 <0 0 0 4 &port02 0 0 0 3>; 352 status = "disabled"; << 353 }; 341 }; 354 342 355 port03: pci@3,0 { 343 port03: pci@3,0 { 356 device_type = "pci"; 344 device_type = "pci"; 357 reg = <0x1800 0x0 0x0 345 reg = <0x1800 0x0 0x0 0x0 0x0>; 358 reset-gpios = <&pinctr 346 reset-gpios = <&pinctrl_ap 7 GPIO_ACTIVE_LOW>; 359 347 360 #address-cells = <3>; 348 #address-cells = <3>; 361 #size-cells = <2>; 349 #size-cells = <2>; 362 ranges; 350 ranges; 363 351 364 interrupt-controller; 352 interrupt-controller; 365 #interrupt-cells = <1> 353 #interrupt-cells = <1>; 366 354 367 interrupt-map-mask = < 355 interrupt-map-mask = <0 0 0 7>; 368 interrupt-map = <0 0 0 356 interrupt-map = <0 0 0 1 &port03 0 0 0 0>, 369 <0 0 0 357 <0 0 0 2 &port03 0 0 0 1>, 370 <0 0 0 358 <0 0 0 3 &port03 0 0 0 2>, 371 <0 0 0 359 <0 0 0 4 &port03 0 0 0 3>; 372 status = "disabled"; << 373 }; 360 }; 374 }; 361 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.