blob: e0b2ce2910e0aeef770230ac727effc79236dc39 [file] [log] [blame]
Kumar Galacc60a1a2014-01-23 14:09:54 -06001/dts-v1/;
2
3/include/ "skeleton.dtsi"
4
Stephen Boyd55602a02014-09-19 16:50:50 -07005#include <dt-bindings/interrupt-controller/arm-gic.h>
Kumar Galacc60a1a2014-01-23 14:09:54 -06006#include <dt-bindings/clock/qcom,gcc-msm8660.h>
Kumar Gala66a6c312014-05-28 12:12:40 -05007#include <dt-bindings/soc/qcom,gsbi.h>
Kumar Galacc60a1a2014-01-23 14:09:54 -06008
9/ {
10 model = "Qualcomm MSM8660";
11 compatible = "qcom,msm8660";
12 interrupt-parent = <&intc>;
13
Rohit Vaswani2ab27992013-11-01 10:10:40 -070014 cpus {
15 #address-cells = <1>;
16 #size-cells = <0>;
Rohit Vaswani2ab27992013-11-01 10:10:40 -070017
18 cpu@0 {
Kumar Gala66a6c312014-05-28 12:12:40 -050019 compatible = "qcom,scorpion";
20 enable-method = "qcom,gcc-msm8660";
Rohit Vaswani2ab27992013-11-01 10:10:40 -070021 device_type = "cpu";
22 reg = <0>;
23 next-level-cache = <&L2>;
24 };
25
26 cpu@1 {
Kumar Gala66a6c312014-05-28 12:12:40 -050027 compatible = "qcom,scorpion";
28 enable-method = "qcom,gcc-msm8660";
Rohit Vaswani2ab27992013-11-01 10:10:40 -070029 device_type = "cpu";
30 reg = <1>;
31 next-level-cache = <&L2>;
32 };
33
34 L2: l2-cache {
35 compatible = "cache";
36 cache-level = <2>;
37 };
38 };
39
Stephen Boydb73b3152015-02-10 17:06:03 -080040 cpu-pmu {
41 compatible = "qcom,scorpion-mp-pmu";
42 interrupts = <1 9 0x304>;
43 };
44
Kumar Gala66a6c312014-05-28 12:12:40 -050045 soc: soc {
46 #address-cells = <1>;
47 #size-cells = <1>;
48 ranges;
49 compatible = "simple-bus";
Kumar Galacc60a1a2014-01-23 14:09:54 -060050
Kumar Gala66a6c312014-05-28 12:12:40 -050051 intc: interrupt-controller@2080000 {
52 compatible = "qcom,msm-8660-qgic";
53 interrupt-controller;
54 #interrupt-cells = <3>;
55 reg = < 0x02080000 0x1000 >,
56 < 0x02081000 0x1000 >;
57 };
Kumar Galacc60a1a2014-01-23 14:09:54 -060058
Kumar Gala66a6c312014-05-28 12:12:40 -050059 timer@2000000 {
60 compatible = "qcom,scss-timer", "qcom,msm-timer";
61 interrupts = <1 0 0x301>,
62 <1 1 0x301>,
63 <1 2 0x301>;
64 reg = <0x02000000 0x100>;
65 clock-frequency = <27000000>,
66 <32768>;
67 cpu-offset = <0x40000>;
68 };
Kumar Galacc60a1a2014-01-23 14:09:54 -060069
Kumar Gala66a6c312014-05-28 12:12:40 -050070 msmgpio: gpio@800000 {
71 compatible = "qcom,msm-gpio";
72 reg = <0x00800000 0x4000>;
73 gpio-controller;
74 #gpio-cells = <2>;
75 ngpio = <173>;
76 interrupts = <0 16 0x4>;
77 interrupt-controller;
78 #interrupt-cells = <2>;
79 };
Kumar Galacc60a1a2014-01-23 14:09:54 -060080
Kumar Gala66a6c312014-05-28 12:12:40 -050081 gcc: clock-controller@900000 {
82 compatible = "qcom,gcc-msm8660";
83 #clock-cells = <1>;
84 #reset-cells = <1>;
85 reg = <0x900000 0x4000>;
86 };
Kumar Galacc60a1a2014-01-23 14:09:54 -060087
Kumar Gala66a6c312014-05-28 12:12:40 -050088 gsbi12: gsbi@19c00000 {
89 compatible = "qcom,gsbi-v1.0.0";
Andy Grossda047ac2015-02-09 16:01:10 -060090 cell-index = <12>;
Kumar Gala66a6c312014-05-28 12:12:40 -050091 reg = <0x19c00000 0x100>;
92 clocks = <&gcc GSBI12_H_CLK>;
93 clock-names = "iface";
94 #address-cells = <1>;
95 #size-cells = <1>;
96 ranges;
97
Andy Grossda047ac2015-02-09 16:01:10 -060098 syscon-tcsr = <&tcsr>;
99
Kumar Gala66a6c312014-05-28 12:12:40 -0500100 serial@19c40000 {
101 compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
102 reg = <0x19c40000 0x1000>,
103 <0x19c00000 0x1000>;
104 interrupts = <0 195 0x0>;
105 clocks = <&gcc GSBI12_UART_CLK>, <&gcc GSBI12_H_CLK>;
106 clock-names = "core", "iface";
107 status = "disabled";
108 };
109 };
110
111 qcom,ssbi@500000 {
112 compatible = "qcom,ssbi";
113 reg = <0x500000 0x1000>;
114 qcom,controller-type = "pmic-arbiter";
Stephen Boyd94ae9912014-06-24 14:03:54 -0700115
116 pmicintc: pmic@0 {
117 compatible = "qcom,pm8058";
118 interrupt-parent = <&msmgpio>;
119 interrupts = <88 8>;
120 #interrupt-cells = <2>;
121 interrupt-controller;
122 #address-cells = <1>;
123 #size-cells = <0>;
124
125 pwrkey@1c {
126 compatible = "qcom,pm8058-pwrkey";
127 reg = <0x1c>;
128 interrupt-parent = <&pmicintc>;
129 interrupts = <50 1>, <51 1>;
130 debounce = <15625>;
131 pull-up;
132 };
133
134 keypad@148 {
135 compatible = "qcom,pm8058-keypad";
136 reg = <0x148>;
137 interrupt-parent = <&pmicintc>;
138 interrupts = <74 1>, <75 1>;
139 debounce = <15>;
140 scan-delay = <32>;
141 row-hold = <91500>;
142 };
143
144 rtc@11d {
145 compatible = "qcom,pm8058-rtc";
146 interrupt-parent = <&pmicintc>;
147 interrupts = <39 1>;
148 reg = <0x11d>;
149 allow-set-time;
150 };
151
152 vibrator@4a {
153 compatible = "qcom,pm8058-vib";
154 reg = <0x4a>;
155 };
156 };
Kumar Gala66a6c312014-05-28 12:12:40 -0500157 };
Stephen Boyd55602a02014-09-19 16:50:50 -0700158
159 /* Temporary fixed regulator */
160 vsdcc_fixed: vsdcc-regulator {
161 compatible = "regulator-fixed";
162 regulator-name = "SDCC Power";
163 regulator-min-microvolt = <2700000>;
164 regulator-max-microvolt = <2700000>;
165 regulator-always-on;
166 };
167
168 amba {
169 compatible = "arm,amba-bus";
170 #address-cells = <1>;
171 #size-cells = <1>;
172 ranges;
173 sdcc1: sdcc@12400000 {
174 status = "disabled";
175 compatible = "arm,pl18x", "arm,primecell";
176 arm,primecell-periphid = <0x00051180>;
177 reg = <0x12400000 0x8000>;
178 interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
179 interrupt-names = "cmd_irq";
180 clocks = <&gcc SDC1_CLK>, <&gcc SDC1_H_CLK>;
181 clock-names = "mclk", "apb_pclk";
182 bus-width = <8>;
183 max-frequency = <48000000>;
184 non-removable;
185 cap-sd-highspeed;
186 cap-mmc-highspeed;
187 vmmc-supply = <&vsdcc_fixed>;
188 };
189
190 sdcc3: sdcc@12180000 {
191 compatible = "arm,pl18x", "arm,primecell";
192 arm,primecell-periphid = <0x00051180>;
193 status = "disabled";
194 reg = <0x12180000 0x8000>;
195 interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
196 interrupt-names = "cmd_irq";
197 clocks = <&gcc SDC3_CLK>, <&gcc SDC3_H_CLK>;
198 clock-names = "mclk", "apb_pclk";
199 bus-width = <4>;
200 cap-sd-highspeed;
201 cap-mmc-highspeed;
202 max-frequency = <48000000>;
203 no-1-8-v;
204 vmmc-supply = <&vsdcc_fixed>;
205 };
206 };
Andy Grossda047ac2015-02-09 16:01:10 -0600207
208 tcsr: syscon@1a400000 {
209 compatible = "qcom,tcsr-msm8660", "syscon";
210 reg = <0x1a400000 0x100>;
211 };
Kumar Galacc60a1a2014-01-23 14:09:54 -0600212 };
Stephen Boyd55602a02014-09-19 16:50:50 -0700213
Kumar Galacc60a1a2014-01-23 14:09:54 -0600214};