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