Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livep...
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / exynos4210-origen.dts
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Samsung's Exynos4210 based Origen board device tree source
4  *
5  * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
6  *              http://www.samsung.com
7  * Copyright (c) 2010-2011 Linaro Ltd.
8  *              www.linaro.org
9  *
10  * Device tree source file for Insignal's Origen board which is based on
11  * Samsung's Exynos4210 SoC.
12  */
13
14 /dts-v1/;
15 #include "exynos4210.dtsi"
16 #include <dt-bindings/gpio/gpio.h>
17 #include <dt-bindings/input/input.h>
18 #include "exynos-mfc-reserved-memory.dtsi"
19
20 / {
21         model = "Insignal Origen evaluation board based on Exynos4210";
22         compatible = "insignal,origen", "samsung,exynos4210", "samsung,exynos4";
23
24         memory@40000000 {
25                 device_type = "memory";
26                 reg = <0x40000000 0x10000000
27                        0x50000000 0x10000000
28                        0x60000000 0x10000000
29                        0x70000000 0x10000000>;
30         };
31
32         chosen {
33                 bootargs ="root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC2,115200 init=/linuxrc";
34                 stdout-path = &serial_2;
35         };
36
37         regulators {
38                 compatible = "simple-bus";
39                 #address-cells = <1>;
40                 #size-cells = <0>;
41
42                 mmc_reg: regulator@0 {
43                         compatible = "regulator-fixed";
44                         reg = <0>;
45                         regulator-name = "VMEM_VDD_2.8V";
46                         regulator-min-microvolt = <2800000>;
47                         regulator-max-microvolt = <2800000>;
48                         gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>;
49                         enable-active-high;
50                 };
51         };
52
53         gpio_keys {
54                 compatible = "gpio-keys";
55                 #address-cells = <1>;
56                 #size-cells = <0>;
57
58                 up {
59                         label = "Up";
60                         gpios = <&gpx2 0 GPIO_ACTIVE_LOW>;
61                         linux,code = <KEY_UP>;
62                         wakeup-source;
63                 };
64
65                 down {
66                         label = "Down";
67                         gpios = <&gpx2 1 GPIO_ACTIVE_LOW>;
68                         linux,code = <KEY_DOWN>;
69                         wakeup-source;
70                 };
71
72                 back {
73                         label = "Back";
74                         gpios = <&gpx1 7 GPIO_ACTIVE_LOW>;
75                         linux,code = <KEY_BACK>;
76                         wakeup-source;
77                 };
78
79                 home {
80                         label = "Home";
81                         gpios = <&gpx1 6 GPIO_ACTIVE_LOW>;
82                         linux,code = <KEY_HOME>;
83                         wakeup-source;
84                 };
85
86                 menu {
87                         label = "Menu";
88                         gpios = <&gpx1 5 GPIO_ACTIVE_LOW>;
89                         linux,code = <KEY_MENU>;
90                         wakeup-source;
91                 };
92         };
93
94         leds {
95                 compatible = "gpio-leds";
96                 status {
97                         gpios = <&gpx1 3 GPIO_ACTIVE_LOW>;
98                         linux,default-trigger = "heartbeat";
99                 };
100         };
101
102         fixed-rate-clocks {
103                 xxti {
104                         compatible = "samsung,clock-xxti";
105                         clock-frequency = <0>;
106                 };
107
108                 xusbxti {
109                         compatible = "samsung,clock-xusbxti";
110                         clock-frequency = <24000000>;
111                 };
112         };
113
114         display-timings {
115                 native-mode = <&timing0>;
116                 timing0: timing {
117                         clock-frequency = <47500000>;
118                         hactive = <1024>;
119                         vactive = <600>;
120                         hfront-porch = <64>;
121                         hback-porch = <16>;
122                         hsync-len = <48>;
123                         vback-porch = <64>;
124                         vfront-porch = <16>;
125                         vsync-len = <3>;
126                 };
127         };
128 };
129
130 &cpu0 {
131         cpu0-supply = <&buck1_reg>;
132 };
133
134 &fimd {
135         pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>;
136         pinctrl-names = "default";
137         status = "okay";
138 };
139
140 &i2c_0 {
141         status = "okay";
142         samsung,i2c-sda-delay = <100>;
143         samsung,i2c-max-bus-freq = <20000>;
144         pinctrl-0 = <&i2c0_bus>;
145         pinctrl-names = "default";
146
147         max8997_pmic@66 {
148                 compatible = "maxim,max8997-pmic";
149                 reg = <0x66>;
150                 interrupt-parent = <&gpx0>;
151                 interrupts = <4 IRQ_TYPE_NONE>, <3 IRQ_TYPE_NONE>;
152
153                 max8997,pmic-buck1-dvs-voltage = <1350000>;
154                 max8997,pmic-buck2-dvs-voltage = <1100000>;
155                 max8997,pmic-buck5-dvs-voltage = <1200000>;
156
157                 regulators {
158                         ldo1_reg: LDO1 {
159                                 regulator-name = "VDD_ABB_3.3V";
160                                 regulator-min-microvolt = <3300000>;
161                                 regulator-max-microvolt = <3300000>;
162                         };
163
164                         ldo2_reg: LDO2 {
165                                 regulator-name = "VDD_ALIVE_1.1V";
166                                 regulator-min-microvolt = <1100000>;
167                                 regulator-max-microvolt = <1100000>;
168                                 regulator-always-on;
169                         };
170
171                         ldo3_reg: LDO3 {
172                                 regulator-name = "VMIPI_1.1V";
173                                 regulator-min-microvolt = <1100000>;
174                                 regulator-max-microvolt = <1100000>;
175                         };
176
177                         ldo4_reg: LDO4 {
178                                 regulator-name = "VDD_RTC_1.8V";
179                                 regulator-min-microvolt = <1800000>;
180                                 regulator-max-microvolt = <1800000>;
181                                 regulator-always-on;
182                         };
183
184                         ldo6_reg: LDO6 {
185                                 regulator-name = "VMIPI_1.8V";
186                                 regulator-min-microvolt = <1800000>;
187                                 regulator-max-microvolt = <1800000>;
188                                 regulator-always-on;
189                         };
190
191                         ldo7_reg: LDO7 {
192                                 regulator-name = "VDD_AUD_1.8V";
193                                 regulator-min-microvolt = <1800000>;
194                                 regulator-max-microvolt = <1800000>;
195                         };
196
197                         ldo8_reg: LDO8 {
198                                 regulator-name = "VADC_3.3V";
199                                 regulator-min-microvolt = <3300000>;
200                                 regulator-max-microvolt = <3300000>;
201                         };
202
203                         ldo9_reg: LDO9 {
204                                 regulator-name = "DVDD_SWB_2.8V";
205                                 regulator-min-microvolt = <2800000>;
206                                 regulator-max-microvolt = <2800000>;
207                                 regulator-always-on;
208                         };
209
210                         ldo10_reg: LDO10 {
211                                 regulator-name = "VDD_PLL_1.1V";
212                                 regulator-min-microvolt = <1100000>;
213                                 regulator-max-microvolt = <1100000>;
214                                 regulator-always-on;
215                         };
216
217                         ldo11_reg: LDO11 {
218                                 regulator-name = "VDD_AUD_3V";
219                                 regulator-min-microvolt = <3000000>;
220                                 regulator-max-microvolt = <3000000>;
221                         };
222
223                         ldo14_reg: LDO14 {
224                                 regulator-name = "AVDD18_SWB_1.8V";
225                                 regulator-min-microvolt = <1800000>;
226                                 regulator-max-microvolt = <1800000>;
227                                 regulator-always-on;
228                         };
229
230                         ldo17_reg: LDO17 {
231                                 regulator-name = "VDD_SWB_3.3V";
232                                 regulator-min-microvolt = <3300000>;
233                                 regulator-max-microvolt = <3300000>;
234                                 regulator-always-on;
235                         };
236
237                         ldo21_reg: LDO21 {
238                                 regulator-name = "VDD_MIF_1.2V";
239                                 regulator-min-microvolt = <1200000>;
240                                 regulator-max-microvolt = <1200000>;
241                                 regulator-always-on;
242                         };
243
244                         buck1_reg: BUCK1 {
245                                 /*
246                                 * HACK: The real name is VDD_ARM_1.2V,
247                                 * but exynos-cpufreq does not support
248                                 * DT-based regulator lookup yet.
249                                 */
250                                 regulator-name = "vdd_arm";
251                                 regulator-min-microvolt = <950000>;
252                                 regulator-max-microvolt = <1350000>;
253                                 regulator-always-on;
254                                 regulator-boot-on;
255                         };
256
257                         buck2_reg: BUCK2 {
258                                 regulator-name = "VDD_INT_1.1V";
259                                 regulator-min-microvolt = <900000>;
260                                 regulator-max-microvolt = <1100000>;
261                                 regulator-always-on;
262                                 regulator-boot-on;
263                         };
264
265                         buck3_reg: BUCK3 {
266                                 regulator-name = "VDD_G3D_1.1V";
267                                 regulator-min-microvolt = <900000>;
268                                 regulator-max-microvolt = <1100000>;
269                         };
270
271                         buck5_reg: BUCK5 {
272                                 regulator-name = "VDDQ_M1M2_1.2V";
273                                 regulator-min-microvolt = <1200000>;
274                                 regulator-max-microvolt = <1200000>;
275                                 regulator-always-on;
276                         };
277
278                         buck7_reg: BUCK7 {
279                                 regulator-name = "VDD_LCD_3.3V";
280                                 regulator-min-microvolt = <3300000>;
281                                 regulator-max-microvolt = <3300000>;
282                                 regulator-boot-on;
283                                 regulator-always-on;
284                         };
285                 };
286         };
287 };
288
289 &sdhci_0 {
290         bus-width = <4>;
291         pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_cd>;
292         pinctrl-names = "default";
293         vmmc-supply = <&mmc_reg>;
294         status = "okay";
295 };
296
297 &sdhci_2 {
298         bus-width = <4>;
299         pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>;
300         pinctrl-names = "default";
301         vmmc-supply = <&mmc_reg>;
302         status = "okay";
303 };
304
305 &serial_0 {
306         status = "okay";
307 };
308
309 &serial_1 {
310         status = "okay";
311 };
312
313 &serial_2 {
314         status = "okay";
315 };
316
317 &serial_3 {
318         status = "okay";
319 };
320
321 &rtc {
322         status = "okay";
323 };
324
325 &tmu {
326         status = "okay";
327 };