2 * This file is licensed under the terms of the GNU General Public License
3 * version 2. This program is licensed "as is" without any warranty of any
4 * kind, whether express or implied.
7 #include <dt-bindings/gpio/gpio.h>
8 #include <dt-bindings/pinctrl/omap.h>
10 #include "skeleton.dtsi"
13 compatible = "ti,dm814";
14 interrupt-parent = <&intc>;
22 ethernet0 = &cpsw_emac0;
23 ethernet1 = &cpsw_emac1;
30 compatible = "arm,cortex-a8";
37 compatible = "arm,cortex-a8-pmu";
42 * The soc node represents the soc top level view. It is used for IPs
43 * that are not memory mapped in the MPU view or for the MPU itself.
46 compatible = "ti,omap-infra";
48 compatible = "ti,omap3-mpu";
54 compatible = "simple-bus";
58 ti,hwmods = "l3_main";
61 * See TRM "Table 1-317. L4LS Instance Summary" for hints.
62 * It shows the module target agent registers though, so the
63 * actual device is typically 0x1000 before the target agent
64 * except in cases where the module is larger than 0x1000.
67 compatible = "ti,dm814-l4ls", "simple-bus";
70 ranges = <0 0x48000000 0x2000000>;
73 compatible = "ti,omap4-i2c";
77 reg = <0x28000 0x1000>;
82 compatible = "ti,814-elm";
84 reg = <0x80000 0x2000>;
89 compatible = "ti,omap4-gpio";
92 reg = <0x32000 0x2000>;
97 #interrupt-cells = <2>;
101 compatible = "ti,omap4-gpio";
104 reg = <0x4c000 0x2000>;
108 interrupt-controller;
109 #interrupt-cells = <2>;
113 compatible = "ti,omap4-i2c";
114 #address-cells = <1>;
117 reg = <0x2a000 0x1000>;
122 compatible = "ti,omap4-mcspi";
123 reg = <0x30000 0x1000>;
124 #address-cells = <1>;
128 ti,hwmods = "mcspi1";
129 dmas = <&edma 16 &edma 17
131 dma-names = "tx0", "rx0", "tx1", "rx1";
134 timer1: timer@2e000 {
135 compatible = "ti,dm814-timer";
136 reg = <0x2e000 0x2000>;
138 ti,hwmods = "timer1";
143 compatible = "ti,omap3-uart";
145 reg = <0x20000 0x2000>;
146 clock-frequency = <48000000>;
148 dmas = <&edma 26 &edma 27>;
149 dma-names = "tx", "rx";
153 compatible = "ti,omap3-uart";
155 reg = <0x22000 0x2000>;
156 clock-frequency = <48000000>;
158 dmas = <&edma 28 &edma 29>;
159 dma-names = "tx", "rx";
163 compatible = "ti,omap3-uart";
165 reg = <0x24000 0x2000>;
166 clock-frequency = <48000000>;
168 dmas = <&edma 30 &edma 31>;
169 dma-names = "tx", "rx";
172 timer2: timer@40000 {
173 compatible = "ti,dm814-timer";
174 reg = <0x40000 0x2000>;
176 ti,hwmods = "timer2";
179 timer3: timer@42000 {
180 compatible = "ti,dm814-timer";
181 reg = <0x42000 0x2000>;
183 ti,hwmods = "timer3";
186 control: control@140000 {
187 compatible = "ti,dm814-scm", "simple-bus";
188 reg = <0x140000 0x20000>;
189 #address-cells = <1>;
191 ranges = <0 0x140000 0x20000>;
193 scm_conf: scm_conf@0 {
194 compatible = "syscon";
196 #address-cells = <1>;
200 #address-cells = <1>;
204 scm_clockdomains: clockdomains {
209 * Note that silicon revision 2.1 and older
210 * require input enabled (bit 18 set) for all
211 * 3.3V I/Os to avoid cumulative hardware damage.
212 * For more info, see errata advisory 2.1.87.
213 * We leave bit 18 out of function-mask and rely
214 * on the bootloader for it.
216 pincntl: pinmux@800 {
217 compatible = "pinctrl-single";
219 #address-cells = <1>;
221 pinctrl-single,register-width = <32>;
222 pinctrl-single,function-mask = <0x307ff>;
227 compatible = "ti,dm814-prcm", "simple-bus";
228 reg = <0x180000 0x2000>;
229 #address-cells = <1>;
231 ranges = <0 0x180000 0x2000>;
233 prcm_clocks: clocks {
234 #address-cells = <1>;
238 prcm_clockdomains: clockdomains {
242 /* See TRM PLL_SUBSYS_BASE and "PLLSS Registers" */
243 pllss: pllss@1c5000 {
244 compatible = "ti,dm814-pllss", "simple-bus";
245 reg = <0x1c5000 0x1000>;
246 #address-cells = <1>;
248 ranges = <0 0x1c5000 0x1000>;
250 pllss_clocks: clocks {
251 #address-cells = <1>;
255 pllss_clockdomains: clockdomains {
260 compatible = "ti,omap3-wdt";
261 ti,hwmods = "wd_timer";
262 reg = <0x1c7000 0x1000>;
267 intc: interrupt-controller@48200000 {
268 compatible = "ti,dm814-intc";
269 interrupt-controller;
270 #interrupt-cells = <1>;
271 reg = <0x48200000 0x1000>;
274 edma: edma@49000000 {
275 compatible = "ti,edma3";
276 ti,hwmods = "tpcc", "tptc0", "tptc1", "tptc2";
277 reg = <0x49000000 0x10000>,
279 interrupts = <12 13 14>;
283 /* See TRM "Table 1-318. L4HS Instance Summary" */
284 l4hs: l4hs@4a000000 {
285 compatible = "ti,dm814-l4hs", "simple-bus";
286 #address-cells = <1>;
288 ranges = <0 0x4a000000 0x1b4040>;
291 /* REVISIT: Move to live under l4hs once driver is fixed */
292 mac: ethernet@4a100000 {
293 compatible = "ti,cpsw";
294 ti,hwmods = "cpgmac0";
295 clocks = <&cpsw_125mhz_gclk>, <&cpsw_cpts_rft_clk>;
296 clock-names = "fck", "cpts";
297 cpdma_channels = <8>;
298 ale_entries = <1024>;
299 bd_ram_size = <0x2000>;
302 mac_control = <0x20>;
305 cpts_clock_mult = <0x80000000>;
306 cpts_clock_shift = <29>;
307 reg = <0x4a100000 0x800
309 #address-cells = <1>;
311 interrupt-parent = <&intc>;
318 interrupts = <40 41 42 43>;
320 syscon = <&scm_conf>;
322 davinci_mdio: mdio@4a100800 {
323 compatible = "ti,davinci_mdio";
324 #address-cells = <1>;
326 ti,hwmods = "davinci_mdio";
327 bus_freq = <1000000>;
328 reg = <0x4a100800 0x100>;
331 cpsw_emac0: slave@4a100200 {
332 /* Filled in by U-Boot */
333 mac-address = [ 00 00 00 00 00 00 ];
336 cpsw_emac1: slave@4a100300 {
337 /* Filled in by U-Boot */
338 mac-address = [ 00 00 00 00 00 00 ];
341 phy_sel: cpsw-phy-sel@48140650 {
342 compatible = "ti,am3352-cpsw-phy-sel";
343 reg= <0x48140650 0x4>;
344 reg-names = "gmii-sel";
350 #include "dm814x-clocks.dtsi"