0001 // SPDX-License-Identifier: GPL-2.0-or-later
0002 /*
0003 * Device Tree for the PQ2FADS-ZU board with an MPC8280 chip.
0004 *
0005 * Copyright 2007,2008 Freescale Semiconductor Inc.
0006 */
0007
0008 /dts-v1/;
0009
0010 / {
0011 model = "pq2fads";
0012 compatible = "fsl,pq2fads";
0013 #address-cells = <1>;
0014 #size-cells = <1>;
0015
0016 aliases {
0017 ethernet0 = &enet0;
0018 ethernet1 = &enet1;
0019 serial0 = &serial0;
0020 serial1 = &serial1;
0021 pci0 = &pci0;
0022 };
0023
0024 cpus {
0025 #address-cells = <1>;
0026 #size-cells = <0>;
0027
0028 cpu@0 {
0029 device_type = "cpu";
0030 reg = <0x0>;
0031 d-cache-line-size = <32>;
0032 i-cache-line-size = <32>;
0033 d-cache-size = <16384>;
0034 i-cache-size = <16384>;
0035 timebase-frequency = <0>;
0036 clock-frequency = <0>;
0037 };
0038 };
0039
0040 memory {
0041 device_type = "memory";
0042 reg = <0x0 0x0>;
0043 };
0044
0045 localbus@f0010100 {
0046 compatible = "fsl,mpc8280-localbus",
0047 "fsl,pq2-localbus";
0048 #address-cells = <2>;
0049 #size-cells = <1>;
0050 reg = <0xf0010100 0x60>;
0051
0052 ranges = <0x0 0x0 0xff800000 0x800000
0053 0x1 0x0 0xf4500000 0x8000
0054 0x8 0x0 0xf8200000 0x8000>;
0055
0056 flash@0,0 {
0057 compatible = "jedec-flash";
0058 reg = <0x0 0x0 0x800000>;
0059 bank-width = <4>;
0060 device-width = <1>;
0061 };
0062
0063 bcsr@1,0 {
0064 reg = <0x1 0x0 0x20>;
0065 compatible = "fsl,pq2fads-bcsr";
0066 };
0067
0068 PCI_PIC: pic@8,0 {
0069 #interrupt-cells = <1>;
0070 interrupt-controller;
0071 reg = <0x8 0x0 0x8>;
0072 compatible = "fsl,pq2ads-pci-pic";
0073 interrupt-parent = <&PIC>;
0074 interrupts = <24 8>;
0075 };
0076 };
0077
0078 pci0: pci@f0010800 {
0079 device_type = "pci";
0080 reg = <0xf0010800 0x10c 0xf00101ac 0x8 0xf00101c4 0x8>;
0081 compatible = "fsl,mpc8280-pci", "fsl,pq2-pci";
0082 #interrupt-cells = <1>;
0083 #size-cells = <2>;
0084 #address-cells = <3>;
0085 clock-frequency = <66000000>;
0086 interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
0087 interrupt-map = <
0088 /* IDSEL 0x16 */
0089 0xb000 0x0 0x0 0x1 &PCI_PIC 0
0090 0xb000 0x0 0x0 0x2 &PCI_PIC 1
0091 0xb000 0x0 0x0 0x3 &PCI_PIC 2
0092 0xb000 0x0 0x0 0x4 &PCI_PIC 3
0093
0094 /* IDSEL 0x17 */
0095 0xb800 0x0 0x0 0x1 &PCI_PIC 4
0096 0xb800 0x0 0x0 0x2 &PCI_PIC 5
0097 0xb800 0x0 0x0 0x3 &PCI_PIC 6
0098 0xb800 0x0 0x0 0x4 &PCI_PIC 7
0099
0100 /* IDSEL 0x18 */
0101 0xc000 0x0 0x0 0x1 &PCI_PIC 8
0102 0xc000 0x0 0x0 0x2 &PCI_PIC 9
0103 0xc000 0x0 0x0 0x3 &PCI_PIC 10
0104 0xc000 0x0 0x0 0x4 &PCI_PIC 11>;
0105
0106 interrupt-parent = <&PIC>;
0107 interrupts = <18 8>;
0108 ranges = <0x42000000 0x0 0x80000000 0x80000000 0x0 0x20000000
0109 0x2000000 0x0 0xa0000000 0xa0000000 0x0 0x20000000
0110 0x1000000 0x0 0x0 0xf6000000 0x0 0x2000000>;
0111 };
0112
0113 soc@f0000000 {
0114 #address-cells = <1>;
0115 #size-cells = <1>;
0116 device_type = "soc";
0117 compatible = "fsl,mpc8280", "fsl,pq2-soc";
0118 ranges = <0x0 0xf0000000 0x53000>;
0119
0120 // Temporary -- will go away once kernel uses ranges for get_immrbase().
0121 reg = <0xf0000000 0x53000>;
0122
0123 cpm@119c0 {
0124 #address-cells = <1>;
0125 #size-cells = <1>;
0126 #interrupt-cells = <2>;
0127 compatible = "fsl,mpc8280-cpm", "fsl,cpm2";
0128 reg = <0x119c0 0x30>;
0129 ranges;
0130
0131 muram@0 {
0132 #address-cells = <1>;
0133 #size-cells = <1>;
0134 ranges = <0x0 0x0 0x10000>;
0135
0136 data@0 {
0137 compatible = "fsl,cpm-muram-data";
0138 reg = <0x0 0x2000 0x9800 0x800>;
0139 };
0140 };
0141
0142 brg@119f0 {
0143 compatible = "fsl,mpc8280-brg",
0144 "fsl,cpm2-brg",
0145 "fsl,cpm-brg";
0146 reg = <0x119f0 0x10 0x115f0 0x10>;
0147 };
0148
0149 serial0: serial@11a00 {
0150 device_type = "serial";
0151 compatible = "fsl,mpc8280-scc-uart",
0152 "fsl,cpm2-scc-uart";
0153 reg = <0x11a00 0x20 0x8000 0x100>;
0154 interrupts = <40 8>;
0155 interrupt-parent = <&PIC>;
0156 fsl,cpm-brg = <1>;
0157 fsl,cpm-command = <0x800000>;
0158 };
0159
0160 serial1: serial@11a20 {
0161 device_type = "serial";
0162 compatible = "fsl,mpc8280-scc-uart",
0163 "fsl,cpm2-scc-uart";
0164 reg = <0x11a20 0x20 0x8100 0x100>;
0165 interrupts = <41 8>;
0166 interrupt-parent = <&PIC>;
0167 fsl,cpm-brg = <2>;
0168 fsl,cpm-command = <0x4a00000>;
0169 };
0170
0171 enet0: ethernet@11320 {
0172 device_type = "network";
0173 compatible = "fsl,mpc8280-fcc-enet",
0174 "fsl,cpm2-fcc-enet";
0175 reg = <0x11320 0x20 0x8500 0x100 0x113b0 0x1>;
0176 interrupts = <33 8>;
0177 interrupt-parent = <&PIC>;
0178 phy-handle = <&PHY0>;
0179 linux,network-index = <0>;
0180 fsl,cpm-command = <0x16200300>;
0181 };
0182
0183 enet1: ethernet@11340 {
0184 device_type = "network";
0185 compatible = "fsl,mpc8280-fcc-enet",
0186 "fsl,cpm2-fcc-enet";
0187 reg = <0x11340 0x20 0x8600 0x100 0x113d0 0x1>;
0188 interrupts = <34 8>;
0189 interrupt-parent = <&PIC>;
0190 phy-handle = <&PHY1>;
0191 linux,network-index = <1>;
0192 fsl,cpm-command = <0x1a400300>;
0193 local-mac-address = [00 e0 0c 00 79 01];
0194 };
0195
0196 mdio@10d40 {
0197 compatible = "fsl,pq2fads-mdio-bitbang",
0198 "fsl,mpc8280-mdio-bitbang",
0199 "fsl,cpm2-mdio-bitbang";
0200 #address-cells = <1>;
0201 #size-cells = <0>;
0202 reg = <0x10d40 0x14>;
0203 fsl,mdio-pin = <9>;
0204 fsl,mdc-pin = <10>;
0205
0206 PHY0: ethernet-phy@0 {
0207 interrupt-parent = <&PIC>;
0208 interrupts = <25 2>;
0209 reg = <0x0>;
0210 };
0211
0212 PHY1: ethernet-phy@1 {
0213 interrupt-parent = <&PIC>;
0214 interrupts = <25 2>;
0215 reg = <0x3>;
0216 };
0217 };
0218
0219 usb@11b60 {
0220 #address-cells = <1>;
0221 #size-cells = <0>;
0222 compatible = "fsl,mpc8280-usb",
0223 "fsl,cpm2-usb";
0224 reg = <0x11b60 0x18 0x8b00 0x100>;
0225 interrupt-parent = <&PIC>;
0226 interrupts = <11 8>;
0227 fsl,cpm-command = <0x2e600000>;
0228 };
0229 };
0230
0231 PIC: interrupt-controller@10c00 {
0232 #interrupt-cells = <2>;
0233 interrupt-controller;
0234 reg = <0x10c00 0x80>;
0235 compatible = "fsl,mpc8280-pic", "fsl,cpm2-pic";
0236 };
0237
0238 };
0239
0240 chosen {
0241 stdout-path = "/soc/cpm/serial@11a00";
0242 };
0243 };