1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Samsung's Exynos4210 based SMDKV310 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 Samsung's SMDKV310 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 "exynos-mfc-reserved-memory.dtsi"
18
19/ {
20	model = "Samsung smdkv310 evaluation board based on Exynos4210";
21	compatible = "samsung,smdkv310", "samsung,exynos4210", "samsung,exynos4";
22
23	memory@40000000 {
24		device_type = "memory";
25		reg = <0x40000000 0x80000000>;
26	};
27
28	chosen {
29		bootargs = "root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M init=/linuxrc";
30		stdout-path = "serial1:115200n8";
31	};
32
33	fixed-rate-clocks {
34		xxti {
35			compatible = "samsung,clock-xxti";
36			clock-frequency = <12000000>;
37		};
38
39		xusbxti {
40			compatible = "samsung,clock-xusbxti";
41			clock-frequency = <24000000>;
42		};
43
44		pmic_ap_clk: pmic-ap-clk {
45			/* Workaround for missing clock on PMIC */
46			compatible = "fixed-clock";
47			#clock-cells = <0>;
48			clock-frequency = <32768>;
49		};
50	};
51};
52
53&cpu_thermal {
54	cooling-maps {
55		map0 {
56			/* Corresponds to 800MHz */
57			cooling-device = <&cpu0 2 2>;
58		};
59		map1 {
60			/* Corresponds to 200MHz */
61			cooling-device = <&cpu0 4 4>;
62		};
63	};
64};
65
66&i2c_0 {
67	#address-cells = <1>;
68	#size-cells = <0>;
69	samsung,i2c-sda-delay = <100>;
70	samsung,i2c-max-bus-freq = <100000>;
71	status = "okay";
72
73	eeprom@50 {
74		compatible = "samsung,24ad0xd1";
75		reg = <0x50>;
76	};
77
78	eeprom@52 {
79		compatible = "samsung,24ad0xd1";
80		reg = <0x52>;
81	};
82};
83
84&keypad {
85	samsung,keypad-num-rows = <2>;
86	samsung,keypad-num-columns = <8>;
87	linux,keypad-no-autorepeat;
88	wakeup-source;
89	pinctrl-names = "default";
90	pinctrl-0 = <&keypad_rows &keypad_cols>;
91	status = "okay";
92
93	key-1 {
94		keypad,row = <0>;
95		keypad,column = <3>;
96		linux,code = <2>;
97	};
98
99	key-2 {
100		keypad,row = <0>;
101		keypad,column = <4>;
102		linux,code = <3>;
103	};
104
105	key-3 {
106		keypad,row = <0>;
107		keypad,column = <5>;
108		linux,code = <4>;
109	};
110
111	key-4 {
112		keypad,row = <0>;
113		keypad,column = <6>;
114		linux,code = <5>;
115	};
116
117	key-5 {
118		keypad,row = <0>;
119		keypad,column = <7>;
120		linux,code = <6>;
121	};
122
123	key-a {
124		keypad,row = <1>;
125		keypad,column = <3>;
126		linux,code = <30>;
127	};
128
129	key-b {
130		keypad,row = <1>;
131		keypad,column = <4>;
132		linux,code = <48>;
133	};
134
135	key-c {
136		keypad,row = <1>;
137		keypad,column = <5>;
138		linux,code = <46>;
139	};
140
141	key-d {
142		keypad,row = <1>;
143		keypad,column = <6>;
144		linux,code = <32>;
145	};
146
147	key-e {
148		keypad,row = <1>;
149		keypad,column = <7>;
150		linux,code = <18>;
151	};
152};
153
154&pinctrl_1 {
155	keypad_rows: keypad-rows {
156		samsung,pins = "gpx2-0", "gpx2-1";
157		samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
158		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
159		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
160	};
161
162	keypad_cols: keypad-cols {
163		samsung,pins = "gpx1-0", "gpx1-1", "gpx1-2", "gpx1-3",
164			       "gpx1-4", "gpx1-5", "gpx1-6", "gpx1-7";
165		samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
166		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
167		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
168	};
169};
170
171&rtc {
172	clocks = <&clock CLK_RTC>, <&pmic_ap_clk>;
173	clock-names = "rtc", "rtc_src";
174};
175
176&sdhci_2 {
177	bus-width = <4>;
178	pinctrl-names = "default";
179	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>;
180	status = "okay";
181};
182
183&serial_0 {
184	status = "okay";
185};
186
187&serial_1 {
188	status = "okay";
189};
190
191&serial_2 {
192	status = "okay";
193};
194
195&serial_3 {
196	status = "okay";
197};
198
199&spi_2 {
200	cs-gpios = <&gpc1 2 GPIO_ACTIVE_HIGH>;
201	status = "okay";
202
203	flash@0 {
204		#address-cells = <1>;
205		#size-cells = <1>;
206		compatible = "w25x80";
207		reg = <0>;
208		spi-max-frequency = <1000000>;
209
210		controller-data {
211			samsung,spi-feedback-delay = <0>;
212		};
213
214		partition@0 {
215			label = "U-Boot";
216			reg = <0x0 0x40000>;
217			read-only;
218		};
219
220		partition@40000 {
221			label = "Kernel";
222			reg = <0x40000 0xc0000>;
223		};
224	};
225};
226