1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0
2724ba675SRob Herring/*
3724ba675SRob Herring * Samsung's S5PV210 SoC device tree source
4724ba675SRob Herring *
5724ba675SRob Herring * Copyright (c) 2013-2014 Samsung Electronics, Co. Ltd.
6724ba675SRob Herring *
7724ba675SRob Herring * Mateusz Krawczuk <m.krawczuk@partner.samsung.com>
8724ba675SRob Herring * Tomasz Figa <t.figa@samsung.com>
9724ba675SRob Herring *
10724ba675SRob Herring * Board device tree source for YIC System SMDV210 board.
11724ba675SRob Herring *
12724ba675SRob Herring * NOTE: This file is completely based on original board file for mach-smdkv210
13724ba675SRob Herring * available in Linux 3.15 and intends to provide equivalent level of hardware
14724ba675SRob Herring * support. Due to lack of hardware, _no_ testing has been performed.
15724ba675SRob Herring */
16724ba675SRob Herring
17724ba675SRob Herring/dts-v1/;
18724ba675SRob Herring#include <dt-bindings/interrupt-controller/irq.h>
19724ba675SRob Herring#include <dt-bindings/input/input.h>
20724ba675SRob Herring#include "s5pv210.dtsi"
21724ba675SRob Herring
22724ba675SRob Herring/ {
23724ba675SRob Herring	model = "YIC System SMDKV210 based on S5PV210";
24724ba675SRob Herring	compatible = "yic,smdkv210", "samsung,s5pv210";
25724ba675SRob Herring
26724ba675SRob Herring	chosen {
27724ba675SRob Herring		bootargs = "console=ttySAC0,115200n8 root=/dev/mmcblk0p1 rw rootwait ignore_loglevel earlyprintk";
28724ba675SRob Herring	};
29724ba675SRob Herring
30724ba675SRob Herring	memory@20000000 {
31724ba675SRob Herring		device_type = "memory";
32724ba675SRob Herring		reg = <0x20000000 0x40000000>;
33724ba675SRob Herring	};
34724ba675SRob Herring
35724ba675SRob Herring	pmic_ap_clk: clock-0 {
36724ba675SRob Herring		/* Workaround for missing PMIC and its clock */
37724ba675SRob Herring		compatible = "fixed-clock";
38724ba675SRob Herring		#clock-cells = <0>;
39724ba675SRob Herring		clock-frequency = <32768>;
40724ba675SRob Herring	};
41724ba675SRob Herring
42724ba675SRob Herring	ethernet@a8000000 {
43724ba675SRob Herring		compatible = "davicom,dm9000";
44*982655cbSKrzysztof Kozlowski		reg = <0xa8000000 0x2>, <0xa8000002 0x2>;
45724ba675SRob Herring		interrupt-parent = <&gph1>;
46724ba675SRob Herring		interrupts = <1 IRQ_TYPE_LEVEL_HIGH>;
47724ba675SRob Herring		local-mac-address = [00 00 de ad be ef];
48724ba675SRob Herring		davicom,no-eeprom;
49724ba675SRob Herring	};
50724ba675SRob Herring
51724ba675SRob Herring	backlight {
52724ba675SRob Herring		compatible = "pwm-backlight";
53724ba675SRob Herring		pwms = <&pwm 3 5000000 0>;
54724ba675SRob Herring		brightness-levels = <0 4 8 16 32 64 128 255>;
55724ba675SRob Herring		default-brightness-level = <6>;
56724ba675SRob Herring		pinctrl-names = "default";
57724ba675SRob Herring		pinctrl-0 = <&pwm3_out>;
58724ba675SRob Herring		power-supply = <&dc5v_reg>;
59724ba675SRob Herring	};
60724ba675SRob Herring
61724ba675SRob Herring	dc5v_reg: regulator-0 {
62724ba675SRob Herring		compatible = "regulator-fixed";
63724ba675SRob Herring		regulator-name = "DC5V";
64724ba675SRob Herring		regulator-min-microvolt = <5000000>;
65724ba675SRob Herring		regulator-max-microvolt = <5000000>;
66724ba675SRob Herring	};
67724ba675SRob Herring};
68724ba675SRob Herring
69724ba675SRob Herring&xusbxti {
70724ba675SRob Herring	clock-frequency = <24000000>;
71724ba675SRob Herring};
72724ba675SRob Herring
73724ba675SRob Herring&keypad {
74724ba675SRob Herring	linux,input-no-autorepeat;
75724ba675SRob Herring	wakeup-source;
76724ba675SRob Herring	samsung,keypad-num-rows = <8>;
77724ba675SRob Herring	samsung,keypad-num-columns = <8>;
78724ba675SRob Herring	pinctrl-names = "default";
79724ba675SRob Herring	pinctrl-0 = <&keypad_row0>, <&keypad_row1>, <&keypad_row2>,
80724ba675SRob Herring			<&keypad_row3>, <&keypad_row4>, <&keypad_row5>,
81724ba675SRob Herring			<&keypad_row6>, <&keypad_row7>,
82724ba675SRob Herring			<&keypad_col0>, <&keypad_col1>, <&keypad_col2>,
83724ba675SRob Herring			<&keypad_col3>, <&keypad_col4>, <&keypad_col5>,
84724ba675SRob Herring			<&keypad_col6>, <&keypad_col7>;
85724ba675SRob Herring	status = "okay";
86724ba675SRob Herring
87724ba675SRob Herring	key-1 {
88724ba675SRob Herring		keypad,row = <0>;
89724ba675SRob Herring		keypad,column = <3>;
90724ba675SRob Herring		linux,code = <KEY_1>;
91724ba675SRob Herring	};
92724ba675SRob Herring
93724ba675SRob Herring	key-2 {
94724ba675SRob Herring		keypad,row = <0>;
95724ba675SRob Herring		keypad,column = <4>;
96724ba675SRob Herring		linux,code = <KEY_2>;
97724ba675SRob Herring	};
98724ba675SRob Herring
99724ba675SRob Herring	key-3 {
100724ba675SRob Herring		keypad,row = <0>;
101724ba675SRob Herring		keypad,column = <5>;
102724ba675SRob Herring		linux,code = <KEY_3>;
103724ba675SRob Herring	};
104724ba675SRob Herring
105724ba675SRob Herring	key-4 {
106724ba675SRob Herring		keypad,row = <0>;
107724ba675SRob Herring		keypad,column = <6>;
108724ba675SRob Herring		linux,code = <KEY_4>;
109724ba675SRob Herring	};
110724ba675SRob Herring
111724ba675SRob Herring	key-5 {
112724ba675SRob Herring		keypad,row = <0
113724ba675SRob Herring		>;
114724ba675SRob Herring		keypad,column = <7>;
115724ba675SRob Herring		linux,code = <KEY_5>;
116724ba675SRob Herring	};
117724ba675SRob Herring
118724ba675SRob Herring	key-6 {
119724ba675SRob Herring		keypad,row = <1>;
120724ba675SRob Herring		keypad,column = <3>;
121724ba675SRob Herring		linux,code = <KEY_A>;
122724ba675SRob Herring	};
123724ba675SRob Herring	key-7 {
124724ba675SRob Herring		keypad,row = <1>;
125724ba675SRob Herring		keypad,column = <4>;
126724ba675SRob Herring		linux,code = <KEY_B>;
127724ba675SRob Herring	};
128724ba675SRob Herring
129724ba675SRob Herring	key-8 {
130724ba675SRob Herring		keypad,row = <1>;
131724ba675SRob Herring		keypad,column = <5>;
132724ba675SRob Herring		linux,code = <KEY_C>;
133724ba675SRob Herring	};
134724ba675SRob Herring
135724ba675SRob Herring	key-9 {
136724ba675SRob Herring		keypad,row = <1>;
137724ba675SRob Herring		keypad,column = <6>;
138724ba675SRob Herring		linux,code = <KEY_D>;
139724ba675SRob Herring	};
140724ba675SRob Herring
141724ba675SRob Herring	key-10 {
142724ba675SRob Herring		keypad,row = <1>;
143724ba675SRob Herring		keypad,column = <7>;
144724ba675SRob Herring		linux,code = <KEY_E>;
145724ba675SRob Herring	};
146724ba675SRob Herring};
147724ba675SRob Herring
148724ba675SRob Herring&uart0 {
149724ba675SRob Herring	status = "okay";
150724ba675SRob Herring};
151724ba675SRob Herring
152724ba675SRob Herring&uart1 {
153724ba675SRob Herring	status = "okay";
154724ba675SRob Herring};
155724ba675SRob Herring
156724ba675SRob Herring&uart2 {
157724ba675SRob Herring	status = "okay";
158724ba675SRob Herring};
159724ba675SRob Herring
160724ba675SRob Herring&uart3 {
161724ba675SRob Herring	status = "okay";
162724ba675SRob Herring};
163724ba675SRob Herring
164724ba675SRob Herring&rtc {
165724ba675SRob Herring	status = "okay";
166724ba675SRob Herring	clocks = <&clocks CLK_RTC>, <&pmic_ap_clk>;
167724ba675SRob Herring	clock-names = "rtc", "rtc_src";
168724ba675SRob Herring};
169724ba675SRob Herring
170724ba675SRob Herring&sdhci0 {
171724ba675SRob Herring	bus-width = <4>;
172724ba675SRob Herring	pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_cd &sd0_bus1 &sd0_bus4>;
173724ba675SRob Herring	pinctrl-names = "default";
174724ba675SRob Herring	status = "okay";
175724ba675SRob Herring};
176724ba675SRob Herring
177724ba675SRob Herring&sdhci1 {
178724ba675SRob Herring	bus-width = <4>;
179724ba675SRob Herring	pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_cd &sd1_bus1 &sd1_bus4>;
180724ba675SRob Herring	pinctrl-names = "default";
181724ba675SRob Herring	status = "okay";
182724ba675SRob Herring};
183724ba675SRob Herring
184724ba675SRob Herring&sdhci2 {
185724ba675SRob Herring	bus-width = <4>;
186724ba675SRob Herring	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus1 &sd2_bus4>;
187724ba675SRob Herring	pinctrl-names = "default";
188724ba675SRob Herring	status = "okay";
189724ba675SRob Herring};
190724ba675SRob Herring
191724ba675SRob Herring&sdhci3 {
192724ba675SRob Herring	bus-width = <4>;
193724ba675SRob Herring	pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_cd &sd3_bus1 &sd3_bus4>;
194724ba675SRob Herring	pinctrl-names = "default";
195724ba675SRob Herring	status = "okay";
196724ba675SRob Herring};
197724ba675SRob Herring
198724ba675SRob Herring&hsotg {
199724ba675SRob Herring	dr_mode = "peripheral";
200724ba675SRob Herring	status = "okay";
201724ba675SRob Herring};
202724ba675SRob Herring
203724ba675SRob Herring&usbphy {
204724ba675SRob Herring	status = "okay";
205724ba675SRob Herring};
206724ba675SRob Herring
207724ba675SRob Herring&fimd {
208724ba675SRob Herring	pinctrl-0 = <&lcd_clk &lcd_data24>;
209724ba675SRob Herring	pinctrl-names = "default";
210724ba675SRob Herring	status = "okay";
211724ba675SRob Herring
212724ba675SRob Herring	display-timings {
213724ba675SRob Herring		native-mode = <&timing0>;
214724ba675SRob Herring
215724ba675SRob Herring		timing0: timing {
216724ba675SRob Herring			/* 800x480@60Hz */
217724ba675SRob Herring			clock-frequency = <24373920>;
218724ba675SRob Herring			hactive = <800>;
219724ba675SRob Herring			vactive = <480>;
220724ba675SRob Herring			hfront-porch = <8>;
221724ba675SRob Herring			hback-porch = <13>;
222724ba675SRob Herring			hsync-len = <3>;
223724ba675SRob Herring			vback-porch = <7>;
224724ba675SRob Herring			vfront-porch = <5>;
225724ba675SRob Herring			vsync-len = <1>;
226724ba675SRob Herring			hsync-active = <0>;
227724ba675SRob Herring			vsync-active = <0>;
228724ba675SRob Herring			de-active = <1>;
229724ba675SRob Herring			pixelclk-active = <1>;
230724ba675SRob Herring		};
231724ba675SRob Herring	};
232724ba675SRob Herring};
233724ba675SRob Herring
234724ba675SRob Herring&pwm {
235724ba675SRob Herring	samsung,pwm-outputs = <3>;
236724ba675SRob Herring};
237724ba675SRob Herring
238724ba675SRob Herring&i2c0 {
239724ba675SRob Herring	status = "okay";
240724ba675SRob Herring
241724ba675SRob Herring	audio-codec@1b {
242724ba675SRob Herring		compatible = "wlf,wm8580";
243724ba675SRob Herring		reg = <0x1b>;
244724ba675SRob Herring	};
245724ba675SRob Herring
246724ba675SRob Herring	eeprom@50 {
247724ba675SRob Herring		compatible = "atmel,24c08";
248724ba675SRob Herring		reg = <0x50>;
249724ba675SRob Herring	};
250724ba675SRob Herring};
251724ba675SRob Herring
252724ba675SRob Herring&i2s0 {
253724ba675SRob Herring	status = "okay";
254724ba675SRob Herring};
255