Loading...
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Samsung's S3C6410 based Mini6410 board device tree source
4 *
5 * Copyright (c) 2013 Tomasz Figa <tomasz.figa@gmail.com>
6 *
7 * Device tree source file for FriendlyARM Mini6410 board which is based on
8 * Samsung's S3C6410 SoC.
9 */
10
11/dts-v1/;
12
13#include <dt-bindings/gpio/gpio.h>
14#include <dt-bindings/interrupt-controller/irq.h>
15
16#include "s3c6410.dtsi"
17
18/ {
19 model = "FriendlyARM Mini6410 board based on S3C6410";
20 compatible = "friendlyarm,mini6410", "samsung,s3c6410";
21
22 memory {
23 reg = <0x50000000 0x10000000>;
24 };
25
26 chosen {
27 bootargs = "console=ttySAC0,115200n8 earlyprintk rootwait root=/dev/mmcblk0p1";
28 };
29
30 clocks {
31 compatible = "simple-bus";
32 #address-cells = <1>;
33 #size-cells = <0>;
34
35 fin_pll: oscillator@0 {
36 compatible = "fixed-clock";
37 reg = <0>;
38 clock-frequency = <12000000>;
39 clock-output-names = "fin_pll";
40 #clock-cells = <0>;
41 };
42
43 xusbxti: oscillator@1 {
44 compatible = "fixed-clock";
45 reg = <1>;
46 clock-output-names = "xusbxti";
47 clock-frequency = <48000000>;
48 #clock-cells = <0>;
49 };
50 };
51
52 srom-cs1@18000000 {
53 compatible = "simple-bus";
54 #address-cells = <1>;
55 #size-cells = <1>;
56 reg = <0x18000000 0x8000000>;
57 ranges;
58
59 ethernet@18000000 {
60 compatible = "davicom,dm9000";
61 reg = <0x18000000 0x2 0x18000004 0x2>;
62 interrupt-parent = <&gpn>;
63 interrupts = <7 IRQ_TYPE_LEVEL_HIGH>;
64 davicom,no-eeprom;
65 };
66 };
67
68 gpio-keys {
69 compatible = "gpio-keys";
70 pinctrl-names = "default";
71 pinctrl-0 = <&gpio_keys>;
72 autorepeat;
73
74 button-k1 {
75 label = "K1";
76 gpios = <&gpn 0 GPIO_ACTIVE_LOW>;
77 linux,code = <2>;
78 debounce-interval = <20>;
79 };
80
81 button-k2 {
82 label = "K2";
83 gpios = <&gpn 1 GPIO_ACTIVE_LOW>;
84 linux,code = <3>;
85 debounce-interval = <20>;
86 };
87
88 button-k3 {
89 label = "K3";
90 gpios = <&gpn 2 GPIO_ACTIVE_LOW>;
91 linux,code = <4>;
92 debounce-interval = <20>;
93 };
94
95 button-k4 {
96 label = "K4";
97 gpios = <&gpn 3 GPIO_ACTIVE_LOW>;
98 linux,code = <5>;
99 debounce-interval = <20>;
100 };
101
102 button-k5 {
103 label = "K5";
104 gpios = <&gpn 4 GPIO_ACTIVE_LOW>;
105 linux,code = <6>;
106 debounce-interval = <20>;
107 };
108
109 button-k6 {
110 label = "K6";
111 gpios = <&gpn 5 GPIO_ACTIVE_LOW>;
112 linux,code = <7>;
113 debounce-interval = <20>;
114 };
115
116 button-k7 {
117 label = "K7";
118 gpios = <&gpl 11 GPIO_ACTIVE_LOW>;
119 linux,code = <8>;
120 debounce-interval = <20>;
121 };
122
123 button-k8 {
124 label = "K8";
125 gpios = <&gpl 12 GPIO_ACTIVE_LOW>;
126 linux,code = <9>;
127 debounce-interval = <20>;
128 };
129 };
130
131 leds {
132 compatible = "gpio-leds";
133 pinctrl-names = "default";
134 pinctrl-0 = <&gpio_leds>;
135
136 led-1 {
137 label = "LED1";
138 gpios = <&gpk 4 GPIO_ACTIVE_LOW>;
139 linux,default-trigger = "heartbeat";
140 };
141
142 led-2 {
143 label = "LED2";
144 gpios = <&gpk 5 GPIO_ACTIVE_LOW>;
145 linux,default-trigger = "mmc0";
146 };
147
148 led-3 {
149 label = "LED3";
150 gpios = <&gpk 6 GPIO_ACTIVE_LOW>;
151 };
152
153 led-4 {
154 label = "LED4";
155 gpios = <&gpk 7 GPIO_ACTIVE_LOW>;
156 };
157 };
158
159 buzzer {
160 compatible = "pwm-beeper";
161 pwms = <&pwm 0 1000000 0>;
162 pinctrl-names = "default";
163 pinctrl-0 = <&pwm0_out>;
164 };
165};
166
167&sdhci0 {
168 pinctrl-names = "default";
169 pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>;
170 bus-width = <4>;
171 status = "okay";
172};
173
174&uart0 {
175 pinctrl-names = "default";
176 pinctrl-0 = <&uart0_data>;
177 status = "okay";
178};
179
180&uart1 {
181 pinctrl-names = "default";
182 pinctrl-0 = <&uart1_data>, <&uart1_fctl>;
183 status = "okay";
184};
185
186&uart2 {
187 pinctrl-names = "default";
188 pinctrl-0 = <&uart2_data>;
189 status = "okay";
190};
191
192&uart3 {
193 pinctrl-names = "default";
194 pinctrl-0 = <&uart3_data>;
195 status = "okay";
196};
197
198&pinctrl0 {
199 gpio_leds: gpio-leds {
200 samsung,pins = "gpk-4", "gpk-5", "gpk-6", "gpk-7";
201 samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
202 };
203
204 gpio_keys: gpio-keys {
205 samsung,pins = "gpn-0", "gpn-1", "gpn-2", "gpn-3",
206 "gpn-4", "gpn-5", "gpl-11", "gpl-12";
207 samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
208 };
209};
210
211&i2c0 {
212 pinctrl-names = "default";
213 pinctrl-0 = <&i2c0_bus>;
214 status = "okay";
215
216 eeprom@50 {
217 compatible = "atmel,24c08";
218 reg = <0x50>;
219 pagesize = <16>;
220 };
221};
1/*
2 * Samsung's S3C6410 based Mini6410 board device tree source
3 *
4 * Copyright (c) 2013 Tomasz Figa <tomasz.figa@gmail.com>
5 *
6 * Device tree source file for FriendlyARM Mini6410 board which is based on
7 * Samsung's S3C6410 SoC.
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12*/
13
14/dts-v1/;
15
16#include <dt-bindings/gpio/gpio.h>
17#include <dt-bindings/interrupt-controller/irq.h>
18
19#include "s3c6410.dtsi"
20
21/ {
22 model = "FriendlyARM Mini6410 board based on S3C6410";
23 compatible = "friendlyarm,mini6410", "samsung,s3c6410";
24
25 memory {
26 reg = <0x50000000 0x10000000>;
27 };
28
29 chosen {
30 bootargs = "console=ttySAC0,115200n8 earlyprintk rootwait root=/dev/mmcblk0p1";
31 };
32
33 clocks {
34 compatible = "simple-bus";
35 #address-cells = <1>;
36 #size-cells = <0>;
37
38 fin_pll: oscillator@0 {
39 compatible = "fixed-clock";
40 reg = <0>;
41 clock-frequency = <12000000>;
42 clock-output-names = "fin_pll";
43 #clock-cells = <0>;
44 };
45
46 xusbxti: oscillator@1 {
47 compatible = "fixed-clock";
48 reg = <1>;
49 clock-output-names = "xusbxti";
50 clock-frequency = <48000000>;
51 #clock-cells = <0>;
52 };
53 };
54
55 srom-cs1@18000000 {
56 compatible = "simple-bus";
57 #address-cells = <1>;
58 #size-cells = <1>;
59 reg = <0x18000000 0x8000000>;
60 ranges;
61
62 ethernet@18000000 {
63 compatible = "davicom,dm9000";
64 reg = <0x18000000 0x2 0x18000004 0x2>;
65 interrupt-parent = <&gpn>;
66 interrupts = <7 IRQ_TYPE_LEVEL_HIGH>;
67 davicom,no-eeprom;
68 };
69 };
70
71 gpio-keys {
72 compatible = "gpio-keys";
73 pinctrl-names = "default";
74 pinctrl-0 = <&gpio_keys>;
75 autorepeat;
76
77 button-k1 {
78 label = "K1";
79 gpios = <&gpn 0 GPIO_ACTIVE_LOW>;
80 linux,code = <2>;
81 debounce-interval = <20>;
82 };
83
84 button-k2 {
85 label = "K2";
86 gpios = <&gpn 1 GPIO_ACTIVE_LOW>;
87 linux,code = <3>;
88 debounce-interval = <20>;
89 };
90
91 button-k3 {
92 label = "K3";
93 gpios = <&gpn 2 GPIO_ACTIVE_LOW>;
94 linux,code = <4>;
95 debounce-interval = <20>;
96 };
97
98 button-k4 {
99 label = "K4";
100 gpios = <&gpn 3 GPIO_ACTIVE_LOW>;
101 linux,code = <5>;
102 debounce-interval = <20>;
103 };
104
105 button-k5 {
106 label = "K5";
107 gpios = <&gpn 4 GPIO_ACTIVE_LOW>;
108 linux,code = <6>;
109 debounce-interval = <20>;
110 };
111
112 button-k6 {
113 label = "K6";
114 gpios = <&gpn 5 GPIO_ACTIVE_LOW>;
115 linux,code = <7>;
116 debounce-interval = <20>;
117 };
118
119 button-k7 {
120 label = "K7";
121 gpios = <&gpl 11 GPIO_ACTIVE_LOW>;
122 linux,code = <8>;
123 debounce-interval = <20>;
124 };
125
126 button-k8 {
127 label = "K8";
128 gpios = <&gpl 12 GPIO_ACTIVE_LOW>;
129 linux,code = <9>;
130 debounce-interval = <20>;
131 };
132 };
133
134 leds {
135 compatible = "gpio-leds";
136 pinctrl-names = "default";
137 pinctrl-0 = <&gpio_leds>;
138
139 led-1 {
140 label = "LED1";
141 gpios = <&gpk 4 GPIO_ACTIVE_LOW>;
142 linux,default-trigger = "heartbeat";
143 };
144
145 led-2 {
146 label = "LED2";
147 gpios = <&gpk 5 GPIO_ACTIVE_LOW>;
148 linux,default-trigger = "mmc0";
149 };
150
151 led-3 {
152 label = "LED3";
153 gpios = <&gpk 6 GPIO_ACTIVE_LOW>;
154 };
155
156 led-4 {
157 label = "LED4";
158 gpios = <&gpk 7 GPIO_ACTIVE_LOW>;
159 };
160 };
161
162 buzzer {
163 compatible = "pwm-beeper";
164 pwms = <&pwm 0 1000000 0>;
165 pinctrl-names = "default";
166 pinctrl-0 = <&pwm0_out>;
167 };
168};
169
170&sdhci0 {
171 pinctrl-names = "default";
172 pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>;
173 bus-width = <4>;
174 status = "okay";
175};
176
177&uart0 {
178 pinctrl-names = "default";
179 pinctrl-0 = <&uart0_data>;
180 status = "okay";
181};
182
183&uart1 {
184 pinctrl-names = "default";
185 pinctrl-0 = <&uart1_data>, <&uart1_fctl>;
186 status = "okay";
187};
188
189&uart2 {
190 pinctrl-names = "default";
191 pinctrl-0 = <&uart2_data>;
192 status = "okay";
193};
194
195&uart3 {
196 pinctrl-names = "default";
197 pinctrl-0 = <&uart3_data>;
198 status = "okay";
199};
200
201&pinctrl0 {
202 gpio_leds: gpio-leds {
203 samsung,pins = "gpk-4", "gpk-5", "gpk-6", "gpk-7";
204 samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
205 };
206
207 gpio_keys: gpio-keys {
208 samsung,pins = "gpn-0", "gpn-1", "gpn-2", "gpn-3",
209 "gpn-4", "gpn-5", "gpl-11", "gpl-12";
210 samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
211 };
212};
213
214&i2c0 {
215 pinctrl-names = "default";
216 pinctrl-0 = <&i2c0_bus>;
217 status = "okay";
218
219 eeprom@50 {
220 compatible = "atmel,24c08";
221 reg = <0x50>;
222 pagesize = <16>;
223 };
224};