GNU Linux-libre 4.19.264-gnu1
[releases.git] / arch / arm / boot / dts / exynos4412-smdk4412.dts
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Samsung's Exynos4412 based SMDK board device tree source
4  *
5  * Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
6  *              http://www.samsung.com
7  *
8  * Device tree source file for Samsung's SMDK4412 board which is based on
9  * Samsung's Exynos4412 SoC.
10  */
11
12 /dts-v1/;
13 #include "exynos4412.dtsi"
14 #include "exynos-mfc-reserved-memory.dtsi"
15
16 / {
17         model = "Samsung SMDK evaluation board based on Exynos4412";
18         compatible = "samsung,smdk4412", "samsung,exynos4412", "samsung,exynos4";
19
20         memory@40000000 {
21                 device_type = "memory";
22                 reg = <0x40000000 0x40000000>;
23         };
24
25         chosen {
26                 bootargs ="root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC1,115200 init=/linuxrc";
27                 stdout-path = &serial_1;
28         };
29
30         fixed-rate-clocks {
31                 xxti {
32                         compatible = "samsung,clock-xxti";
33                         clock-frequency = <0>;
34                 };
35
36                 xusbxti {
37                         compatible = "samsung,clock-xusbxti";
38                         clock-frequency = <24000000>;
39                 };
40         };
41 };
42
43 &keypad {
44         samsung,keypad-num-rows = <3>;
45         samsung,keypad-num-columns = <8>;
46         linux,keypad-no-autorepeat;
47         wakeup-source;
48         pinctrl-0 = <&keypad_rows &keypad_cols>;
49         pinctrl-names = "default";
50         status = "okay";
51
52         key_1 {
53                 keypad,row = <1>;
54                 keypad,column = <3>;
55                 linux,code = <2>;
56         };
57
58         key_2 {
59                 keypad,row = <1>;
60                 keypad,column = <4>;
61                 linux,code = <3>;
62         };
63
64         key_3 {
65                 keypad,row = <1>;
66                 keypad,column = <5>;
67                 linux,code = <4>;
68         };
69
70         key_4 {
71                 keypad,row = <1>;
72                 keypad,column = <6>;
73                 linux,code = <5>;
74         };
75
76         key_5 {
77                 keypad,row = <1>;
78                 keypad,column = <7>;
79                 linux,code = <6>;
80         };
81
82         key_A {
83                 keypad,row = <2>;
84                 keypad,column = <6>;
85                 linux,code = <30>;
86         };
87
88         key_B {
89                 keypad,row = <2>;
90                 keypad,column = <7>;
91                 linux,code = <48>;
92         };
93
94         key_C {
95                 keypad,row = <0>;
96                 keypad,column = <5>;
97                 linux,code = <46>;
98         };
99
100         key_D {
101                 keypad,row = <2>;
102                 keypad,column = <5>;
103                 linux,code = <32>;
104         };
105
106         key_E {
107                 keypad,row = <0>;
108                 keypad,column = <7>;
109                 linux,code = <18>;
110         };
111 };
112
113 &pinctrl_1 {
114         keypad_rows: keypad-rows {
115                 samsung,pins = "gpx2-0", "gpx2-1", "gpx2-2";
116                 samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
117                 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
118                 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
119         };
120
121         keypad_cols: keypad-cols {
122                 samsung,pins = "gpx1-0", "gpx1-1", "gpx1-2", "gpx1-3",
123                                "gpx1-4", "gpx1-5", "gpx1-6", "gpx1-7";
124                 samsung,pin-function = <EXYNOS_PIN_FUNC_3>;
125                 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
126                 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
127         };
128 };
129
130 &sdhci_2 {
131         bus-width = <4>;
132         pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>;
133         pinctrl-names = "default";
134         status = "okay";
135 };
136
137 &serial_0 {
138         status = "okay";
139 };
140
141 &serial_1 {
142         status = "okay";
143 };
144
145 &serial_2 {
146         status = "okay";
147 };
148
149 &serial_3 {
150         status = "okay";
151 };