0001 /*
0002 * P1010/P1014 Silicon/SoC Device Tree Source (post include)
0003 *
0004 * Copyright 2011 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 THIS
0032 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
0033 */
0034
0035 &ifc {
0036 #address-cells = <2>;
0037 #size-cells = <1>;
0038 compatible = "fsl,ifc", "simple-bus";
0039 interrupts = <16 2 0 0 19 2 0 0>;
0040 };
0041
0042 /* controller at 0x9000 */
0043 &pci0 {
0044 compatible = "fsl,p1010-pcie", "fsl,qoriq-pcie-v2.3";
0045 device_type = "pci";
0046 #size-cells = <2>;
0047 #address-cells = <3>;
0048 bus-range = <0 255>;
0049 clock-frequency = <33333333>;
0050 interrupts = <16 2 0 0>;
0051
0052 pcie@0 {
0053 reg = <0 0 0 0 0>;
0054 #interrupt-cells = <1>;
0055 #size-cells = <2>;
0056 #address-cells = <3>;
0057 device_type = "pci";
0058 interrupts = <16 2 0 0>;
0059 interrupt-map-mask = <0xf800 0 0 7>;
0060 interrupt-map = <
0061 /* IDSEL 0x0 */
0062 0000 0x0 0x0 0x1 &mpic 0x4 0x1 0x0 0x0
0063 0000 0x0 0x0 0x2 &mpic 0x5 0x1 0x0 0x0
0064 0000 0x0 0x0 0x3 &mpic 0x6 0x1 0x0 0x0
0065 0000 0x0 0x0 0x4 &mpic 0x7 0x1 0x0 0x0
0066 >;
0067 };
0068 };
0069
0070 /* controller at 0xa000 */
0071 &pci1 {
0072 compatible = "fsl,p1010-pcie", "fsl,qoriq-pcie-v2.3";
0073 device_type = "pci";
0074 #size-cells = <2>;
0075 #address-cells = <3>;
0076 bus-range = <0 255>;
0077 clock-frequency = <33333333>;
0078 interrupts = <16 2 0 0>;
0079
0080 pcie@0 {
0081 reg = <0 0 0 0 0>;
0082 #interrupt-cells = <1>;
0083 #size-cells = <2>;
0084 #address-cells = <3>;
0085 device_type = "pci";
0086 interrupts = <16 2 0 0>;
0087 interrupt-map-mask = <0xf800 0 0 7>;
0088
0089 interrupt-map = <
0090 /* IDSEL 0x0 */
0091 0000 0x0 0x0 0x1 &mpic 0x0 0x1 0x0 0x0
0092 0000 0x0 0x0 0x2 &mpic 0x1 0x1 0x0 0x0
0093 0000 0x0 0x0 0x3 &mpic 0x2 0x1 0x0 0x0
0094 0000 0x0 0x0 0x4 &mpic 0x3 0x1 0x0 0x0
0095 >;
0096 };
0097 };
0098
0099 &soc {
0100 #address-cells = <1>;
0101 #size-cells = <1>;
0102 device_type = "soc";
0103 compatible = "fsl,p1010-immr", "simple-bus";
0104 bus-frequency = <0>; // Filled out by uboot.
0105
0106 ecm-law@0 {
0107 compatible = "fsl,ecm-law";
0108 reg = <0x0 0x1000>;
0109 fsl,num-laws = <12>;
0110 };
0111
0112 ecm@1000 {
0113 compatible = "fsl,p1010-ecm", "fsl,ecm";
0114 reg = <0x1000 0x1000>;
0115 interrupts = <16 2 0 0>;
0116 };
0117
0118 memory-controller@2000 {
0119 compatible = "fsl,p1010-memory-controller";
0120 reg = <0x2000 0x1000>;
0121 interrupts = <16 2 0 0>;
0122 };
0123
0124 /include/ "pq3-i2c-0.dtsi"
0125 i2c@3000 {
0126 fsl,i2c-erratum-a004447;
0127 };
0128
0129 /include/ "pq3-i2c-1.dtsi"
0130 i2c@3100 {
0131 fsl,i2c-erratum-a004447;
0132 };
0133
0134 /include/ "pq3-duart-0.dtsi"
0135 /include/ "pq3-espi-0.dtsi"
0136 spi0: spi@7000 {
0137 fsl,espi-num-chipselects = <1>;
0138 };
0139
0140 /include/ "pq3-gpio-0.dtsi"
0141 /include/ "pq3-sata2-0.dtsi"
0142 /include/ "pq3-sata2-1.dtsi"
0143
0144 can0: can@1c000 {
0145 compatible = "fsl,p1010-flexcan";
0146 reg = <0x1c000 0x1000>;
0147 interrupts = <48 0x2 0 0>;
0148 big-endian;
0149 };
0150
0151 can1: can@1d000 {
0152 compatible = "fsl,p1010-flexcan";
0153 reg = <0x1d000 0x1000>;
0154 interrupts = <61 0x2 0 0>;
0155 big-endian;
0156 };
0157
0158 L2: l2-cache-controller@20000 {
0159 compatible = "fsl,p1010-l2-cache-controller",
0160 "fsl,p1014-l2-cache-controller";
0161 reg = <0x20000 0x1000>;
0162 cache-line-size = <32>; // 32 bytes
0163 cache-size = <0x40000>; // L2,256K
0164 interrupts = <16 2 0 0>;
0165 };
0166
0167 /include/ "pq3-dma-0.dtsi"
0168 /include/ "pq3-usb2-dr-0.dtsi"
0169 usb@22000 {
0170 compatible = "fsl-usb2-dr-v1.6", "fsl-usb2-dr";
0171 };
0172 /include/ "pq3-esdhc-0.dtsi"
0173 sdhc@2e000 {
0174 compatible = "fsl,p1010-esdhc", "fsl,esdhc";
0175 sdhci,auto-cmd12;
0176 };
0177
0178 /include/ "pq3-sec4.4-0.dtsi"
0179 /include/ "pq3-mpic.dtsi"
0180 /include/ "pq3-mpic-timer-B.dtsi"
0181
0182 /include/ "pq3-etsec2-0.dtsi"
0183 /include/ "pq3-etsec2-1.dtsi"
0184 /include/ "pq3-etsec2-2.dtsi"
0185
0186 global-utilities@e0000 {
0187 compatible = "fsl,p1010-guts";
0188 reg = <0xe0000 0x1000>;
0189 fsl,has-rstcr;
0190 };
0191 };