blob: d01f618df5f7b73bfb9c6d9dac25340d02999d52 [file] [log] [blame]
Kumar Gala68de3082014-03-07 10:56:59 -06001/dts-v1/;
2
3#include "skeleton.dtsi"
4#include <dt-bindings/clock/qcom,gcc-ipq806x.h>
5#include <dt-bindings/soc/qcom,gsbi.h>
6
7/ {
8 model = "Qualcomm IPQ8064";
9 compatible = "qcom,ipq8064";
10 interrupt-parent = <&intc>;
11
12 cpus {
13 #address-cells = <1>;
14 #size-cells = <0>;
15
16 cpu@0 {
17 compatible = "qcom,krait";
18 enable-method = "qcom,kpss-acc-v1";
19 device_type = "cpu";
20 reg = <0>;
21 next-level-cache = <&L2>;
22 qcom,acc = <&acc0>;
23 qcom,saw = <&saw0>;
24 };
25
26 cpu@1 {
27 compatible = "qcom,krait";
28 enable-method = "qcom,kpss-acc-v1";
29 device_type = "cpu";
30 reg = <1>;
31 next-level-cache = <&L2>;
32 qcom,acc = <&acc1>;
33 qcom,saw = <&saw1>;
34 };
35
36 L2: l2-cache {
37 compatible = "cache";
38 cache-level = <2>;
39 };
40 };
41
42 cpu-pmu {
43 compatible = "qcom,krait-pmu";
44 interrupts = <1 10 0x304>;
45 };
46
47 reserved-memory {
48 #address-cells = <1>;
49 #size-cells = <1>;
50 ranges;
51
52 nss@40000000 {
53 reg = <0x40000000 0x1000000>;
54 no-map;
55 };
56
57 smem@41000000 {
58 reg = <0x41000000 0x200000>;
59 no-map;
60 };
61 };
62
Mathieu Olivari4ba1c982015-02-20 18:19:35 -080063 clocks {
64 sleep_clk: sleep_clk {
65 compatible = "fixed-clock";
66 clock-frequency = <32768>;
67 #clock-cells = <0>;
68 };
69 };
70
Kumar Gala68de3082014-03-07 10:56:59 -060071 soc: soc {
72 #address-cells = <1>;
73 #size-cells = <1>;
74 ranges;
75 compatible = "simple-bus";
76
77 qcom_pinmux: pinmux@800000 {
78 compatible = "qcom,ipq8064-pinctrl";
79 reg = <0x800000 0x4000>;
80
81 gpio-controller;
82 #gpio-cells = <2>;
83 interrupt-controller;
84 #interrupt-cells = <2>;
Stephen Boydbb901bd2014-12-05 12:53:33 -080085 interrupts = <0 16 0x4>;
Kumar Gala68de3082014-03-07 10:56:59 -060086 };
87
88 intc: interrupt-controller@2000000 {
89 compatible = "qcom,msm-qgic2";
90 interrupt-controller;
91 #interrupt-cells = <3>;
92 reg = <0x02000000 0x1000>,
93 <0x02002000 0x1000>;
94 };
95
96 timer@200a000 {
97 compatible = "qcom,kpss-timer", "qcom,msm-timer";
98 interrupts = <1 1 0x301>,
99 <1 2 0x301>,
Mathieu Olivari4ba1c982015-02-20 18:19:35 -0800100 <1 3 0x301>,
101 <1 4 0x301>,
102 <1 5 0x301>;
Kumar Gala68de3082014-03-07 10:56:59 -0600103 reg = <0x0200a000 0x100>;
104 clock-frequency = <25000000>,
105 <32768>;
Mathieu Olivari4ba1c982015-02-20 18:19:35 -0800106 clocks = <&sleep_clk>;
107 clock-names = "sleep";
Kumar Gala68de3082014-03-07 10:56:59 -0600108 cpu-offset = <0x80000>;
109 };
110
111 acc0: clock-controller@2088000 {
112 compatible = "qcom,kpss-acc-v1";
113 reg = <0x02088000 0x1000>, <0x02008000 0x1000>;
114 };
115
116 acc1: clock-controller@2098000 {
117 compatible = "qcom,kpss-acc-v1";
118 reg = <0x02098000 0x1000>, <0x02008000 0x1000>;
119 };
120
121 saw0: regulator@2089000 {
122 compatible = "qcom,saw2";
123 reg = <0x02089000 0x1000>, <0x02009000 0x1000>;
124 regulator;
125 };
126
127 saw1: regulator@2099000 {
128 compatible = "qcom,saw2";
129 reg = <0x02099000 0x1000>, <0x02009000 0x1000>;
130 regulator;
131 };
132
133 gsbi2: gsbi@12480000 {
134 compatible = "qcom,gsbi-v1.0.0";
135 reg = <0x12480000 0x100>;
136 clocks = <&gcc GSBI2_H_CLK>;
137 clock-names = "iface";
138 #address-cells = <1>;
139 #size-cells = <1>;
140 ranges;
141 status = "disabled";
142
143 serial@12490000 {
144 compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
145 reg = <0x12490000 0x1000>,
146 <0x12480000 0x1000>;
147 interrupts = <0 195 0x0>;
148 clocks = <&gcc GSBI2_UART_CLK>, <&gcc GSBI2_H_CLK>;
149 clock-names = "core", "iface";
150 status = "disabled";
151 };
152
153 i2c@124a0000 {
154 compatible = "qcom,i2c-qup-v1.1.1";
155 reg = <0x124a0000 0x1000>;
156 interrupts = <0 196 0>;
157
158 clocks = <&gcc GSBI2_QUP_CLK>, <&gcc GSBI2_H_CLK>;
159 clock-names = "core", "iface";
160 status = "disabled";
161
162 #address-cells = <1>;
163 #size-cells = <0>;
164 };
165
166 };
167
168 gsbi4: gsbi@16300000 {
169 compatible = "qcom,gsbi-v1.0.0";
170 reg = <0x16300000 0x100>;
171 clocks = <&gcc GSBI4_H_CLK>;
172 clock-names = "iface";
173 #address-cells = <1>;
174 #size-cells = <1>;
175 ranges;
176 status = "disabled";
177
178 serial@16340000 {
179 compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
180 reg = <0x16340000 0x1000>,
181 <0x16300000 0x1000>;
182 interrupts = <0 152 0x0>;
183 clocks = <&gcc GSBI4_UART_CLK>, <&gcc GSBI4_H_CLK>;
184 clock-names = "core", "iface";
185 status = "disabled";
186 };
187
188 i2c@16380000 {
189 compatible = "qcom,i2c-qup-v1.1.1";
190 reg = <0x16380000 0x1000>;
191 interrupts = <0 153 0>;
192
193 clocks = <&gcc GSBI4_QUP_CLK>, <&gcc GSBI4_H_CLK>;
194 clock-names = "core", "iface";
195 status = "disabled";
196
197 #address-cells = <1>;
198 #size-cells = <0>;
199 };
200 };
201
202 gsbi5: gsbi@1a200000 {
203 compatible = "qcom,gsbi-v1.0.0";
204 reg = <0x1a200000 0x100>;
205 clocks = <&gcc GSBI5_H_CLK>;
206 clock-names = "iface";
207 #address-cells = <1>;
208 #size-cells = <1>;
209 ranges;
210 status = "disabled";
211
212 serial@1a240000 {
213 compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
214 reg = <0x1a240000 0x1000>,
215 <0x1a200000 0x1000>;
216 interrupts = <0 154 0x0>;
217 clocks = <&gcc GSBI5_UART_CLK>, <&gcc GSBI5_H_CLK>;
218 clock-names = "core", "iface";
219 status = "disabled";
220 };
221
222 i2c@1a280000 {
223 compatible = "qcom,i2c-qup-v1.1.1";
224 reg = <0x1a280000 0x1000>;
225 interrupts = <0 155 0>;
226
227 clocks = <&gcc GSBI5_QUP_CLK>, <&gcc GSBI5_H_CLK>;
228 clock-names = "core", "iface";
229 status = "disabled";
230
231 #address-cells = <1>;
232 #size-cells = <0>;
233 };
234
235 spi@1a280000 {
236 compatible = "qcom,spi-qup-v1.1.1";
237 reg = <0x1a280000 0x1000>;
238 interrupts = <0 155 0>;
239
240 clocks = <&gcc GSBI5_QUP_CLK>, <&gcc GSBI5_H_CLK>;
241 clock-names = "core", "iface";
242 status = "disabled";
243
244 #address-cells = <1>;
245 #size-cells = <0>;
246 };
247 };
248
Kumar Galae5124482014-09-23 13:21:41 -0500249 sata_phy: sata-phy@1b400000 {
250 compatible = "qcom,ipq806x-sata-phy";
251 reg = <0x1b400000 0x200>;
252
253 clocks = <&gcc SATA_PHY_CFG_CLK>;
254 clock-names = "cfg";
255
256 #phy-cells = <0>;
257 status = "disabled";
258 };
259
260 sata@29000000 {
261 compatible = "qcom,ipq806x-ahci", "generic-ahci";
262 reg = <0x29000000 0x180>;
263
264 interrupts = <0 209 0x0>;
265
266 clocks = <&gcc SFAB_SATA_S_H_CLK>,
267 <&gcc SATA_H_CLK>,
268 <&gcc SATA_A_CLK>,
269 <&gcc SATA_RXOOB_CLK>,
270 <&gcc SATA_PMALIVE_CLK>;
271 clock-names = "slave_face", "iface", "core",
272 "rxoob", "pmalive";
273
274 assigned-clocks = <&gcc SATA_RXOOB_CLK>, <&gcc SATA_PMALIVE_CLK>;
275 assigned-clock-rates = <100000000>, <100000000>;
276
277 phys = <&sata_phy>;
278 phy-names = "sata-phy";
279 status = "disabled";
280 };
281
Kumar Gala68de3082014-03-07 10:56:59 -0600282 qcom,ssbi@500000 {
283 compatible = "qcom,ssbi";
284 reg = <0x00500000 0x1000>;
285 qcom,controller-type = "pmic-arbiter";
286 };
287
288 gcc: clock-controller@900000 {
289 compatible = "qcom,gcc-ipq8064";
290 reg = <0x00900000 0x4000>;
291 #clock-cells = <1>;
292 #reset-cells = <1>;
293 };
294 };
295};