Commit | Line | Data |
---|---|---|
978577ea LW |
1 | /* |
2 | * Device Tree for the ST-Ericsson U300 Machine and SoC | |
3 | */ | |
4 | ||
5 | /dts-v1/; | |
6 | /include/ "skeleton.dtsi" | |
7 | ||
8 | / { | |
9 | model = "ST-Ericsson U300"; | |
10 | compatible = "stericsson,u300"; | |
11 | #address-cells = <1>; | |
12 | #size-cells = <1>; | |
13 | ||
14 | chosen { | |
15 | bootargs = "root=/dev/ram0 console=ttyAMA0,115200n8 earlyprintk"; | |
16 | }; | |
17 | ||
18 | aliases { | |
19 | serial0 = &uart0; | |
20 | serial1 = &uart1; | |
21 | }; | |
22 | ||
23 | memory { | |
24 | reg = <0x48000000 0x03c00000>; | |
25 | }; | |
26 | ||
ecf5b39a LW |
27 | s365 { |
28 | compatible = "stericsson,s365"; | |
29 | vana15-supply = <&ab3100_ldo_d_reg>; | |
30 | }; | |
31 | ||
978577ea LW |
32 | timer: timer@c0014000 { |
33 | compatible = "stericsson,u300-apptimer"; | |
34 | reg = <0xc0014000 0x1000>; | |
35 | interrupt-parent = <&vica>; | |
36 | interrupts = <24 25 26 27>; | |
37 | }; | |
38 | ||
39 | gpio: gpio@c0016000 { | |
40 | compatible = "stericsson,gpio-coh901"; | |
41 | reg = <0xc0016000 0x1000>; | |
42 | interrupt-parent = <&vicb>; | |
43 | interrupts = <0 1 2 18 21 22 23>; | |
44 | interrupt-names = "gpio0", "gpio1", "gpio2", "gpio3", | |
45 | "gpio4", "gpio5", "gpio6"; | |
46 | interrupt-controller; | |
47 | #interrupt-cells = <2>; | |
48 | gpio-controller; | |
49 | #gpio-cells = <2>; | |
50 | }; | |
51 | ||
52 | pinctrl: pinctrl@c0011000 { | |
53 | compatible = "stericsson,pinctrl-u300"; | |
54 | reg = <0xc0011000 0x1000>; | |
55 | }; | |
56 | ||
63a62ec0 LW |
57 | watchdog: watchdog@c0012000 { |
58 | compatible = "stericsson,coh901327"; | |
59 | reg = <0xc0012000 0x1000>; | |
60 | interrupt-parent = <&vicb>; | |
61 | interrupts = <3>; | |
62 | }; | |
63 | ||
ae87bb8e LW |
64 | rtc: rtc@c0017000 { |
65 | compatible = "stericsson,coh901331"; | |
66 | reg = <0xc0017000 0x1000>; | |
67 | interrupt-parent = <&vicb>; | |
68 | interrupts = <10>; | |
69 | }; | |
70 | ||
39738cc9 LW |
71 | dmac: dma-controller@c00020000 { |
72 | compatible = "stericsson,coh901318"; | |
73 | reg = <0xc0020000 0x1000>; | |
74 | interrupt-parent = <&vica>; | |
75 | interrupts = <2>; | |
76 | #dma-cells = <1>; | |
77 | dma-channels = <40>; | |
78 | }; | |
79 | ||
c023b8b2 LW |
80 | i2c0: i2c@c0004000 { |
81 | compatible = "st,ddci2c"; | |
82 | reg = <0xc0004000 0x1000>; | |
83 | interrupt-parent = <&vicb>; | |
84 | interrupts = <8>; | |
85 | #address-cells = <1>; | |
86 | #size-cells = <0>; | |
ecf5b39a LW |
87 | ab3100: ab3100@0x48 { |
88 | compatible = "stericsson,ab3100"; | |
89 | reg = <0x48>; | |
90 | interrupt-parent = <&vica>; | |
91 | interrupts = <0>; /* EXT0 IRQ */ | |
92 | ab3100-regulators { | |
93 | compatible = "stericsson,ab3100-regulators"; | |
94 | ab3100_ldo_a_reg: ab3100_ldo_a { | |
95 | regulator-compatible = "ab3100_ldo_a"; | |
96 | startup-delay-us = <200>; | |
97 | regulator-always-on; | |
98 | regulator-boot-on; | |
99 | }; | |
100 | ab3100_ldo_c_reg: ab3100_ldo_c { | |
101 | regulator-compatible = "ab3100_ldo_c"; | |
102 | startup-delay-us = <200>; | |
103 | }; | |
104 | ab3100_ldo_d_reg: ab3100_ldo_d { | |
105 | regulator-compatible = "ab3100_ldo_d"; | |
106 | startup-delay-us = <200>; | |
107 | }; | |
108 | ab3100_ldo_e_reg: ab3100_ldo_e { | |
109 | regulator-compatible = "ab3100_ldo_e"; | |
110 | regulator-min-microvolt = <1800000>; | |
111 | regulator-max-microvolt = <1800000>; | |
112 | startup-delay-us = <200>; | |
113 | regulator-always-on; | |
114 | regulator-boot-on; | |
115 | }; | |
116 | ab3100_ldo_f_reg: ab3100_ldo_f { | |
117 | regulator-compatible = "ab3100_ldo_f"; | |
118 | regulator-min-microvolt = <2500000>; | |
119 | regulator-max-microvolt = <2500000>; | |
120 | startup-delay-us = <600>; | |
121 | regulator-always-on; | |
122 | regulator-boot-on; | |
123 | }; | |
124 | ab3100_ldo_g_reg: ab3100_ldo_g { | |
125 | regulator-compatible = "ab3100_ldo_g"; | |
126 | regulator-min-microvolt = <1500000>; | |
127 | regulator-max-microvolt = <2850000>; | |
128 | startup-delay-us = <400>; | |
129 | }; | |
130 | ab3100_ldo_h_reg: ab3100_ldo_h { | |
131 | regulator-compatible = "ab3100_ldo_h"; | |
132 | regulator-min-microvolt = <1200000>; | |
133 | regulator-max-microvolt = <2750000>; | |
134 | startup-delay-us = <200>; | |
135 | }; | |
136 | ab3100_ldo_k_reg: ab3100_ldo_k { | |
137 | regulator-compatible = "ab3100_ldo_k"; | |
138 | regulator-min-microvolt = <1800000>; | |
139 | regulator-max-microvolt = <2750000>; | |
140 | startup-delay-us = <200>; | |
141 | }; | |
142 | ab3100_ext_reg: ab3100_ext { | |
143 | regulator-compatible = "ab3100_ext"; | |
144 | }; | |
145 | ab3100_buck_reg: ab3100_buck { | |
146 | regulator-compatible = "ab3100_buck"; | |
147 | regulator-min-microvolt = <1200000>; | |
148 | regulator-max-microvolt = <1800000>; | |
149 | startup-delay-us = <1000>; | |
150 | regulator-always-on; | |
151 | regulator-boot-on; | |
152 | }; | |
153 | }; | |
154 | }; | |
c023b8b2 LW |
155 | }; |
156 | ||
157 | i2c1: i2c@c0005000 { | |
158 | compatible = "st,ddci2c"; | |
159 | reg = <0xc0005000 0x1000>; | |
160 | interrupt-parent = <&vicb>; | |
161 | interrupts = <9>; | |
162 | #address-cells = <1>; | |
163 | #size-cells = <0>; | |
ecf5b39a LW |
164 | fwcam0: fwcam@0x10 { |
165 | reg = <0x10>; | |
166 | }; | |
167 | fwcam1: fwcam@0x5d { | |
168 | reg = <0x5d>; | |
169 | }; | |
c023b8b2 LW |
170 | }; |
171 | ||
978577ea LW |
172 | amba { |
173 | compatible = "arm,amba-bus"; | |
174 | #address-cells = <1>; | |
175 | #size-cells = <1>; | |
176 | ranges; | |
177 | ||
178 | vica: interrupt-controller@a0001000 { | |
179 | compatible = "arm,versatile-vic"; | |
180 | interrupt-controller; | |
181 | #interrupt-cells = <1>; | |
182 | reg = <0xa0001000 0x20>; | |
183 | }; | |
184 | ||
185 | vicb: interrupt-controller@a0002000 { | |
186 | compatible = "arm,versatile-vic"; | |
187 | interrupt-controller; | |
188 | #interrupt-cells = <1>; | |
189 | reg = <0xa0002000 0x20>; | |
190 | }; | |
191 | ||
192 | uart0: serial@c0013000 { | |
193 | compatible = "arm,pl011", "arm,primecell"; | |
194 | reg = <0xc0013000 0x1000>; | |
195 | interrupt-parent = <&vica>; | |
196 | interrupts = <22>; | |
efb9bc2e LW |
197 | dmas = <&dmac 17 &dmac 18>; |
198 | dma-names = "tx", "rx"; | |
978577ea LW |
199 | }; |
200 | ||
201 | uart1: serial@c0007000 { | |
202 | compatible = "arm,pl011", "arm,primecell"; | |
203 | reg = <0xc0007000 0x1000>; | |
204 | interrupt-parent = <&vicb>; | |
205 | interrupts = <20>; | |
efb9bc2e LW |
206 | dmas = <&dmac 38 &dmac 39>; |
207 | dma-names = "tx", "rx"; | |
978577ea | 208 | }; |
ba078d1b LW |
209 | |
210 | mmcsd: mmcsd@c0001000 { | |
211 | compatible = "arm,pl18x", "arm,primecell"; | |
212 | reg = <0xc0001000 0x1000>; | |
213 | interrupt-parent = <&vicb>; | |
214 | interrupts = <6 7>; | |
215 | max-frequency = <24000000>; | |
216 | bus-width = <4>; // SD-card slot | |
217 | mmc-cap-mmc-highspeed; | |
218 | mmc-cap-sd-highspeed; | |
219 | cd-gpios = <&gpio 12 0x4>; | |
220 | cd-inverted; | |
221 | vmmc-supply = <&ab3100_ldo_g_reg>; | |
efb9bc2e LW |
222 | dmas = <&dmac 14>; |
223 | dma-names = "rx"; | |
ba078d1b | 224 | }; |
cf4af867 LW |
225 | |
226 | spi: ssp@c0006000 { | |
227 | compatible = "arm,pl022", "arm,primecell"; | |
228 | reg = <0xc0006000 0x1000>; | |
229 | interrupt-parent = <&vica>; | |
230 | interrupts = <23>; | |
231 | dmas = <&dmac 27 &dmac 28>; | |
232 | dma-names = "tx", "rx"; | |
233 | num-cs = <3>; | |
234 | #address-cells = <1>; | |
235 | #size-cells = <0>; | |
236 | }; | |
978577ea LW |
237 | }; |
238 | }; |