Merge remote-tracking branches 'spi/topic/atmel', 'spi/topic/bcm63xx', 'spi/topic...
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / keystone-k2e.dtsi
1 /*
2  * Copyright 2013-2014 Texas Instruments, Inc.
3  *
4  * Keystone 2 Edison soc device tree
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 as
8  * published by the Free Software Foundation.
9  */
10
11 #include <dt-bindings/reset/ti-syscon.h>
12
13 / {
14         compatible = "ti,k2e", "ti,keystone";
15         model = "Texas Instruments Keystone 2 Edison SoC";
16
17         cpus {
18                 #address-cells = <1>;
19                 #size-cells = <0>;
20
21                 interrupt-parent = <&gic>;
22
23                 cpu@0 {
24                         compatible = "arm,cortex-a15";
25                         device_type = "cpu";
26                         reg = <0>;
27                 };
28
29                 cpu@1 {
30                         compatible = "arm,cortex-a15";
31                         device_type = "cpu";
32                         reg = <1>;
33                 };
34
35                 cpu@2 {
36                         compatible = "arm,cortex-a15";
37                         device_type = "cpu";
38                         reg = <2>;
39                 };
40
41                 cpu@3 {
42                         compatible = "arm,cortex-a15";
43                         device_type = "cpu";
44                         reg = <3>;
45                 };
46         };
47
48         soc {
49                 /include/ "keystone-k2e-clocks.dtsi"
50
51                 usb: usb@2680000 {
52                         interrupts = <GIC_SPI 152 IRQ_TYPE_EDGE_RISING>;
53                         dwc3@2690000 {
54                                 interrupts = <GIC_SPI 152 IRQ_TYPE_EDGE_RISING>;
55                         };
56                 };
57
58                 usb1_phy: usb_phy@2620750 {
59                         compatible = "ti,keystone-usbphy";
60                         #address-cells = <1>;
61                         #size-cells = <1>;
62                         reg = <0x2620750 24>;
63                         status = "disabled";
64                 };
65
66                 keystone_usb1: usb@25000000 {
67                         compatible = "ti,keystone-dwc3";
68                         #address-cells = <1>;
69                         #size-cells = <1>;
70                         reg = <0x25000000 0x10000>;
71                         clocks = <&clkusb1>;
72                         clock-names = "usb";
73                         interrupts = <GIC_SPI 414 IRQ_TYPE_EDGE_RISING>;
74                         ranges;
75                         dma-coherent;
76                         dma-ranges;
77                         status = "disabled";
78
79                         usb1: dwc3@25010000 {
80                                 compatible = "synopsys,dwc3";
81                                 reg = <0x25010000 0x70000>;
82                                 interrupts = <GIC_SPI 414 IRQ_TYPE_EDGE_RISING>;
83                                 usb-phy = <&usb1_phy>, <&usb1_phy>;
84                         };
85                 };
86
87                 msm_ram: msmram@0c000000 {
88                         compatible = "mmio-sram";
89                         reg = <0x0c000000 0x200000>;
90                         ranges = <0x0 0x0c000000 0x200000>;
91                         #address-cells = <1>;
92                         #size-cells = <1>;
93
94                         sram-bm@1f0000 {
95                                 reg = <0x001f0000 0x8000>;
96                         };
97                 };
98
99                 psc: power-sleep-controller@02350000 {
100                         pscrst: reset-controller {
101                                 compatible = "ti,k2e-pscrst", "ti,syscon-reset";
102                                 #reset-cells = <1>;
103
104                                 ti,reset-bits = <
105                                         0xa3c 8 0xa3c 8 0x83c 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 0: dsp0 */
106                                 >;
107                         };
108                 };
109
110                 dspgpio0: keystone_dsp_gpio@02620240 {
111                         compatible = "ti,keystone-dsp-gpio";
112                         gpio-controller;
113                         #gpio-cells = <2>;
114                         gpio,syscon-dev = <&devctrl 0x240>;
115                 };
116
117                 pcie1: pcie@21020000 {
118                         compatible = "ti,keystone-pcie","snps,dw-pcie";
119                         clocks = <&clkpcie1>;
120                         clock-names = "pcie";
121                         #address-cells = <3>;
122                         #size-cells = <2>;
123                         reg =  <0x21021000 0x2000>, <0x21020000 0x1000>, <0x02620128 4>;
124                         ranges = <0x82000000 0 0x60000000 0x60000000
125                                   0 0x10000000>;
126
127                         status = "disabled";
128                         device_type = "pci";
129                         num-lanes = <2>;
130                         bus-range = <0x00 0xff>;
131
132                         /* error interrupt */
133                         interrupts = <GIC_SPI 385 IRQ_TYPE_EDGE_RISING>;
134                         #interrupt-cells = <1>;
135                         interrupt-map-mask = <0 0 0 7>;
136                         interrupt-map = <0 0 0 1 &pcie_intc1 0>, /* INT A */
137                                         <0 0 0 2 &pcie_intc1 1>, /* INT B */
138                                         <0 0 0 3 &pcie_intc1 2>, /* INT C */
139                                         <0 0 0 4 &pcie_intc1 3>; /* INT D */
140
141                         pcie_msi_intc1: msi-interrupt-controller {
142                                 interrupt-controller;
143                                 #interrupt-cells = <1>;
144                                 interrupt-parent = <&gic>;
145                                 interrupts = <GIC_SPI 377 IRQ_TYPE_EDGE_RISING>,
146                                         <GIC_SPI 378 IRQ_TYPE_EDGE_RISING>,
147                                         <GIC_SPI 379 IRQ_TYPE_EDGE_RISING>,
148                                         <GIC_SPI 380 IRQ_TYPE_EDGE_RISING>,
149                                         <GIC_SPI 381 IRQ_TYPE_EDGE_RISING>,
150                                         <GIC_SPI 382 IRQ_TYPE_EDGE_RISING>,
151                                         <GIC_SPI 383 IRQ_TYPE_EDGE_RISING>,
152                                         <GIC_SPI 384 IRQ_TYPE_EDGE_RISING>;
153                         };
154
155                         pcie_intc1: legacy-interrupt-controller {
156                                 interrupt-controller;
157                                 #interrupt-cells = <1>;
158                                 interrupt-parent = <&gic>;
159                                 interrupts = <GIC_SPI 373 IRQ_TYPE_EDGE_RISING>,
160                                         <GIC_SPI 374 IRQ_TYPE_EDGE_RISING>,
161                                         <GIC_SPI 375 IRQ_TYPE_EDGE_RISING>,
162                                         <GIC_SPI 376 IRQ_TYPE_EDGE_RISING>;
163                         };
164                 };
165
166                 mdio: mdio@24200f00 {
167                         compatible      = "ti,keystone_mdio", "ti,davinci_mdio";
168                         #address-cells = <1>;
169                         #size-cells = <0>;
170                         reg = <0x24200f00 0x100>;
171                         status = "disabled";
172                         clocks = <&clkcpgmac>;
173                         clock-names = "fck";
174                         bus_freq        = <2500000>;
175                 };
176                 /include/ "keystone-k2e-netcp.dtsi"
177         };
178 };