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