Loading...
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Device Tree for the ST-Ericsson Nomadik S8815 board
4 * Produced by Calao Systems
5 */
6
7/dts-v1/;
8#include <dt-bindings/interrupt-controller/irq.h>
9#include <dt-bindings/gpio/gpio.h>
10#include "ste-nomadik-stn8815.dtsi"
11
12/ {
13 model = "Nomadik STN8815NHK";
14 compatible = "st,nomadik-nhk-15";
15
16 chosen {
17 bootargs = "root=/dev/ram0 console=ttyAMA1,115200n8 earlyprintk";
18 };
19
20 aliases {
21 serial0 = &uart0;
22 serial1 = &uart1;
23 stmpe-i2c0 = &stmpe0;
24 stmpe-i2c1 = &stmpe1;
25 };
26
27 pinctrl {
28 uart0 {
29 uart0_nhk_mode: uart0_mux {
30 u0_default_mux {
31 function = "u0";
32 groups = "u0txrx_a_1", "u0ctsrts_a_1";
33 };
34 };
35 };
36
37 stmpe2401_1 {
38 stmpe2401_1_nhk_mode: stmpe2401_1_nhk {
39 nhk_cfg1 {
40 pins = "GPIO76_B20"; // IRQ line
41 ste,input = <0>;
42 };
43 nhk_cfg2 {
44 pins = "GPIO77_B8"; // reset line
45 ste,output = <1>;
46 };
47 };
48 };
49 stmpe2401_2 {
50 stmpe2401_2_nhk_mode: stmpe2401_2_nhk {
51 nhk_cfg1 {
52 pins = "GPIO78_A8"; // IRQ line
53 ste,input = <0>;
54 };
55 nhk_cfg2 {
56 pins = "GPIO79_C9"; // reset line
57 ste,output = <1>;
58 };
59 };
60 };
61 lis3lv02dl {
62 lis3lv02dl_nhk_mode: lis3lv02dl_nhk {
63 nhk_cfg1 {
64 pins = "GPIO82_C10"; // IRQ line
65 ste,input = <0>;
66 };
67 };
68 };
69 };
70 src@101e0000 {
71 /* These chrystal outputs are not used on this board */
72 disable-sxtalo;
73 disable-mxtalo;
74 };
75
76 /* This is where the interrupt is routed on the NHK-15 debug board */
77 external-bus@34000000 {
78 compatible = "simple-bus";
79 reg = <0x34000000 0x1000000>;
80 #address-cells = <1>;
81 #size-cells = <1>;
82 ranges = <0 0x34000000 0x1000000>;
83 ethernet@300 {
84 compatible = "smsc,lan91c111";
85 reg = <0x300 0x0fd00>;
86 reg-io-width = <2>;
87 reset-gpios = <&stmpe_gpio44 10 GPIO_ACTIVE_HIGH>;
88 interrupt-parent = <&stmpe_gpio44>;
89 interrupts = <11 IRQ_TYPE_EDGE_RISING>;
90 };
91 };
92
93 i2c0 {
94 lis3lv02dl@1d {
95 /* Accelerometer */
96 compatible = "st,lis3lv02dl-accel";
97 interrupt-parent = <&gpio2>;
98 interrupts = <18 IRQ_TYPE_EDGE_RISING>; // GPIO 82
99 pinctrl-0 = <&lis3lv02dl_nhk_mode>;
100 pinctrl-names = "default";
101 reg = <0x1d>;
102 };
103 stmpe0: stmpe2401@43 {
104 compatible = "st,stmpe2401";
105 reg = <0x43>;
106 reset-gpios = <&gpio2 13 GPIO_ACTIVE_LOW>; // GPIO77
107 interrupts = <12 IRQ_TYPE_EDGE_FALLING>; // GPIO76
108 interrupt-parent = <&gpio2>;
109 interrupt-controller;
110 wakeup-source;
111 pinctrl-names = "default";
112 pinctrl-0 = <&stmpe2401_1_nhk_mode>;
113 stmpe_gpio43: stmpe_gpio {
114 compatible = "st,stmpe-gpio";
115 gpio-controller;
116 #gpio-cells = <2>;
117 interrupt-controller;
118 #interrupt-cells = <2>;
119 /* Some pins in alternate functions */
120 st,norequest-mask = <0xf0f002>;
121 };
122 stmpe_keypad {
123 compatible = "st,stmpe-keypad";
124 debounce-interval = <64>;
125 st,scan-count = <8>;
126 st,no-autorepeat;
127 keypad,num-rows = <8>;
128 keypad,num-columns = <8>;
129 linux,keymap = <0x00020072 // Vol down
130 0x00030073 // Vol up
131 0x0100009e // Back
132 0x010100e3 // TV out
133 0x01020098 // Lock
134 0x0103013b // Start
135 0x020000a3 // Next
136 0x020100a4 // Play
137 0x020200a5 // Prev
138 0x02030160 // OK
139 0x03000069 // Left
140 0x0301006a // Right
141 0x03020067 // Up
142 0x0303006c>; // Down
143 };
144 stmpe0_pwm: stmpe_pwm {
145 compatible = "st,stmpe-pwm";
146 #pwm-cells = <2>;
147 };
148 };
149 stmpe1: stmpe2401@44 {
150 compatible = "st,stmpe2401";
151 reg = <0x44>;
152 reset-gpios = <&gpio2 15 GPIO_ACTIVE_LOW>; // GPIO79
153 interrupts = <14 IRQ_TYPE_EDGE_FALLING>; // GPIO78
154 interrupt-parent = <&gpio2>;
155 interrupt-controller;
156 wakeup-source;
157 pinctrl-names = "default";
158 pinctrl-0 = <&stmpe2401_2_nhk_mode>;
159 stmpe_gpio44: stmpe_gpio {
160 compatible = "st,stmpe-gpio";
161 gpio-controller;
162 #gpio-cells = <2>;
163 interrupt-controller;
164 #interrupt-cells = <2>;
165 /*
166 * This will turn off SATA so that MMC/SD
167 * can thrive
168 */
169 mmcsd-gpio {
170 gpio-hog;
171 gpios = <2 0x0>;
172 output-low;
173 line-name = "SATA EN";
174 };
175 };
176 };
177 };
178
179 amba {
180 clcd@10120000 {
181 status = "okay";
182 pinctrl-names = "default";
183 pinctrl-0 = <&clcd_24bit_mux>;
184 port {
185 nomadik_clcd_pads: endpoint {
186 remote-endpoint = <&nomadik_clcd_panel>;
187 arm,pl11x,tft-r0g0b0-pads = <16 8 0>;
188 };
189 };
190
191 /*
192 * WVGA connector 21
193 * WVGA (800x480): 4.3" TPG110 TDO43MTEA2 24-bit RGB
194 * with TPO touch screen.
195 */
196 panel {
197 compatible = "tpo,tpg110", "panel-dpi";
198 grestb-gpios = <&stmpe_gpio44 5 GPIO_ACTIVE_LOW>;
199 scen-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
200 scl-gpios = <&gpio0 5 GPIO_ACTIVE_HIGH>;
201 sda-gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>;
202 backlight = <&bl>;
203
204 port {
205 nomadik_clcd_panel: endpoint {
206 remote-endpoint = <&nomadik_clcd_pads>;
207 };
208 };
209
210 panel-timing {
211 clock-frequency = <33200000>;
212 hactive = <800>;
213 hback-porch = <216>;
214 hfront-porch = <40>;
215 hsync-len = <1>;
216 vactive = <480>;
217 vback-porch = <35>;
218 vfront-porch = <10>;
219 vsync-len = <1>;
220 };
221 };
222 };
223
224 /* Activate RX/TX and CTS/RTS on UART 0 */
225 uart0: uart@101fd000 {
226 pinctrl-names = "default";
227 pinctrl-0 = <&uart0_nhk_mode>;
228 status = "okay";
229 };
230 mmcsd: sdi@101f6000 {
231 cd-gpios = <&stmpe_gpio44 7 GPIO_ACTIVE_LOW>;
232 wp-gpios = <&stmpe_gpio44 18 GPIO_ACTIVE_HIGH>;
233 };
234 };
235
236 bl: backlight {
237 compatible = "pwm-backlight";
238 pwms = <&stmpe0_pwm 0 500000>;
239 pwm-names = "backlight";
240 brightness-levels = <
241 0 1 2 3 4 5 6 7 8 9
242 10 11 12 13 14 15 16 17 18 19
243 20 21 22 23 24 25 26 27 28 29
244 30 31 32 33 34 35 36 37 38 39
245 40 41 42 43 44 45 46 47 48 49
246 50 51 52 53 54 55 56 57 58 59
247 60 61 62 63 64 65 66 67 68 69
248 70 71 72 73 74 75 76 77 78 79
249 80 81 82 83 84 85 86 87 88 89
250 90 91 92 93 94 95 96 97 98 99
251 100
252 >;
253 default-brightness-level = <100>;
254 };
255};
1/*
2 * Device Tree for the ST-Ericsson Nomadik S8815 board
3 * Produced by Calao Systems
4 */
5
6/dts-v1/;
7#include <dt-bindings/interrupt-controller/irq.h>
8#include <dt-bindings/gpio/gpio.h>
9#include "ste-nomadik-stn8815.dtsi"
10
11/ {
12 model = "Nomadik STN8815NHK";
13 compatible = "st,nomadik-nhk-15";
14
15 chosen {
16 bootargs = "root=/dev/ram0 console=ttyAMA1,115200n8 earlyprintk";
17 };
18
19 aliases {
20 serial0 = &uart0;
21 serial1 = &uart1;
22 stmpe-i2c0 = &stmpe0;
23 stmpe-i2c1 = &stmpe1;
24 };
25
26 pinctrl {
27 uart0 {
28 uart0_nhk_mode: uart0_mux {
29 u0_default_mux {
30 function = "u0";
31 groups = "u0txrx_a_1", "u0ctsrts_a_1";
32 };
33 };
34 };
35
36 stmpe2401_1 {
37 stmpe2401_1_nhk_mode: stmpe2401_1_nhk {
38 nhk_cfg1 {
39 pins = "GPIO76_B20"; // IRQ line
40 ste,input = <0>;
41 };
42 nhk_cfg2 {
43 pins = "GPIO77_B8"; // reset line
44 ste,output = <1>;
45 };
46 };
47 };
48 stmpe2401_2 {
49 stmpe2401_2_nhk_mode: stmpe2401_2_nhk {
50 nhk_cfg1 {
51 pins = "GPIO78_A8"; // IRQ line
52 ste,input = <0>;
53 };
54 nhk_cfg2 {
55 pins = "GPIO79_C9"; // reset line
56 ste,output = <1>;
57 };
58 };
59 };
60 lis3lv02dl {
61 lis3lv02dl_nhk_mode: lis3lv02dl_nhk {
62 nhk_cfg1 {
63 pins = "GPIO82_C10"; // IRQ line
64 ste,input = <0>;
65 };
66 };
67 };
68 };
69 src@101e0000 {
70 /* These chrystal outputs are not used on this board */
71 disable-sxtalo;
72 disable-mxtalo;
73 };
74
75 /* This is where the interrupt is routed on the NHK-15 debug board */
76 external-bus@34000000 {
77 compatible = "simple-bus";
78 reg = <0x34000000 0x1000000>;
79 #address-cells = <1>;
80 #size-cells = <1>;
81 ranges = <0 0x34000000 0x1000000>;
82 ethernet@300 {
83 compatible = "smsc,lan91c111";
84 reg = <0x300 0x0fd00>;
85 reg-io-width = <2>;
86 reset-gpios = <&stmpe_gpio44 10 GPIO_ACTIVE_HIGH>;
87 interrupt-parent = <&stmpe_gpio44>;
88 interrupts = <11 IRQ_TYPE_EDGE_RISING>;
89 };
90 };
91
92 i2c0 {
93 lis3lv02dl@1d {
94 /* Accelerometer */
95 compatible = "st,lis3lv02dl-accel";
96 interrupt-parent = <&gpio2>;
97 interrupts = <18 IRQ_TYPE_EDGE_RISING>; // GPIO 82
98 pinctrl-0 = <&lis3lv02dl_nhk_mode>;
99 pinctrl-names = "default";
100 reg = <0x1d>;
101 };
102 stmpe0: stmpe2401@43 {
103 compatible = "st,stmpe2401";
104 reg = <0x43>;
105 reset-gpios = <&gpio2 13 GPIO_ACTIVE_LOW>; // GPIO77
106 interrupts = <12 IRQ_TYPE_EDGE_FALLING>; // GPIO76
107 interrupt-parent = <&gpio2>;
108 interrupt-controller;
109 wakeup-source;
110 pinctrl-names = "default";
111 pinctrl-0 = <&stmpe2401_1_nhk_mode>;
112 stmpe_gpio43: stmpe_gpio {
113 compatible = "st,stmpe-gpio";
114 gpio-controller;
115 #gpio-cells = <2>;
116 interrupt-controller;
117 #interrupt-cells = <2>;
118 /* Some pins in alternate functions */
119 st,norequest-mask = <0xf0f002>;
120 };
121 stmpe_keypad {
122 compatible = "st,stmpe-keypad";
123 debounce-interval = <64>;
124 st,scan-count = <8>;
125 st,no-autorepeat;
126 keypad,num-rows = <8>;
127 keypad,num-columns = <8>;
128 linux,keymap = <0x00020072 // Vol down
129 0x00030073 // Vol up
130 0x0100009e // Back
131 0x010100e3 // TV out
132 0x01020098 // Lock
133 0x0103013b // Start
134 0x020000a3 // Next
135 0x020100a4 // Play
136 0x020200a5 // Prev
137 0x02030160 // OK
138 0x03000069 // Left
139 0x0301006a // Right
140 0x03020067 // Up
141 0x0303006c>; // Down
142 };
143 stmpe0_pwm: stmpe_pwm {
144 compatible = "st,stmpe-pwm";
145 #pwm-cells = <2>;
146 };
147 };
148 stmpe1: stmpe2401@44 {
149 compatible = "st,stmpe2401";
150 reg = <0x44>;
151 reset-gpios = <&gpio2 15 GPIO_ACTIVE_LOW>; // GPIO79
152 interrupts = <14 IRQ_TYPE_EDGE_FALLING>; // GPIO78
153 interrupt-parent = <&gpio2>;
154 interrupt-controller;
155 wakeup-source;
156 pinctrl-names = "default";
157 pinctrl-0 = <&stmpe2401_2_nhk_mode>;
158 stmpe_gpio44: stmpe_gpio {
159 compatible = "st,stmpe-gpio";
160 gpio-controller;
161 #gpio-cells = <2>;
162 interrupt-controller;
163 #interrupt-cells = <2>;
164 /*
165 * This will turn off SATA so that MMC/SD
166 * can thrive
167 */
168 mmcsd-gpio {
169 gpio-hog;
170 gpios = <2 0x0>;
171 output-low;
172 line-name = "SATA EN";
173 };
174 };
175 };
176 };
177
178 amba {
179 clcd@10120000 {
180 status = "okay";
181 pinctrl-names = "default";
182 pinctrl-0 = <&clcd_24bit_mux>;
183 port {
184 nomadik_clcd_pads: endpoint {
185 remote-endpoint = <&nomadik_clcd_panel>;
186 arm,pl11x,tft-r0g0b0-pads = <16 8 0>;
187 };
188 };
189
190 /*
191 * WVGA connector 21
192 * WVGA (800x480): 4.3" TPG110 TDO43MTEA2 24-bit RGB
193 * with TPO touch screen.
194 */
195 panel {
196 compatible = "tpo,tpg110", "panel-dpi";
197 grestb-gpios = <&stmpe_gpio44 5 GPIO_ACTIVE_LOW>;
198 scen-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
199 scl-gpios = <&gpio0 5 GPIO_ACTIVE_HIGH>;
200 sda-gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>;
201 backlight = <&bl>;
202
203 port {
204 nomadik_clcd_panel: endpoint {
205 remote-endpoint = <&nomadik_clcd_pads>;
206 };
207 };
208
209 panel-timing {
210 clock-frequency = <33200000>;
211 hactive = <800>;
212 hback-porch = <216>;
213 hfront-porch = <40>;
214 hsync-len = <1>;
215 vactive = <480>;
216 vback-porch = <35>;
217 vfront-porch = <10>;
218 vsync-len = <1>;
219 };
220 };
221 };
222
223 /* Activate RX/TX and CTS/RTS on UART 0 */
224 uart0: uart@101fd000 {
225 pinctrl-names = "default";
226 pinctrl-0 = <&uart0_nhk_mode>;
227 status = "okay";
228 };
229 mmcsd: sdi@101f6000 {
230 cd-gpios = <&stmpe_gpio44 7 GPIO_ACTIVE_LOW>;
231 wp-gpios = <&stmpe_gpio44 18 GPIO_ACTIVE_HIGH>;
232 };
233 };
234
235 bl: backlight {
236 compatible = "pwm-backlight";
237 pwms = <&stmpe0_pwm 0 500000>;
238 pwm-names = "backlight";
239 brightness-levels = <
240 0 1 2 3 4 5 6 7 8 9
241 10 11 12 13 14 15 16 17 18 19
242 20 21 22 23 24 25 26 27 28 29
243 30 31 32 33 34 35 36 37 38 39
244 40 41 42 43 44 45 46 47 48 49
245 50 51 52 53 54 55 56 57 58 59
246 60 61 62 63 64 65 66 67 68 69
247 70 71 72 73 74 75 76 77 78 79
248 80 81 82 83 84 85 86 87 88 89
249 90 91 92 93 94 95 96 97 98 99
250 100
251 >;
252 default-brightness-level = <100>;
253 };
254};