Merge branch 'work.splice_read' of git://git.kernel.org/pub/scm/linux/kernel/git...
[cascardo/linux.git] / arch / arm / boot / dts / exynos4210-smdkv310.dts
1 /*
2  * Samsung's Exynos4210 based SMDKV310 board device tree source
3  *
4  * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
5  *              http://www.samsung.com
6  * Copyright (c) 2010-2011 Linaro Ltd.
7  *              www.linaro.org
8  *
9  * Device tree source file for Samsung's SMDKV310 board which is based on
10  * Samsung's Exynos4210 SoC.
11  *
12  * This program is free software; you can redistribute it and/or modify
13  * it under the terms of the GNU General Public License version 2 as
14  * published by the Free Software Foundation.
15 */
16
17 /dts-v1/;
18 #include "exynos4210.dtsi"
19 #include <dt-bindings/gpio/gpio.h>
20 #include "exynos-mfc-reserved-memory.dtsi"
21
22 / {
23         model = "Samsung smdkv310 evaluation board based on Exynos4210";
24         compatible = "samsung,smdkv310", "samsung,exynos4210", "samsung,exynos4";
25
26         memory@40000000 {
27                 device_type = "memory";
28                 reg = <0x40000000 0x80000000>;
29         };
30
31         chosen {
32                 bootargs = "root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC1,115200 init=/linuxrc";
33                 stdout-path = &serial_1;
34         };
35
36         fixed-rate-clocks {
37                 xxti {
38                         compatible = "samsung,clock-xxti";
39                         clock-frequency = <12000000>;
40                 };
41
42                 xusbxti {
43                         compatible = "samsung,clock-xusbxti";
44                         clock-frequency = <24000000>;
45                 };
46         };
47 };
48
49 &i2c_0 {
50         #address-cells = <1>;
51         #size-cells = <0>;
52         samsung,i2c-sda-delay = <100>;
53         samsung,i2c-max-bus-freq = <100000>;
54         status = "okay";
55
56         eeprom@50 {
57                 compatible = "samsung,24ad0xd1";
58                 reg = <0x50>;
59         };
60
61         eeprom@52 {
62                 compatible = "samsung,24ad0xd1";
63                 reg = <0x52>;
64         };
65 };
66
67 &keypad {
68         samsung,keypad-num-rows = <2>;
69         samsung,keypad-num-columns = <8>;
70         linux,keypad-no-autorepeat;
71         wakeup-source;
72         pinctrl-names = "default";
73         pinctrl-0 = <&keypad_rows &keypad_cols>;
74         status = "okay";
75
76         key_1 {
77                 keypad,row = <0>;
78                 keypad,column = <3>;
79                 linux,code = <2>;
80         };
81
82         key_2 {
83                 keypad,row = <0>;
84                 keypad,column = <4>;
85                 linux,code = <3>;
86         };
87
88         key_3 {
89                 keypad,row = <0>;
90                 keypad,column = <5>;
91                 linux,code = <4>;
92         };
93
94         key_4 {
95                 keypad,row = <0>;
96                 keypad,column = <6>;
97                 linux,code = <5>;
98         };
99
100         key_5 {
101                 keypad,row = <0>;
102                 keypad,column = <7>;
103                 linux,code = <6>;
104         };
105
106         key_a {
107                 keypad,row = <1>;
108                 keypad,column = <3>;
109                 linux,code = <30>;
110         };
111
112         key_b {
113                 keypad,row = <1>;
114                 keypad,column = <4>;
115                 linux,code = <48>;
116         };
117
118         key_c {
119                 keypad,row = <1>;
120                 keypad,column = <5>;
121                 linux,code = <46>;
122         };
123
124         key_d {
125                 keypad,row = <1>;
126                 keypad,column = <6>;
127                 linux,code = <32>;
128         };
129
130         key_e {
131                 keypad,row = <1>;
132                 keypad,column = <7>;
133                 linux,code = <18>;
134         };
135 };
136
137 &pinctrl_1 {
138         keypad_rows: keypad-rows {
139                 samsung,pins = "gpx2-0", "gpx2-1";
140                 samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
141                 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
142                 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
143         };
144
145         keypad_cols: keypad-cols {
146                 samsung,pins = "gpx1-0", "gpx1-1", "gpx1-2", "gpx1-3",
147                                "gpx1-4", "gpx1-5", "gpx1-6", "gpx1-7";
148                 samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
149                 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
150                 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
151         };
152 };
153
154 &sdhci_2 {
155         bus-width = <4>;
156         pinctrl-names = "default";
157         pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>;
158         status = "okay";
159 };
160
161 &serial_0 {
162         status = "okay";
163 };
164
165 &serial_1 {
166         status = "okay";
167 };
168
169 &serial_2 {
170         status = "okay";
171 };
172
173 &serial_3 {
174         status = "okay";
175 };
176
177 &spi_2 {
178         cs-gpios = <&gpc1 2 GPIO_ACTIVE_HIGH>;
179         status = "okay";
180
181         w25x80@0 {
182                 #address-cells = <1>;
183                 #size-cells = <1>;
184                 compatible = "w25x80";
185                 reg = <0>;
186                 spi-max-frequency = <1000000>;
187
188                 controller-data {
189                         samsung,spi-feedback-delay = <0>;
190                 };
191
192                 partition@0 {
193                         label = "U-Boot";
194                         reg = <0x0 0x40000>;
195                         read-only;
196                 };
197
198                 partition@40000 {
199                         label = "Kernel";
200                         reg = <0x40000 0xc0000>;
201                 };
202         };
203 };