0001 /*
0002 * B4420 Silicon/SoC Device Tree Source (post include)
0003 *
0004 * Copyright 2012 - 2015 Freescale Semiconductor, Inc.
0005 *
0006 * Redistribution and use in source and binary forms, with or without
0007 * modification, are permitted provided that the following conditions are met:
0008 * * Redistributions of source code must retain the above copyright
0009 * notice, this list of conditions and the following disclaimer.
0010 * * Redistributions in binary form must reproduce the above copyright
0011 * notice, this list of conditions and the following disclaimer in the
0012 * documentation and/or other materials provided with the distribution.
0013 * * Neither the name of Freescale Semiconductor nor the
0014 * names of its contributors may be used to endorse or promote products
0015 * derived from this software without specific prior written permission.
0016 *
0017 *
0018 * ALTERNATIVELY, this software may be distributed under the terms of the
0019 * GNU General Public License ("GPL") as published by the Free Software
0020 * Foundation, either version 2 of that License or (at your option) any
0021 * later version.
0022 *
0023 * This software is provided by Freescale Semiconductor "as is" and any
0024 * express or implied warranties, including, but not limited to, the implied
0025 * warranties of merchantability and fitness for a particular purpose are
0026 * disclaimed. In no event shall Freescale Semiconductor be liable for any
0027 * direct, indirect, incidental, special, exemplary, or consequential damages
0028 * (including, but not limited to, procurement of substitute goods or services;
0029 * loss of use, data, or profits; or business interruption) however caused and
0030 * on any theory of liability, whether in contract, strict liability, or tort
0031 * (including negligence or otherwise) arising in any way out of the use of
0032 * this software, even if advised of the possibility of such damage.
0033 */
0034
0035 &bman_fbpr {
0036 compatible = "fsl,bman-fbpr";
0037 alloc-ranges = <0 0 0x10000 0>;
0038 };
0039
0040 &qman_fqd {
0041 compatible = "fsl,qman-fqd";
0042 alloc-ranges = <0 0 0x10000 0>;
0043 };
0044
0045 &qman_pfdr {
0046 compatible = "fsl,qman-pfdr";
0047 alloc-ranges = <0 0 0x10000 0>;
0048 };
0049
0050 &ifc {
0051 #address-cells = <2>;
0052 #size-cells = <1>;
0053 compatible = "fsl,ifc", "simple-bus";
0054 interrupts = <25 2 0 0>;
0055 };
0056
0057 /* controller at 0x200000 */
0058 &pci0 {
0059 compatible = "fsl,b4-pcie", "fsl,qoriq-pcie-v2.4";
0060 device_type = "pci";
0061 #size-cells = <2>;
0062 #address-cells = <3>;
0063 bus-range = <0x0 0xff>;
0064 interrupts = <20 2 0 0>;
0065 fsl,iommu-parent = <&pamu0>;
0066 pcie@0 {
0067 #interrupt-cells = <1>;
0068 #size-cells = <2>;
0069 #address-cells = <3>;
0070 device_type = "pci";
0071 reg = <0 0 0 0 0>;
0072 interrupts = <20 2 0 0>;
0073 interrupt-map-mask = <0xf800 0 0 7>;
0074 interrupt-map = <
0075 /* IDSEL 0x0 */
0076 0000 0 0 1 &mpic 40 1 0 0
0077 0000 0 0 2 &mpic 1 1 0 0
0078 0000 0 0 3 &mpic 2 1 0 0
0079 0000 0 0 4 &mpic 3 1 0 0
0080 >;
0081 };
0082 };
0083
0084 &dcsr {
0085 #address-cells = <1>;
0086 #size-cells = <1>;
0087 compatible = "fsl,dcsr", "simple-bus";
0088
0089 dcsr-epu@0 {
0090 compatible = "fsl,b4-dcsr-epu", "fsl,dcsr-epu";
0091 interrupts = <52 2 0 0
0092 84 2 0 0
0093 85 2 0 0
0094 94 2 0 0
0095 95 2 0 0>;
0096 reg = <0x0 0x1000>;
0097 };
0098 dcsr-npc {
0099 compatible = "fsl,b4-dcsr-cnpc", "fsl,dcsr-cnpc";
0100 reg = <0x1000 0x1000 0x1002000 0x10000>;
0101 };
0102 dcsr-nxc@2000 {
0103 compatible = "fsl,dcsr-nxc";
0104 reg = <0x2000 0x1000>;
0105 };
0106 dcsr-corenet {
0107 compatible = "fsl,dcsr-corenet";
0108 reg = <0x8000 0x1000 0x1A000 0x1000>;
0109 };
0110 dcsr-dpaa@9000 {
0111 compatible = "fsl,b4-dcsr-dpaa", "fsl,dcsr-dpaa";
0112 reg = <0x9000 0x1000>;
0113 };
0114 dcsr-ocn@11000 {
0115 compatible = "fsl,b4-dcsr-ocn", "fsl,dcsr-ocn";
0116 reg = <0x11000 0x1000>;
0117 };
0118 dcsr-ddr@12000 {
0119 compatible = "fsl,dcsr-ddr";
0120 dev-handle = <&ddr1>;
0121 reg = <0x12000 0x1000>;
0122 };
0123 dcsr-nal@18000 {
0124 compatible = "fsl,b4-dcsr-nal", "fsl,dcsr-nal";
0125 reg = <0x18000 0x1000>;
0126 };
0127 dcsr-rcpm@22000 {
0128 compatible = "fsl,b4-dcsr-rcpm", "fsl,dcsr-rcpm";
0129 reg = <0x22000 0x1000>;
0130 };
0131 dcsr-snpc@30000 {
0132 compatible = "fsl,b4-dcsr-snpc", "fsl,dcsr-snpc";
0133 reg = <0x30000 0x1000 0x1022000 0x10000>;
0134 };
0135 dcsr-snpc@31000 {
0136 compatible = "fsl,b4-dcsr-snpc", "fsl,dcsr-snpc";
0137 reg = <0x31000 0x1000 0x1042000 0x10000>;
0138 };
0139 dcsr-cpu-sb-proxy@100000 {
0140 compatible = "fsl,dcsr-e6500-sb-proxy", "fsl,dcsr-cpu-sb-proxy";
0141 cpu-handle = <&cpu0>;
0142 reg = <0x100000 0x1000 0x101000 0x1000>;
0143 };
0144 };
0145
0146 &bportals {
0147 #address-cells = <0x1>;
0148 #size-cells = <0x1>;
0149 compatible = "simple-bus";
0150
0151 bman-portal@0 {
0152 compatible = "fsl,bman-portal";
0153 reg = <0x0 0x4000>, <0x1000000 0x1000>;
0154 interrupts = <105 2 0 0>;
0155 };
0156 bman-portal@4000 {
0157 compatible = "fsl,bman-portal";
0158 reg = <0x4000 0x4000>, <0x1001000 0x1000>;
0159 interrupts = <107 2 0 0>;
0160 };
0161 bman-portal@8000 {
0162 compatible = "fsl,bman-portal";
0163 reg = <0x8000 0x4000>, <0x1002000 0x1000>;
0164 interrupts = <109 2 0 0>;
0165 };
0166 bman-portal@c000 {
0167 compatible = "fsl,bman-portal";
0168 reg = <0xc000 0x4000>, <0x1003000 0x1000>;
0169 interrupts = <111 2 0 0>;
0170 };
0171 bman-portal@10000 {
0172 compatible = "fsl,bman-portal";
0173 reg = <0x10000 0x4000>, <0x1004000 0x1000>;
0174 interrupts = <113 2 0 0>;
0175 };
0176 bman-portal@14000 {
0177 compatible = "fsl,bman-portal";
0178 reg = <0x14000 0x4000>, <0x1005000 0x1000>;
0179 interrupts = <115 2 0 0>;
0180 };
0181 bman-portal@18000 {
0182 compatible = "fsl,bman-portal";
0183 reg = <0x18000 0x4000>, <0x1006000 0x1000>;
0184 interrupts = <117 2 0 0>;
0185 };
0186 bman-portal@1c000 {
0187 compatible = "fsl,bman-portal";
0188 reg = <0x1c000 0x4000>, <0x1007000 0x1000>;
0189 interrupts = <119 2 0 0>;
0190 };
0191 bman-portal@20000 {
0192 compatible = "fsl,bman-portal";
0193 reg = <0x20000 0x4000>, <0x1008000 0x1000>;
0194 interrupts = <121 2 0 0>;
0195 };
0196 bman-portal@24000 {
0197 compatible = "fsl,bman-portal";
0198 reg = <0x24000 0x4000>, <0x1009000 0x1000>;
0199 interrupts = <123 2 0 0>;
0200 };
0201 bman-portal@28000 {
0202 compatible = "fsl,bman-portal";
0203 reg = <0x28000 0x4000>, <0x100a000 0x1000>;
0204 interrupts = <125 2 0 0>;
0205 };
0206 bman-portal@2c000 {
0207 compatible = "fsl,bman-portal";
0208 reg = <0x2c000 0x4000>, <0x100b000 0x1000>;
0209 interrupts = <127 2 0 0>;
0210 };
0211 bman-portal@30000 {
0212 compatible = "fsl,bman-portal";
0213 reg = <0x30000 0x4000>, <0x100c000 0x1000>;
0214 interrupts = <129 2 0 0>;
0215 };
0216 bman-portal@34000 {
0217 compatible = "fsl,bman-portal";
0218 reg = <0x34000 0x4000>, <0x100d000 0x1000>;
0219 interrupts = <131 2 0 0>;
0220 };
0221 };
0222
0223 &qportals {
0224 #address-cells = <0x1>;
0225 #size-cells = <0x1>;
0226 compatible = "simple-bus";
0227
0228 qportal0: qman-portal@0 {
0229 compatible = "fsl,qman-portal";
0230 reg = <0x0 0x4000>, <0x1000000 0x1000>;
0231 interrupts = <104 0x2 0 0>;
0232 cell-index = <0x0>;
0233 };
0234 qportal1: qman-portal@4000 {
0235 compatible = "fsl,qman-portal";
0236 reg = <0x4000 0x4000>, <0x1001000 0x1000>;
0237 interrupts = <106 0x2 0 0>;
0238 cell-index = <0x1>;
0239 };
0240 qportal2: qman-portal@8000 {
0241 compatible = "fsl,qman-portal";
0242 reg = <0x8000 0x4000>, <0x1002000 0x1000>;
0243 interrupts = <108 0x2 0 0>;
0244 cell-index = <0x2>;
0245 };
0246 qportal3: qman-portal@c000 {
0247 compatible = "fsl,qman-portal";
0248 reg = <0xc000 0x4000>, <0x1003000 0x1000>;
0249 interrupts = <110 0x2 0 0>;
0250 cell-index = <0x3>;
0251 };
0252 qportal4: qman-portal@10000 {
0253 compatible = "fsl,qman-portal";
0254 reg = <0x10000 0x4000>, <0x1004000 0x1000>;
0255 interrupts = <112 0x2 0 0>;
0256 cell-index = <0x4>;
0257 };
0258 qportal5: qman-portal@14000 {
0259 compatible = "fsl,qman-portal";
0260 reg = <0x14000 0x4000>, <0x1005000 0x1000>;
0261 interrupts = <114 0x2 0 0>;
0262 cell-index = <0x5>;
0263 };
0264 qportal6: qman-portal@18000 {
0265 compatible = "fsl,qman-portal";
0266 reg = <0x18000 0x4000>, <0x1006000 0x1000>;
0267 interrupts = <116 0x2 0 0>;
0268 cell-index = <0x6>;
0269 };
0270 qportal7: qman-portal@1c000 {
0271 compatible = "fsl,qman-portal";
0272 reg = <0x1c000 0x4000>, <0x1007000 0x1000>;
0273 interrupts = <118 0x2 0 0>;
0274 cell-index = <0x7>;
0275 };
0276 qportal8: qman-portal@20000 {
0277 compatible = "fsl,qman-portal";
0278 reg = <0x20000 0x4000>, <0x1008000 0x1000>;
0279 interrupts = <120 0x2 0 0>;
0280 cell-index = <0x8>;
0281 };
0282 qportal9: qman-portal@24000 {
0283 compatible = "fsl,qman-portal";
0284 reg = <0x24000 0x4000>, <0x1009000 0x1000>;
0285 interrupts = <122 0x2 0 0>;
0286 cell-index = <0x9>;
0287 };
0288 qportal10: qman-portal@28000 {
0289 compatible = "fsl,qman-portal";
0290 reg = <0x28000 0x4000>, <0x100a000 0x1000>;
0291 interrupts = <124 0x2 0 0>;
0292 cell-index = <0xa>;
0293 };
0294 qportal11: qman-portal@2c000 {
0295 compatible = "fsl,qman-portal";
0296 reg = <0x2c000 0x4000>, <0x100b000 0x1000>;
0297 interrupts = <126 0x2 0 0>;
0298 cell-index = <0xb>;
0299 };
0300 qportal12: qman-portal@30000 {
0301 compatible = "fsl,qman-portal";
0302 reg = <0x30000 0x4000>, <0x100c000 0x1000>;
0303 interrupts = <128 0x2 0 0>;
0304 cell-index = <0xc>;
0305 };
0306 qportal13: qman-portal@34000 {
0307 compatible = "fsl,qman-portal";
0308 reg = <0x34000 0x4000>, <0x100d000 0x1000>;
0309 interrupts = <130 0x2 0 0>;
0310 cell-index = <0xd>;
0311 };
0312 };
0313
0314 &soc {
0315 #address-cells = <1>;
0316 #size-cells = <1>;
0317 device_type = "soc";
0318 compatible = "simple-bus";
0319
0320 soc-sram-error {
0321 compatible = "fsl,soc-sram-error";
0322 interrupts = <16 2 1 2>;
0323 };
0324
0325 corenet-law@0 {
0326 compatible = "fsl,corenet-law";
0327 reg = <0x0 0x1000>;
0328 fsl,num-laws = <32>;
0329 };
0330
0331 ddr1: memory-controller@8000 {
0332 compatible = "fsl,qoriq-memory-controller-v4.5", "fsl,qoriq-memory-controller";
0333 reg = <0x8000 0x1000>;
0334 interrupts = <16 2 1 8>;
0335 };
0336
0337 cpc: l3-cache-controller@10000 {
0338 compatible = "fsl,b4-l3-cache-controller", "cache";
0339 reg = <0x10000 0x1000>;
0340 interrupts = <16 2 1 4>;
0341 };
0342
0343 corenet-cf@18000 {
0344 compatible = "fsl,corenet2-cf", "fsl,corenet-cf";
0345 reg = <0x18000 0x1000>;
0346 interrupts = <16 2 1 0>;
0347 fsl,ccf-num-csdids = <32>;
0348 fsl,ccf-num-snoopids = <32>;
0349 };
0350
0351 iommu@20000 {
0352 compatible = "fsl,pamu-v1.0", "fsl,pamu";
0353 reg = <0x20000 0x4000>;
0354 fsl,portid-mapping = <0x8000>;
0355 #address-cells = <1>;
0356 #size-cells = <1>;
0357 interrupts = <
0358 24 2 0 0
0359 16 2 1 1>;
0360
0361
0362 /* PCIe, DMA, SRIO */
0363 pamu0: pamu@0 {
0364 reg = <0 0x1000>;
0365 fsl,primary-cache-geometry = <8 1>;
0366 fsl,secondary-cache-geometry = <32 2>;
0367 };
0368
0369 /* AXI2, Maple */
0370 pamu1: pamu@1000 {
0371 reg = <0x1000 0x1000>;
0372 fsl,primary-cache-geometry = <32 1>;
0373 fsl,secondary-cache-geometry = <32 2>;
0374 };
0375
0376 /* Q/BMan */
0377 pamu2: pamu@2000 {
0378 reg = <0x2000 0x1000>;
0379 fsl,primary-cache-geometry = <32 1>;
0380 fsl,secondary-cache-geometry = <32 2>;
0381 };
0382
0383 /* AXI1, FMAN */
0384 pamu3: pamu@3000 {
0385 reg = <0x3000 0x1000>;
0386 fsl,primary-cache-geometry = <32 1>;
0387 fsl,secondary-cache-geometry = <32 2>;
0388 };
0389 };
0390
0391 /include/ "qoriq-mpic4.3.dtsi"
0392
0393 guts: global-utilities@e0000 {
0394 compatible = "fsl,b4-device-config";
0395 reg = <0xe0000 0xe00>;
0396 fsl,has-rstcr;
0397 fsl,liodn-bits = <12>;
0398 };
0399
0400 /include/ "qoriq-clockgen2.dtsi"
0401
0402 rcpm: global-utilities@e2000 {
0403 compatible = "fsl,b4-rcpm", "fsl,qoriq-rcpm-2.0";
0404 reg = <0xe2000 0x1000>;
0405 };
0406
0407 /include/ "elo3-dma-0.dtsi"
0408 dma@100300 {
0409 fsl,iommu-parent = <&pamu0>;
0410 fsl,liodn-reg = <&guts 0x580>; /* DMA1LIODNR */
0411 };
0412
0413 /include/ "elo3-dma-1.dtsi"
0414 dma@101300 {
0415 fsl,iommu-parent = <&pamu0>;
0416 fsl,liodn-reg = <&guts 0x584>; /* DMA2LIODNR */
0417 };
0418
0419 /include/ "qonverge-usb2-dr-0.dtsi"
0420 usb0: usb@210000 {
0421 compatible = "fsl-usb2-dr-v2.4", "fsl-usb2-dr";
0422 fsl,iommu-parent = <&pamu1>;
0423 fsl,liodn-reg = <&guts 0x520>; /* USB1LIODNR */
0424 };
0425
0426 /include/ "qoriq-espi-0.dtsi"
0427 spi@110000 {
0428 fsl,espi-num-chipselects = <4>;
0429 };
0430
0431 /include/ "qoriq-esdhc-0.dtsi"
0432 sdhc@114000 {
0433 sdhci,auto-cmd12;
0434 fsl,iommu-parent = <&pamu1>;
0435 fsl,liodn-reg = <&guts 0x530>; /* eSDHCLIODNR */
0436 };
0437
0438 /include/ "qoriq-i2c-0.dtsi"
0439 /include/ "qoriq-i2c-1.dtsi"
0440 /include/ "qoriq-duart-0.dtsi"
0441 /include/ "qoriq-duart-1.dtsi"
0442 /include/ "qoriq-sec5.3-0.dtsi"
0443
0444 /include/ "qoriq-qman3.dtsi"
0445 qman: qman@318000 {
0446 interrupts = <16 2 1 28>;
0447 };
0448
0449 /include/ "qoriq-bman1.dtsi"
0450 bman: bman@31a000 {
0451 interrupts = <16 2 1 29>;
0452 };
0453
0454 /include/ "qoriq-fman3-0.dtsi"
0455 /include/ "qoriq-fman3-0-1g-0.dtsi"
0456 /include/ "qoriq-fman3-0-1g-1.dtsi"
0457 /include/ "qoriq-fman3-0-1g-2.dtsi"
0458 /include/ "qoriq-fman3-0-1g-3.dtsi"
0459 fman@400000 {
0460 interrupts = <96 2 0 0>, <16 2 1 30>;
0461
0462 muram@0 {
0463 compatible = "fsl,fman-muram";
0464 reg = <0x0 0x80000>;
0465 };
0466
0467 enet0: ethernet@e0000 {
0468 };
0469
0470 enet1: ethernet@e2000 {
0471 };
0472
0473 enet2: ethernet@e4000 {
0474 };
0475
0476 enet3: ethernet@e6000 {
0477 };
0478
0479 mdio@fc000 {
0480 interrupts = <100 1 0 0>;
0481 };
0482
0483 mdio@fd000 {
0484 interrupts = <101 1 0 0>;
0485 };
0486 };
0487 };