GNU Linux-libre 4.19.264-gnu1
[releases.git] / arch / arm / boot / dts / s5pv210-smdkv210.dts
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Samsung's S5PV210 SoC device tree source
4  *
5  * Copyright (c) 2013-2014 Samsung Electronics, Co. Ltd.
6  *
7  * Mateusz Krawczuk <m.krawczuk@partner.samsung.com>
8  * Tomasz Figa <t.figa@samsung.com>
9  *
10  * Board device tree source for YIC System SMDV210 board.
11  *
12  * NOTE: This file is completely based on original board file for mach-smdkv210
13  * available in Linux 3.15 and intends to provide equivalent level of hardware
14  * support. Due to lack of hardware, _no_ testing has been performed.
15  */
16
17 /dts-v1/;
18 #include <dt-bindings/input/input.h>
19 #include "s5pv210.dtsi"
20
21 / {
22         model = "YIC System SMDKV210 based on S5PV210";
23         compatible = "yic,smdkv210", "samsung,s5pv210";
24
25         chosen {
26                 bootargs = "console=ttySAC0,115200n8 root=/dev/mmcblk0p1 rw rootwait ignore_loglevel earlyprintk";
27         };
28
29         memory@20000000 {
30                 device_type = "memory";
31                 reg = <0x20000000 0x40000000>;
32         };
33
34         ethernet@18000000 {
35                 compatible = "davicom,dm9000";
36                 reg = <0xA8000000 0x2 0xA8000002 0x2>;
37                 interrupt-parent = <&gph1>;
38                 interrupts = <1 4>;
39                 local-mac-address = [00 00 de ad be ef];
40                 davicom,no-eeprom;
41         };
42
43         backlight {
44                 compatible = "pwm-backlight";
45                 pwms = <&pwm 3 5000000 0>;
46                 brightness-levels = <0 4 8 16 32 64 128 255>;
47                 default-brightness-level = <6>;
48                 pinctrl-names = "default";
49                 pinctrl-0 = <&pwm3_out>;
50         };
51 };
52
53 &xusbxti {
54         clock-frequency = <24000000>;
55 };
56
57 &keypad {
58         linux,input-no-autorepeat;
59         wakeup-source;
60         samsung,keypad-num-rows = <8>;
61         samsung,keypad-num-columns = <8>;
62         pinctrl-names = "default";
63         pinctrl-0 = <&keypad_row0>, <&keypad_row1>, <&keypad_row2>,
64                         <&keypad_row3>, <&keypad_row4>, <&keypad_row5>,
65                         <&keypad_row6>, <&keypad_row7>,
66                         <&keypad_col0>, <&keypad_col1>, <&keypad_col2>,
67                         <&keypad_col3>, <&keypad_col4>, <&keypad_col5>,
68                         <&keypad_col6>, <&keypad_col7>;
69         status = "okay";
70
71         key_1 {
72                 keypad,row = <0>;
73                 keypad,column = <3>;
74                 linux,code = <KEY_1>;
75         };
76
77         key_2 {
78                 keypad,row = <0>;
79                 keypad,column = <4>;
80                 linux,code = <KEY_2>;
81         };
82
83         key_3 {
84                 keypad,row = <0>;
85                 keypad,column = <5>;
86                 linux,code = <KEY_3>;
87         };
88
89         key_4 {
90                 keypad,row = <0>;
91                 keypad,column = <6>;
92                 linux,code = <KEY_4>;
93         };
94
95         key_5 {
96                 keypad,row = <0
97                 >;
98                 keypad,column = <7>;
99                 linux,code = <KEY_5>;
100         };
101
102         key_6 {
103                 keypad,row = <1>;
104                 keypad,column = <3>;
105                 linux,code = <KEY_A>;
106         };
107         key_7 {
108                 keypad,row = <1>;
109                 keypad,column = <4>;
110                 linux,code = <KEY_B>;
111         };
112
113         key_8 {
114                 keypad,row = <1>;
115                 keypad,column = <5>;
116                 linux,code = <KEY_C>;
117         };
118
119         key_9 {
120                 keypad,row = <1>;
121                 keypad,column = <6>;
122                 linux,code = <KEY_D>;
123         };
124
125         key_10 {
126                 keypad,row = <1>;
127                 keypad,column = <7>;
128                 linux,code = <KEY_E>;
129         };
130 };
131
132 &uart0 {
133         status = "okay";
134 };
135
136 &uart1 {
137         status = "okay";
138 };
139
140 &uart2 {
141         status = "okay";
142 };
143
144 &uart3 {
145         status = "okay";
146 };
147
148 &rtc {
149         status = "okay";
150 };
151
152 &sdhci0 {
153         bus-width = <4>;
154         pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_cd &sd0_bus1 &sd0_bus4>;
155         pinctrl-names = "default";
156         status = "okay";
157 };
158
159 &sdhci1 {
160         bus-width = <4>;
161         pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_cd &sd1_bus1 &sd1_bus4>;
162         pinctrl-names = "default";
163         status = "okay";
164 };
165
166 &sdhci2 {
167         bus-width = <4>;
168         pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus1 &sd2_bus4>;
169         pinctrl-names = "default";
170         status = "okay";
171 };
172
173 &sdhci3 {
174         bus-width = <4>;
175         pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_cd &sd3_bus1 &sd3_bus4>;
176         pinctrl-names = "default";
177         status = "okay";
178 };
179
180 &hsotg {
181         dr_mode = "peripheral";
182         status = "okay";
183 };
184
185 &usbphy {
186         status = "okay";
187 };
188
189 &fimd {
190         pinctrl-0 = <&lcd_clk &lcd_data24>;
191         pinctrl-names = "default";
192         status = "okay";
193
194         display-timings {
195                 native-mode = <&timing0>;
196
197                 timing0: timing {
198                         /* 800x480@60Hz */
199                         clock-frequency = <24373920>;
200                         hactive = <800>;
201                         vactive = <480>;
202                         hfront-porch = <8>;
203                         hback-porch = <13>;
204                         hsync-len = <3>;
205                         vback-porch = <7>;
206                         vfront-porch = <5>;
207                         vsync-len = <1>;
208                         hsync-active = <0>;
209                         vsync-active = <0>;
210                         de-active = <1>;
211                         pixelclk-active = <1>;
212                 };
213         };
214 };
215
216 &pwm {
217         samsung,pwm-outputs = <3>;
218 };
219
220 &i2c0 {
221         status = "okay";
222
223         audio-codec@1b {
224                 compatible = "wlf,wm8580";
225                 reg = <0x1b>;
226         };
227
228         eeprom@50 {
229                 compatible = "atmel,24c08";
230                 reg = <0x50>;
231         };
232 };
233
234 &i2s0 {
235         status = "okay";
236 };