Commit | Line | Data |
---|---|---|
451f2334 LW |
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 { | |
1cb3375b | 20 | serial0 = &uart0; |
a153790a | 21 | serial1 = &uart1; |
451f2334 LW |
22 | stmpe-i2c0 = &stmpe0; |
23 | stmpe-i2c1 = &stmpe1; | |
24 | }; | |
25 | ||
26 | pinctrl { | |
1cb3375b LW |
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 | ||
451f2334 LW |
36 | stmpe2401_1 { |
37 | stmpe2401_1_nhk_mode: stmpe2401_1_nhk { | |
38 | nhk_cfg1 { | |
259e4384 | 39 | pins = "GPIO76_B20"; // IRQ line |
451f2334 LW |
40 | ste,input = <0>; |
41 | }; | |
42 | nhk_cfg2 { | |
259e4384 | 43 | pins = "GPIO77_B8"; // reset line |
451f2334 LW |
44 | ste,output = <1>; |
45 | }; | |
46 | }; | |
47 | }; | |
48 | stmpe2401_2 { | |
49 | stmpe2401_2_nhk_mode: stmpe2401_2_nhk { | |
50 | nhk_cfg1 { | |
259e4384 | 51 | pins = "GPIO78_A8"; // IRQ line |
451f2334 LW |
52 | ste,input = <0>; |
53 | }; | |
54 | nhk_cfg2 { | |
259e4384 | 55 | pins = "GPIO79_C9"; // reset line |
451f2334 LW |
56 | ste,output = <1>; |
57 | }; | |
58 | }; | |
59 | }; | |
60 | }; | |
61 | ||
62 | src@101e0000 { | |
63 | /* These chrystal outputs are not used on this board */ | |
64 | disable-sxtalo; | |
65 | disable-mxtalo; | |
66 | }; | |
67 | ||
68 | /* This is where the interrupt is routed on the NHK-15 debug board */ | |
69 | external-bus@34000000 { | |
70 | compatible = "simple-bus"; | |
71 | reg = <0x34000000 0x1000000>; | |
72 | #address-cells = <1>; | |
73 | #size-cells = <1>; | |
74 | ranges = <0 0x34000000 0x1000000>; | |
75 | ethernet@300 { | |
76 | compatible = "smsc,lan91c111"; | |
77 | reg = <0x300 0x0fd00>; | |
78 | reg-io-width = <2>; | |
79 | reset-gpios = <&stmpe_gpio44 10 GPIO_ACTIVE_HIGH>; | |
80 | interrupt-parent = <&stmpe_gpio44>; | |
81 | interrupts = <11 IRQ_TYPE_EDGE_RISING>; | |
82 | }; | |
83 | }; | |
84 | ||
85 | i2c0 { | |
4f2f1f76 LW |
86 | lis3lv02dl@1d { |
87 | /* Accelerometer */ | |
88 | compatible = "st,lis3lv02dl-accel"; | |
89 | reg = <0x1d>; | |
90 | }; | |
451f2334 LW |
91 | stmpe0: stmpe2401@43 { |
92 | compatible = "st,stmpe2401"; | |
93 | reg = <0x43>; | |
94 | reset-gpios = <&gpio2 13 GPIO_ACTIVE_LOW>; // GPIO77 | |
95 | interrupts = <12 IRQ_TYPE_EDGE_FALLING>; // GPIO76 | |
96 | interrupt-parent = <&gpio2>; | |
97 | interrupt-controller; | |
98 | wakeup-source; | |
99 | pinctrl-names = "default"; | |
100 | pinctrl-0 = <&stmpe2401_1_nhk_mode>; | |
101 | stmpe_gpio43: stmpe_gpio { | |
102 | compatible = "st,stmpe-gpio"; | |
103 | gpio-controller; | |
104 | #gpio-cells = <2>; | |
105 | interrupt-controller; | |
106 | #interrupt-cells = <2>; | |
107 | /* Some pins in alternate functions */ | |
108 | st,norequest-mask = <0xf0f002>; | |
109 | }; | |
110 | stmpe_keypad { | |
111 | compatible = "st,stmpe-keypad"; | |
112 | debounce-interval = <64>; | |
113 | st,scan-count = <8>; | |
114 | st,no-autorepeat; | |
115 | keypad,num-rows = <8>; | |
116 | keypad,num-columns = <8>; | |
117 | linux,keymap = <0x00020072 // Vol down | |
118 | 0x00030073 // Vol up | |
119 | 0x0100009e // Back | |
120 | 0x010100e3 // TV out | |
121 | 0x01020098 // Lock | |
122 | 0x0103013b // Start | |
123 | 0x020000a3 // Next | |
124 | 0x020100a4 // Play | |
125 | 0x020200a5 // Prev | |
126 | 0x02030160 // OK | |
127 | 0x03000069 // Left | |
128 | 0x0301006a // Right | |
129 | 0x03020067 // Up | |
130 | 0x0303006c>; // Down | |
131 | }; | |
132 | }; | |
133 | stmpe1: stmpe2401@44 { | |
134 | compatible = "st,stmpe2401"; | |
135 | reg = <0x44>; | |
136 | reset-gpios = <&gpio2 15 GPIO_ACTIVE_LOW>; // GPIO79 | |
137 | interrupts = <14 IRQ_TYPE_EDGE_FALLING>; // GPIO78 | |
138 | interrupt-parent = <&gpio2>; | |
139 | interrupt-controller; | |
140 | wakeup-source; | |
141 | pinctrl-names = "default"; | |
142 | pinctrl-0 = <&stmpe2401_2_nhk_mode>; | |
143 | stmpe_gpio44: stmpe_gpio { | |
144 | compatible = "st,stmpe-gpio"; | |
145 | gpio-controller; | |
146 | #gpio-cells = <2>; | |
147 | interrupt-controller; | |
148 | #interrupt-cells = <2>; | |
4cec8cd7 LW |
149 | /* |
150 | * This will turn off SATA so that MMC/SD | |
151 | * can thrive | |
152 | */ | |
153 | mmcsd-gpio { | |
154 | gpio-hog; | |
155 | gpios = <2 0x0>; | |
156 | output-low; | |
157 | line-name = "SATA EN"; | |
158 | }; | |
451f2334 LW |
159 | }; |
160 | }; | |
161 | }; | |
162 | ||
163 | amba { | |
1cb3375b LW |
164 | /* Activate RX/TX and CTS/RTS on UART 0 */ |
165 | uart0: uart@101fd000 { | |
166 | pinctrl-names = "default"; | |
167 | pinctrl-0 = <&uart0_nhk_mode>; | |
168 | status = "okay"; | |
169 | }; | |
451f2334 LW |
170 | mmcsd: sdi@101f6000 { |
171 | cd-gpios = <&stmpe_gpio44 7 GPIO_ACTIVE_LOW>; | |
172 | wp-gpios = <&stmpe_gpio44 18 GPIO_ACTIVE_HIGH>; | |
173 | }; | |
174 | }; | |
451f2334 | 175 | }; |