blob: 3fe991d4cb030532f2f1e5469aede51b68fa1981 [file] [log] [blame]
Vitaly Borduge02f73e2006-10-02 22:22:36 +04001/*
2 * MPC8272 ADS Device Tree Source
3 *
4 * Copyright 2005 Freescale Semiconductor Inc.
5 *
6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the
8 * Free Software Foundation; either version 2 of the License, or (at your
9 * option) any later version.
10 */
11
12/ {
Scott Wood4b218e92007-08-21 02:36:19 +100013 model = "MPC8272ADS";
Scott Woode00c5492007-09-14 15:41:56 -050014 compatible = "fsl,mpc8272ads";
Scott Wood4b218e92007-08-21 02:36:19 +100015 #address-cells = <1>;
16 #size-cells = <1>;
Vitaly Borduge02f73e2006-10-02 22:22:36 +040017
Scott Wood4b218e92007-08-21 02:36:19 +100018 cpus {
19 #address-cells = <1>;
20 #size-cells = <0>;
Vitaly Borduge02f73e2006-10-02 22:22:36 +040021
Scott Wood4b218e92007-08-21 02:36:19 +100022 PowerPC,8272@0 {
23 device_type = "cpu";
24 reg = <0>;
Scott Woode00c5492007-09-14 15:41:56 -050025 d-cache-line-size = <d#32>;
26 i-cache-line-size = <d#32>;
27 d-cache-size = <d#16384>;
28 i-cache-size = <d#16384>;
Scott Wood4b218e92007-08-21 02:36:19 +100029 timebase-frequency = <0>;
30 bus-frequency = <0>;
31 clock-frequency = <0>;
Scott Wood4b218e92007-08-21 02:36:19 +100032 };
33 };
Vitaly Borduge02f73e2006-10-02 22:22:36 +040034
Scott Wood4b218e92007-08-21 02:36:19 +100035 memory {
36 device_type = "memory";
Scott Woode00c5492007-09-14 15:41:56 -050037 reg = <0 0>;
Scott Wood4b218e92007-08-21 02:36:19 +100038 };
39
Scott Woode00c5492007-09-14 15:41:56 -050040 localbus@f0010100 {
41 compatible = "fsl,mpc8272-localbus",
42 "fsl,pq2-localbus";
43 #address-cells = <2>;
44 #size-cells = <1>;
45 reg = <f0010100 40>;
46
47 ranges = <0 0 fe000000 02000000
48 1 0 f4500000 00008000
49 3 0 f8200000 00008000>;
50
51 flash@0,0 {
52 compatible = "jedec-flash";
53 reg = <0 0 2000000>;
54 bank-width = <4>;
55 device-width = <1>;
56 };
57
58 board-control@1,0 {
59 reg = <1 0 20>;
60 compatible = "fsl,mpc8272ads-bcsr";
61 };
62
63 PCI_PIC: interrupt-controller@3,0 {
64 compatible = "fsl,mpc8272ads-pci-pic",
65 "fsl,pq2ads-pci-pic";
66 #interrupt-cells = <1>;
67 interrupt-controller;
68 reg = <3 0 8>;
69 interrupt-parent = <&PIC>;
70 interrupts = <14 8>;
71 };
Scott Wood4b218e92007-08-21 02:36:19 +100072 };
Vitaly Bordug73844ec2007-01-31 02:08:54 +030073
Scott Woode00c5492007-09-14 15:41:56 -050074
75 pci@f0010800 {
76 device_type = "pci";
77 reg = <f0010800 10c f00101ac 8 f00101c4 8>;
78 compatible = "fsl,mpc8272-pci", "fsl,pq2-pci";
79 #interrupt-cells = <1>;
80 #size-cells = <2>;
81 #address-cells = <3>;
82 clock-frequency = <d#66666666>;
83 interrupt-map-mask = <f800 0 0 7>;
84 interrupt-map = <
85 /* IDSEL 0x16 */
86 b000 0 0 1 &PCI_PIC 0
87 b000 0 0 2 &PCI_PIC 1
88 b000 0 0 3 &PCI_PIC 2
89 b000 0 0 4 &PCI_PIC 3
90
91 /* IDSEL 0x17 */
92 b800 0 0 1 &PCI_PIC 4
93 b800 0 0 2 &PCI_PIC 5
94 b800 0 0 3 &PCI_PIC 6
95 b800 0 0 4 &PCI_PIC 7
96
97 /* IDSEL 0x18 */
98 c000 0 0 1 &PCI_PIC 8
99 c000 0 0 2 &PCI_PIC 9
100 c000 0 0 3 &PCI_PIC a
101 c000 0 0 4 &PCI_PIC b>;
102
103 interrupt-parent = <&PIC>;
104 interrupts = <12 8>;
105 ranges = <42000000 0 80000000 80000000 0 20000000
106 02000000 0 a0000000 a0000000 0 20000000
107 01000000 0 00000000 f6000000 0 02000000>;
108 };
109
110 soc@f0000000 {
Scott Wood4b218e92007-08-21 02:36:19 +1000111 #address-cells = <1>;
112 #size-cells = <1>;
Scott Wood4b218e92007-08-21 02:36:19 +1000113 device_type = "soc";
Scott Woode00c5492007-09-14 15:41:56 -0500114 compatible = "fsl,mpc8272", "fsl,pq2-soc";
Scott Wood4b218e92007-08-21 02:36:19 +1000115 ranges = <00000000 f0000000 00053000>;
Vitaly Borduge02f73e2006-10-02 22:22:36 +0400116
Scott Woode00c5492007-09-14 15:41:56 -0500117 // Temporary -- will go away once kernel uses ranges for get_immrbase().
118 reg = <f0000000 00053000>;
Scott Wood4b218e92007-08-21 02:36:19 +1000119
Scott Woode00c5492007-09-14 15:41:56 -0500120 cpm@119c0 {
Scott Wood4b218e92007-08-21 02:36:19 +1000121 #address-cells = <1>;
122 #size-cells = <1>;
Scott Woode00c5492007-09-14 15:41:56 -0500123 compatible = "fsl,mpc8272-cpm", "fsl,cpm2";
124 reg = <119c0 30 0 2000>;
125 ranges;
Vitaly Borduge02f73e2006-10-02 22:22:36 +0400126
Scott Woode00c5492007-09-14 15:41:56 -0500127 brg@119f0 {
128 compatible = "fsl,mpc8272-brg",
129 "fsl,cpm2-brg",
130 "fsl,cpm-brg";
131 reg = <119f0 10 115f0 10>;
Scott Wood4b218e92007-08-21 02:36:19 +1000132 };
Vitaly Borduge02f73e2006-10-02 22:22:36 +0400133
Scott Woode00c5492007-09-14 15:41:56 -0500134 serial@11a00 {
Scott Wood4b218e92007-08-21 02:36:19 +1000135 device_type = "serial";
Scott Woode00c5492007-09-14 15:41:56 -0500136 compatible = "fsl,mpc8272-scc-uart",
137 "fsl,cpm2-scc-uart";
138 reg = <11a00 20 8000 100>;
139 interrupts = <28 8>;
140 interrupt-parent = <&PIC>;
141 fsl,cpm-brg = <1>;
142 fsl,cpm-command = <00800000>;
143 };
144
145 serial@11a60 {
146 device_type = "serial";
147 compatible = "fsl,mpc8272-scc-uart",
148 "fsl,cpm2-scc-uart";
Scott Wood4b218e92007-08-21 02:36:19 +1000149 reg = <11a60 20 8300 100>;
Scott Woode00c5492007-09-14 15:41:56 -0500150 interrupts = <2b 8>;
151 interrupt-parent = <&PIC>;
152 fsl,cpm-brg = <4>;
153 fsl,cpm-command = <0ce00000>;
154 };
155
156 mdio@10d40 {
157 device_type = "mdio";
158 compatible = "fsl,mpc8272ads-mdio-bitbang",
159 "fsl,mpc8272-mdio-bitbang",
160 "fsl,cpm2-mdio-bitbang";
161 reg = <10d40 14>;
162 #address-cells = <1>;
163 #size-cells = <0>;
164 fsl,mdio-pin = <12>;
165 fsl,mdc-pin = <13>;
166
167 PHY0: ethernet-phy@0 {
168 interrupt-parent = <&PIC>;
169 interrupts = <17 8>;
170 reg = <0>;
171 device_type = "ethernet-phy";
172 };
173
174 PHY1: ethernet-phy@1 {
175 interrupt-parent = <&PIC>;
176 interrupts = <17 8>;
177 reg = <3>;
178 device_type = "ethernet-phy";
179 };
180 };
181
182 ethernet@11300 {
183 device_type = "network";
184 compatible = "fsl,mpc8272-fcc-enet",
185 "fsl,cpm2-fcc-enet";
186 reg = <11300 20 8400 100 11390 1>;
187 local-mac-address = [ 00 00 00 00 00 00 ];
188 interrupts = <20 8>;
189 interrupt-parent = <&PIC>;
190 phy-handle = <&PHY0>;
191 linux,network-index = <0>;
192 fsl,cpm-command = <12000300>;
193 };
194
195 ethernet@11320 {
196 device_type = "network";
197 compatible = "fsl,mpc8272-fcc-enet",
198 "fsl,cpm2-fcc-enet";
199 reg = <11320 20 8500 100 113b0 1>;
200 local-mac-address = [ 00 00 00 00 00 00 ];
201 interrupts = <21 8>;
202 interrupt-parent = <&PIC>;
203 phy-handle = <&PHY1>;
204 linux,network-index = <1>;
205 fsl,cpm-command = <16200300>;
Scott Wood4b218e92007-08-21 02:36:19 +1000206 };
207 };
Vitaly Borduge02f73e2006-10-02 22:22:36 +0400208
Scott Woode00c5492007-09-14 15:41:56 -0500209 PIC: interrupt-controller@10c00 {
Scott Wood4b218e92007-08-21 02:36:19 +1000210 #interrupt-cells = <2>;
211 interrupt-controller;
212 reg = <10c00 80>;
Scott Woode00c5492007-09-14 15:41:56 -0500213 compatible = "fsl,mpc8272-pic", "fsl,cpm2-pic";
Scott Wood4b218e92007-08-21 02:36:19 +1000214 };
Vitaly Borduge02f73e2006-10-02 22:22:36 +0400215
216/* May need to remove if on a part without crypto engine */
Scott Wood4b218e92007-08-21 02:36:19 +1000217 crypto@30000 {
218 device_type = "crypto";
219 model = "SEC2";
Scott Woode00c5492007-09-14 15:41:56 -0500220 compatible = "fsl,mpc8272-talitos-sec2",
221 "fsl,talitos-sec2",
222 "fsl,talitos",
223 "talitos";
Scott Wood4b218e92007-08-21 02:36:19 +1000224 reg = <30000 10000>;
Scott Woode00c5492007-09-14 15:41:56 -0500225 interrupts = <b 8>;
226 interrupt-parent = <&PIC>;
Scott Wood4b218e92007-08-21 02:36:19 +1000227 num-channels = <4>;
228 channel-fifo-len = <18>;
229 exec-units-mask = <0000007e>;
Vitaly Borduge02f73e2006-10-02 22:22:36 +0400230/* desc mask is for rev1.x, we need runtime fixup for >=2.x */
Scott Wood4b218e92007-08-21 02:36:19 +1000231 descriptor-types-mask = <01010ebf>;
232 };
233 };
Scott Woode00c5492007-09-14 15:41:56 -0500234
235 chosen {
236 linux,stdout-path = "/soc/cpm/serial@11a00";
237 };
Vitaly Borduge02f73e2006-10-02 22:22:36 +0400238};