diff options
author | R Sricharan <r.sricharan@ti.com> | 2013-08-14 09:38:20 -0400 |
---|---|---|
committer | Benoit Cousson <bcousson@baylibre.com> | 2013-10-08 11:51:41 -0400 |
commit | 6e58b8f1daaf1af340fb9309907e5ffa473c7aff (patch) | |
tree | a2fcea763036537daa3a49b44ca2e3319e294a5e | |
parent | 06a9ea5d76fdff82d9792d8cc315de4c43086780 (diff) |
ARM: dts: DRA7: Add the dts files for dra7 SoC and dra7-evm board
Add minimal device tree source needed for DRA7 based SoCs.
Also add a board dts file for the dra7-evm (based on dra752)
which contains 1.5G of memory with 1G interleaved and 512MB
non-interleaved. Also added in the board file are pin configuration
details for i2c, mcspi and uart devices on board.
Signed-off-by: R Sricharan <r.sricharan@ti.com>
Signed-off-by: Rajendra Nayak <rnayak@ti.com>
Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
-rw-r--r-- | arch/arm/boot/dts/Makefile | 3 | ||||
-rw-r--r-- | arch/arm/boot/dts/dra7-evm.dts | 140 | ||||
-rw-r--r-- | arch/arm/boot/dts/dra7.dtsi | 575 | ||||
-rw-r--r-- | include/dt-bindings/pinctrl/dra.h | 50 |
4 files changed, 767 insertions, 1 deletions
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index a7cae5371489..b057b0e12d7c 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile | |||
@@ -189,7 +189,8 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \ | |||
189 | am335x-boneblack.dtb \ | 189 | am335x-boneblack.dtb \ |
190 | am3517-evm.dtb \ | 190 | am3517-evm.dtb \ |
191 | am3517_mt_ventoux.dtb \ | 191 | am3517_mt_ventoux.dtb \ |
192 | am43x-epos-evm.dtb | 192 | am43x-epos-evm.dtb \ |
193 | dra7-evm.dtb | ||
193 | dtb-$(CONFIG_ARCH_ORION5X) += orion5x-lacie-ethernet-disk-mini-v2.dtb | 194 | dtb-$(CONFIG_ARCH_ORION5X) += orion5x-lacie-ethernet-disk-mini-v2.dtb |
194 | dtb-$(CONFIG_ARCH_PRIMA2) += prima2-evb.dtb | 195 | dtb-$(CONFIG_ARCH_PRIMA2) += prima2-evb.dtb |
195 | dtb-$(CONFIG_ARCH_U8500) += ste-snowball.dtb \ | 196 | dtb-$(CONFIG_ARCH_U8500) += ste-snowball.dtb \ |
diff --git a/arch/arm/boot/dts/dra7-evm.dts b/arch/arm/boot/dts/dra7-evm.dts new file mode 100644 index 000000000000..ca5dab2214d5 --- /dev/null +++ b/arch/arm/boot/dts/dra7-evm.dts | |||
@@ -0,0 +1,140 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License version 2 as | ||
6 | * published by the Free Software Foundation. | ||
7 | */ | ||
8 | /dts-v1/; | ||
9 | |||
10 | #include "dra7.dtsi" | ||
11 | |||
12 | / { | ||
13 | model = "TI DRA7"; | ||
14 | compatible = "ti,dra7-evm", "ti,dra752", "ti,dra7"; | ||
15 | |||
16 | memory { | ||
17 | device_type = "memory"; | ||
18 | reg = <0x80000000 0x60000000>; /* 1536 MB */ | ||
19 | }; | ||
20 | }; | ||
21 | |||
22 | &dra7_pmx_core { | ||
23 | i2c1_pins: pinmux_i2c1_pins { | ||
24 | pinctrl-single,pins = < | ||
25 | 0x400 (PIN_INPUT | MUX_MODE0) /* i2c1_sda */ | ||
26 | 0x404 (PIN_INPUT | MUX_MODE0) /* i2c1_scl */ | ||
27 | >; | ||
28 | }; | ||
29 | |||
30 | i2c2_pins: pinmux_i2c2_pins { | ||
31 | pinctrl-single,pins = < | ||
32 | 0x408 (PIN_INPUT | MUX_MODE0) /* i2c2_sda */ | ||
33 | 0x40c (PIN_INPUT | MUX_MODE0) /* i2c2_scl */ | ||
34 | >; | ||
35 | }; | ||
36 | |||
37 | i2c3_pins: pinmux_i2c3_pins { | ||
38 | pinctrl-single,pins = < | ||
39 | 0x410 (PIN_INPUT | MUX_MODE0) /* i2c3_sda */ | ||
40 | 0x414 (PIN_INPUT | MUX_MODE0) /* i2c3_scl */ | ||
41 | >; | ||
42 | }; | ||
43 | |||
44 | mcspi1_pins: pinmux_mcspi1_pins { | ||
45 | pinctrl-single,pins = < | ||
46 | 0x3a4 (PIN_INPUT | MUX_MODE0) /* spi2_clk */ | ||
47 | 0x3a8 (PIN_INPUT | MUX_MODE0) /* spi2_d1 */ | ||
48 | 0x3ac (PIN_INPUT | MUX_MODE0) /* spi2_d0 */ | ||
49 | 0x3b0 (PIN_INPUT_SLEW | MUX_MODE0) /* spi2_cs0 */ | ||
50 | 0x3b4 (PIN_INPUT_SLEW | MUX_MODE0) /* spi2_cs1 */ | ||
51 | 0x3b8 (PIN_INPUT_SLEW | MUX_MODE6) /* spi2_cs2 */ | ||
52 | 0x3bc (PIN_INPUT_SLEW | MUX_MODE6) /* spi2_cs3 */ | ||
53 | >; | ||
54 | }; | ||
55 | |||
56 | mcspi2_pins: pinmux_mcspi2_pins { | ||
57 | pinctrl-single,pins = < | ||
58 | 0x3c0 (PIN_INPUT | MUX_MODE0) /* spi2_sclk */ | ||
59 | 0x3c4 (PIN_INPUT_SLEW | MUX_MODE0) /* spi2_d1 */ | ||
60 | 0x3c8 (PIN_INPUT_SLEW | MUX_MODE0) /* spi2_d1 */ | ||
61 | 0x3cc (PIN_INPUT_SLEW | MUX_MODE0) /* spi2_cs0 */ | ||
62 | >; | ||
63 | }; | ||
64 | |||
65 | uart1_pins: pinmux_uart1_pins { | ||
66 | pinctrl-single,pins = < | ||
67 | 0x3e0 (PIN_INPUT_SLEW | MUX_MODE0) /* uart1_rxd */ | ||
68 | 0x3e4 (PIN_INPUT_SLEW | MUX_MODE0) /* uart1_txd */ | ||
69 | 0x3e8 (PIN_INPUT | MUX_MODE3) /* uart1_ctsn */ | ||
70 | 0x3ec (PIN_INPUT | MUX_MODE3) /* uart1_rtsn */ | ||
71 | >; | ||
72 | }; | ||
73 | |||
74 | uart2_pins: pinmux_uart2_pins { | ||
75 | pinctrl-single,pins = < | ||
76 | 0x3f0 (PIN_INPUT | MUX_MODE0) /* uart2_rxd */ | ||
77 | 0x3f4 (PIN_INPUT | MUX_MODE0) /* uart2_txd */ | ||
78 | 0x3f8 (PIN_INPUT | MUX_MODE0) /* uart2_ctsn */ | ||
79 | 0x3fc (PIN_INPUT | MUX_MODE0) /* uart2_rtsn */ | ||
80 | >; | ||
81 | }; | ||
82 | |||
83 | uart3_pins: pinmux_uart3_pins { | ||
84 | pinctrl-single,pins = < | ||
85 | 0x248 (PIN_INPUT_SLEW | MUX_MODE0) /* uart3_rxd */ | ||
86 | 0x24c (PIN_INPUT_SLEW | MUX_MODE0) /* uart3_txd */ | ||
87 | >; | ||
88 | }; | ||
89 | }; | ||
90 | |||
91 | &i2c1 { | ||
92 | status = "okay"; | ||
93 | pinctrl-names = "default"; | ||
94 | pinctrl-0 = <&i2c1_pins>; | ||
95 | clock-frequency = <400000>; | ||
96 | }; | ||
97 | |||
98 | &i2c2 { | ||
99 | status = "okay"; | ||
100 | pinctrl-names = "default"; | ||
101 | pinctrl-0 = <&i2c2_pins>; | ||
102 | clock-frequency = <400000>; | ||
103 | }; | ||
104 | |||
105 | &i2c3 { | ||
106 | status = "okay"; | ||
107 | pinctrl-names = "default"; | ||
108 | pinctrl-0 = <&i2c3_pins>; | ||
109 | clock-frequency = <3400000>; | ||
110 | }; | ||
111 | |||
112 | &mcspi1 { | ||
113 | status = "okay"; | ||
114 | pinctrl-names = "default"; | ||
115 | pinctrl-0 = <&mcspi1_pins>; | ||
116 | }; | ||
117 | |||
118 | &mcspi2 { | ||
119 | status = "okay"; | ||
120 | pinctrl-names = "default"; | ||
121 | pinctrl-0 = <&mcspi2_pins>; | ||
122 | }; | ||
123 | |||
124 | &uart1 { | ||
125 | status = "okay"; | ||
126 | pinctrl-names = "default"; | ||
127 | pinctrl-0 = <&uart1_pins>; | ||
128 | }; | ||
129 | |||
130 | &uart2 { | ||
131 | status = "okay"; | ||
132 | pinctrl-names = "default"; | ||
133 | pinctrl-0 = <&uart2_pins>; | ||
134 | }; | ||
135 | |||
136 | &uart3 { | ||
137 | status = "okay"; | ||
138 | pinctrl-names = "default"; | ||
139 | pinctrl-0 = <&uart3_pins>; | ||
140 | }; | ||
diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi new file mode 100644 index 000000000000..c01ef769761f --- /dev/null +++ b/arch/arm/boot/dts/dra7.dtsi | |||
@@ -0,0 +1,575 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License version 2 as | ||
6 | * published by the Free Software Foundation. | ||
7 | * Based on "omap4.dtsi" | ||
8 | */ | ||
9 | |||
10 | #include <dt-bindings/interrupt-controller/arm-gic.h> | ||
11 | #include <dt-bindings/pinctrl/dra.h> | ||
12 | |||
13 | #include "skeleton.dtsi" | ||
14 | |||
15 | / { | ||
16 | #address-cells = <1>; | ||
17 | #size-cells = <1>; | ||
18 | |||
19 | compatible = "ti,dra7xx"; | ||
20 | interrupt-parent = <&gic>; | ||
21 | |||
22 | aliases { | ||
23 | serial0 = &uart1; | ||
24 | serial1 = &uart2; | ||
25 | serial2 = &uart3; | ||
26 | serial3 = &uart4; | ||
27 | serial4 = &uart5; | ||
28 | serial5 = &uart6; | ||
29 | }; | ||
30 | |||
31 | cpus { | ||
32 | #address-cells = <1>; | ||
33 | #size-cells = <0>; | ||
34 | |||
35 | cpu@0 { | ||
36 | device_type = "cpu"; | ||
37 | compatible = "arm,cortex-a15"; | ||
38 | reg = <0>; | ||
39 | }; | ||
40 | cpu@1 { | ||
41 | device_type = "cpu"; | ||
42 | compatible = "arm,cortex-a15"; | ||
43 | reg = <1>; | ||
44 | }; | ||
45 | }; | ||
46 | |||
47 | timer { | ||
48 | compatible = "arm,armv7-timer"; | ||
49 | interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>, | ||
50 | <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>, | ||
51 | <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>, | ||
52 | <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>; | ||
53 | }; | ||
54 | |||
55 | gic: interrupt-controller@48211000 { | ||
56 | compatible = "arm,cortex-a15-gic"; | ||
57 | interrupt-controller; | ||
58 | #interrupt-cells = <3>; | ||
59 | reg = <0x48211000 0x1000>, | ||
60 | <0x48212000 0x1000>, | ||
61 | <0x48214000 0x2000>, | ||
62 | <0x48216000 0x2000>; | ||
63 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>; | ||
64 | }; | ||
65 | |||
66 | /* | ||
67 | * The soc node represents the soc top level view. It is uses for IPs | ||
68 | * that are not memory mapped in the MPU view or for the MPU itself. | ||
69 | */ | ||
70 | soc { | ||
71 | compatible = "ti,omap-infra"; | ||
72 | mpu { | ||
73 | compatible = "ti,omap5-mpu"; | ||
74 | ti,hwmods = "mpu"; | ||
75 | }; | ||
76 | }; | ||
77 | |||
78 | /* | ||
79 | * XXX: Use a flat representation of the SOC interconnect. | ||
80 | * The real OMAP interconnect network is quite complex. | ||
81 | * Since that will not bring real advantage to represent that in DT for | ||
82 | * the moment, just use a fake OCP bus entry to represent the whole bus | ||
83 | * hierarchy. | ||
84 | */ | ||
85 | ocp { | ||
86 | compatible = "ti,omap4-l3-noc", "simple-bus"; | ||
87 | #address-cells = <1>; | ||
88 | #size-cells = <1>; | ||
89 | ranges; | ||
90 | ti,hwmods = "l3_main_1", "l3_main_2"; | ||
91 | reg = <0x44000000 0x2000>, | ||
92 | <0x44800000 0x3000>; | ||
93 | interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>, | ||
94 | <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; | ||
95 | |||
96 | counter32k: counter@4ae04000 { | ||
97 | compatible = "ti,omap-counter32k"; | ||
98 | reg = <0x4ae04000 0x40>; | ||
99 | ti,hwmods = "counter_32k"; | ||
100 | }; | ||
101 | |||
102 | dra7_pmx_core: pinmux@4a003400 { | ||
103 | compatible = "pinctrl-single"; | ||
104 | reg = <0x4a003400 0x0464>; | ||
105 | #address-cells = <1>; | ||
106 | #size-cells = <0>; | ||
107 | pinctrl-single,register-width = <32>; | ||
108 | pinctrl-single,function-mask = <0x3fffffff>; | ||
109 | }; | ||
110 | |||
111 | sdma: dma-controller@4a056000 { | ||
112 | compatible = "ti,omap4430-sdma"; | ||
113 | reg = <0x4a056000 0x1000>; | ||
114 | interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>, | ||
115 | <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>, | ||
116 | <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>, | ||
117 | <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>; | ||
118 | #dma-cells = <1>; | ||
119 | #dma-channels = <32>; | ||
120 | #dma-requests = <127>; | ||
121 | }; | ||
122 | |||
123 | gpio1: gpio@4ae10000 { | ||
124 | compatible = "ti,omap4-gpio"; | ||
125 | reg = <0x4ae10000 0x200>; | ||
126 | interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; | ||
127 | ti,hwmods = "gpio1"; | ||
128 | gpio-controller; | ||
129 | #gpio-cells = <2>; | ||
130 | interrupt-controller; | ||
131 | #interrupt-cells = <1>; | ||
132 | }; | ||
133 | |||
134 | gpio2: gpio@48055000 { | ||
135 | compatible = "ti,omap4-gpio"; | ||
136 | reg = <0x48055000 0x200>; | ||
137 | interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; | ||
138 | ti,hwmods = "gpio2"; | ||
139 | gpio-controller; | ||
140 | #gpio-cells = <2>; | ||
141 | interrupt-controller; | ||
142 | #interrupt-cells = <1>; | ||
143 | }; | ||
144 | |||
145 | gpio3: gpio@48057000 { | ||
146 | compatible = "ti,omap4-gpio"; | ||
147 | reg = <0x48057000 0x200>; | ||
148 | interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; | ||
149 | ti,hwmods = "gpio3"; | ||
150 | gpio-controller; | ||
151 | #gpio-cells = <2>; | ||
152 | interrupt-controller; | ||
153 | #interrupt-cells = <1>; | ||
154 | }; | ||
155 | |||
156 | gpio4: gpio@48059000 { | ||
157 | compatible = "ti,omap4-gpio"; | ||
158 | reg = <0x48059000 0x200>; | ||
159 | interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; | ||
160 | ti,hwmods = "gpio4"; | ||
161 | gpio-controller; | ||
162 | #gpio-cells = <2>; | ||
163 | interrupt-controller; | ||
164 | #interrupt-cells = <1>; | ||
165 | }; | ||
166 | |||
167 | gpio5: gpio@4805b000 { | ||
168 | compatible = "ti,omap4-gpio"; | ||
169 | reg = <0x4805b000 0x200>; | ||
170 | interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; | ||
171 | ti,hwmods = "gpio5"; | ||
172 | gpio-controller; | ||
173 | #gpio-cells = <2>; | ||
174 | interrupt-controller; | ||
175 | #interrupt-cells = <1>; | ||
176 | }; | ||
177 | |||
178 | gpio6: gpio@4805d000 { | ||
179 | compatible = "ti,omap4-gpio"; | ||
180 | reg = <0x4805d000 0x200>; | ||
181 | interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>; | ||
182 | ti,hwmods = "gpio6"; | ||
183 | gpio-controller; | ||
184 | #gpio-cells = <2>; | ||
185 | interrupt-controller; | ||
186 | #interrupt-cells = <1>; | ||
187 | }; | ||
188 | |||
189 | gpio7: gpio@48051000 { | ||
190 | compatible = "ti,omap4-gpio"; | ||
191 | reg = <0x48051000 0x200>; | ||
192 | interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; | ||
193 | ti,hwmods = "gpio7"; | ||
194 | gpio-controller; | ||
195 | #gpio-cells = <2>; | ||
196 | interrupt-controller; | ||
197 | #interrupt-cells = <1>; | ||
198 | }; | ||
199 | |||
200 | gpio8: gpio@48053000 { | ||
201 | compatible = "ti,omap4-gpio"; | ||
202 | reg = <0x48053000 0x200>; | ||
203 | interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>; | ||
204 | ti,hwmods = "gpio8"; | ||
205 | gpio-controller; | ||
206 | #gpio-cells = <2>; | ||
207 | interrupt-controller; | ||
208 | #interrupt-cells = <1>; | ||
209 | }; | ||
210 | |||
211 | uart1: serial@4806a000 { | ||
212 | compatible = "ti,omap4-uart"; | ||
213 | reg = <0x4806a000 0x100>; | ||
214 | interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; | ||
215 | ti,hwmods = "uart1"; | ||
216 | clock-frequency = <48000000>; | ||
217 | status = "disabled"; | ||
218 | }; | ||
219 | |||
220 | uart2: serial@4806c000 { | ||
221 | compatible = "ti,omap4-uart"; | ||
222 | reg = <0x4806c000 0x100>; | ||
223 | interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; | ||
224 | ti,hwmods = "uart2"; | ||
225 | clock-frequency = <48000000>; | ||
226 | status = "disabled"; | ||
227 | }; | ||
228 | |||
229 | uart3: serial@48020000 { | ||
230 | compatible = "ti,omap4-uart"; | ||
231 | reg = <0x48020000 0x100>; | ||
232 | interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; | ||
233 | ti,hwmods = "uart3"; | ||
234 | clock-frequency = <48000000>; | ||
235 | status = "disabled"; | ||
236 | }; | ||
237 | |||
238 | uart4: serial@4806e000 { | ||
239 | compatible = "ti,omap4-uart"; | ||
240 | reg = <0x4806e000 0x100>; | ||
241 | interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>; | ||
242 | ti,hwmods = "uart4"; | ||
243 | clock-frequency = <48000000>; | ||
244 | status = "disabled"; | ||
245 | }; | ||
246 | |||
247 | uart5: serial@48066000 { | ||
248 | compatible = "ti,omap4-uart"; | ||
249 | reg = <0x48066000 0x100>; | ||
250 | interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; | ||
251 | ti,hwmods = "uart5"; | ||
252 | clock-frequency = <48000000>; | ||
253 | status = "disabled"; | ||
254 | }; | ||
255 | |||
256 | uart6: serial@48068000 { | ||
257 | compatible = "ti,omap4-uart"; | ||
258 | reg = <0x48068000 0x100>; | ||
259 | interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>; | ||
260 | ti,hwmods = "uart6"; | ||
261 | clock-frequency = <48000000>; | ||
262 | status = "disabled"; | ||
263 | }; | ||
264 | |||
265 | uart7: serial@48420000 { | ||
266 | compatible = "ti,omap4-uart"; | ||
267 | reg = <0x48420000 0x100>; | ||
268 | ti,hwmods = "uart7"; | ||
269 | clock-frequency = <48000000>; | ||
270 | status = "disabled"; | ||
271 | }; | ||
272 | |||
273 | uart8: serial@48422000 { | ||
274 | compatible = "ti,omap4-uart"; | ||
275 | reg = <0x48422000 0x100>; | ||
276 | ti,hwmods = "uart8"; | ||
277 | clock-frequency = <48000000>; | ||
278 | status = "disabled"; | ||
279 | }; | ||
280 | |||
281 | uart9: serial@48424000 { | ||
282 | compatible = "ti,omap4-uart"; | ||
283 | reg = <0x48424000 0x100>; | ||
284 | ti,hwmods = "uart9"; | ||
285 | clock-frequency = <48000000>; | ||
286 | status = "disabled"; | ||
287 | }; | ||
288 | |||
289 | uart10: serial@4ae2b000 { | ||
290 | compatible = "ti,omap4-uart"; | ||
291 | reg = <0x4ae2b000 0x100>; | ||
292 | ti,hwmods = "uart10"; | ||
293 | clock-frequency = <48000000>; | ||
294 | status = "disabled"; | ||
295 | }; | ||
296 | |||
297 | timer1: timer@4ae18000 { | ||
298 | compatible = "ti,omap5430-timer"; | ||
299 | reg = <0x4ae18000 0x80>; | ||
300 | interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; | ||
301 | ti,hwmods = "timer1"; | ||
302 | ti,timer-alwon; | ||
303 | }; | ||
304 | |||
305 | timer2: timer@48032000 { | ||
306 | compatible = "ti,omap5430-timer"; | ||
307 | reg = <0x48032000 0x80>; | ||
308 | interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; | ||
309 | ti,hwmods = "timer2"; | ||
310 | }; | ||
311 | |||
312 | timer3: timer@48034000 { | ||
313 | compatible = "ti,omap5430-timer"; | ||
314 | reg = <0x48034000 0x80>; | ||
315 | interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>; | ||
316 | ti,hwmods = "timer3"; | ||
317 | }; | ||
318 | |||
319 | timer4: timer@48036000 { | ||
320 | compatible = "ti,omap5430-timer"; | ||
321 | reg = <0x48036000 0x80>; | ||
322 | interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; | ||
323 | ti,hwmods = "timer4"; | ||
324 | }; | ||
325 | |||
326 | timer5: timer@48820000 { | ||
327 | compatible = "ti,omap5430-timer"; | ||
328 | reg = <0x48820000 0x80>; | ||
329 | interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>; | ||
330 | ti,hwmods = "timer5"; | ||
331 | ti,timer-dsp; | ||
332 | }; | ||
333 | |||
334 | timer6: timer@48822000 { | ||
335 | compatible = "ti,omap5430-timer"; | ||
336 | reg = <0x48822000 0x80>; | ||
337 | interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; | ||
338 | ti,hwmods = "timer6"; | ||
339 | ti,timer-dsp; | ||
340 | ti,timer-pwm; | ||
341 | }; | ||
342 | |||
343 | timer7: timer@48824000 { | ||
344 | compatible = "ti,omap5430-timer"; | ||
345 | reg = <0x48824000 0x80>; | ||
346 | interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>; | ||
347 | ti,hwmods = "timer7"; | ||
348 | ti,timer-dsp; | ||
349 | }; | ||
350 | |||
351 | timer8: timer@48826000 { | ||
352 | compatible = "ti,omap5430-timer"; | ||
353 | reg = <0x48826000 0x80>; | ||
354 | interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>; | ||
355 | ti,hwmods = "timer8"; | ||
356 | ti,timer-dsp; | ||
357 | ti,timer-pwm; | ||
358 | }; | ||
359 | |||
360 | timer9: timer@4803e000 { | ||
361 | compatible = "ti,omap5430-timer"; | ||
362 | reg = <0x4803e000 0x80>; | ||
363 | interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; | ||
364 | ti,hwmods = "timer9"; | ||
365 | }; | ||
366 | |||
367 | timer10: timer@48086000 { | ||
368 | compatible = "ti,omap5430-timer"; | ||
369 | reg = <0x48086000 0x80>; | ||
370 | interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>; | ||
371 | ti,hwmods = "timer10"; | ||
372 | }; | ||
373 | |||
374 | timer11: timer@48088000 { | ||
375 | compatible = "ti,omap5430-timer"; | ||
376 | reg = <0x48088000 0x80>; | ||
377 | interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>; | ||
378 | ti,hwmods = "timer11"; | ||
379 | ti,timer-pwm; | ||
380 | }; | ||
381 | |||
382 | timer13: timer@48828000 { | ||
383 | compatible = "ti,omap5430-timer"; | ||
384 | reg = <0x48828000 0x80>; | ||
385 | ti,hwmods = "timer13"; | ||
386 | status = "disabled"; | ||
387 | }; | ||
388 | |||
389 | timer14: timer@4882a000 { | ||
390 | compatible = "ti,omap5430-timer"; | ||
391 | reg = <0x4882a000 0x80>; | ||
392 | ti,hwmods = "timer14"; | ||
393 | status = "disabled"; | ||
394 | }; | ||
395 | |||
396 | timer15: timer@4882c000 { | ||
397 | compatible = "ti,omap5430-timer"; | ||
398 | reg = <0x4882c000 0x80>; | ||
399 | ti,hwmods = "timer15"; | ||
400 | status = "disabled"; | ||
401 | }; | ||
402 | |||
403 | timer16: timer@4882e000 { | ||
404 | compatible = "ti,omap5430-timer"; | ||
405 | reg = <0x4882e000 0x80>; | ||
406 | ti,hwmods = "timer16"; | ||
407 | status = "disabled"; | ||
408 | }; | ||
409 | |||
410 | wdt2: wdt@4ae14000 { | ||
411 | compatible = "ti,omap4-wdt"; | ||
412 | reg = <0x4ae14000 0x80>; | ||
413 | interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; | ||
414 | ti,hwmods = "wd_timer2"; | ||
415 | }; | ||
416 | |||
417 | i2c1: i2c@48070000 { | ||
418 | compatible = "ti,omap4-i2c"; | ||
419 | reg = <0x48070000 0x100>; | ||
420 | interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>; | ||
421 | #address-cells = <1>; | ||
422 | #size-cells = <0>; | ||
423 | ti,hwmods = "i2c1"; | ||
424 | status = "disabled"; | ||
425 | }; | ||
426 | |||
427 | i2c2: i2c@48072000 { | ||
428 | compatible = "ti,omap4-i2c"; | ||
429 | reg = <0x48072000 0x100>; | ||
430 | interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>; | ||
431 | #address-cells = <1>; | ||
432 | #size-cells = <0>; | ||
433 | ti,hwmods = "i2c2"; | ||
434 | status = "disabled"; | ||
435 | }; | ||
436 | |||
437 | i2c3: i2c@48060000 { | ||
438 | compatible = "ti,omap4-i2c"; | ||
439 | reg = <0x48060000 0x100>; | ||
440 | interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>; | ||
441 | #address-cells = <1>; | ||
442 | #size-cells = <0>; | ||
443 | ti,hwmods = "i2c3"; | ||
444 | status = "disabled"; | ||
445 | }; | ||
446 | |||
447 | i2c4: i2c@4807a000 { | ||
448 | compatible = "ti,omap4-i2c"; | ||
449 | reg = <0x4807a000 0x100>; | ||
450 | interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; | ||
451 | #address-cells = <1>; | ||
452 | #size-cells = <0>; | ||
453 | ti,hwmods = "i2c4"; | ||
454 | status = "disabled"; | ||
455 | }; | ||
456 | |||
457 | i2c5: i2c@4807c000 { | ||
458 | compatible = "ti,omap4-i2c"; | ||
459 | reg = <0x4807c000 0x100>; | ||
460 | interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; | ||
461 | #address-cells = <1>; | ||
462 | #size-cells = <0>; | ||
463 | ti,hwmods = "i2c5"; | ||
464 | status = "disabled"; | ||
465 | }; | ||
466 | |||
467 | mmc1: mmc@4809c000 { | ||
468 | compatible = "ti,omap4-hsmmc"; | ||
469 | reg = <0x4809c000 0x400>; | ||
470 | interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; | ||
471 | ti,hwmods = "mmc1"; | ||
472 | ti,dual-volt; | ||
473 | ti,needs-special-reset; | ||
474 | dmas = <&sdma 61>, <&sdma 62>; | ||
475 | dma-names = "tx", "rx"; | ||
476 | status = "disabled"; | ||
477 | }; | ||
478 | |||
479 | mmc2: mmc@480b4000 { | ||
480 | compatible = "ti,omap4-hsmmc"; | ||
481 | reg = <0x480b4000 0x400>; | ||
482 | interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; | ||
483 | ti,hwmods = "mmc2"; | ||
484 | ti,needs-special-reset; | ||
485 | dmas = <&sdma 47>, <&sdma 48>; | ||
486 | dma-names = "tx", "rx"; | ||
487 | status = "disabled"; | ||
488 | }; | ||
489 | |||
490 | mmc3: mmc@480ad000 { | ||
491 | compatible = "ti,omap4-hsmmc"; | ||
492 | reg = <0x480ad000 0x400>; | ||
493 | interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>; | ||
494 | ti,hwmods = "mmc3"; | ||
495 | ti,needs-special-reset; | ||
496 | dmas = <&sdma 77>, <&sdma 78>; | ||
497 | dma-names = "tx", "rx"; | ||
498 | status = "disabled"; | ||
499 | }; | ||
500 | |||
501 | mmc4: mmc@480d1000 { | ||
502 | compatible = "ti,omap4-hsmmc"; | ||
503 | reg = <0x480d1000 0x400>; | ||
504 | interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; | ||
505 | ti,hwmods = "mmc4"; | ||
506 | ti,needs-special-reset; | ||
507 | dmas = <&sdma 57>, <&sdma 58>; | ||
508 | dma-names = "tx", "rx"; | ||
509 | status = "disabled"; | ||
510 | }; | ||
511 | |||
512 | mcspi1: spi@48098000 { | ||
513 | compatible = "ti,omap4-mcspi"; | ||
514 | reg = <0x48098000 0x200>; | ||
515 | interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>; | ||
516 | #address-cells = <1>; | ||
517 | #size-cells = <0>; | ||
518 | ti,hwmods = "mcspi1"; | ||
519 | ti,spi-num-cs = <4>; | ||
520 | dmas = <&sdma 35>, | ||
521 | <&sdma 36>, | ||
522 | <&sdma 37>, | ||
523 | <&sdma 38>, | ||
524 | <&sdma 39>, | ||
525 | <&sdma 40>, | ||
526 | <&sdma 41>, | ||
527 | <&sdma 42>; | ||
528 | dma-names = "tx0", "rx0", "tx1", "rx1", | ||
529 | "tx2", "rx2", "tx3", "rx3"; | ||
530 | status = "disabled"; | ||
531 | }; | ||
532 | |||
533 | mcspi2: spi@4809a000 { | ||
534 | compatible = "ti,omap4-mcspi"; | ||
535 | reg = <0x4809a000 0x200>; | ||
536 | interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>; | ||
537 | #address-cells = <1>; | ||
538 | #size-cells = <0>; | ||
539 | ti,hwmods = "mcspi2"; | ||
540 | ti,spi-num-cs = <2>; | ||
541 | dmas = <&sdma 43>, | ||
542 | <&sdma 44>, | ||
543 | <&sdma 45>, | ||
544 | <&sdma 46>; | ||
545 | dma-names = "tx0", "rx0", "tx1", "rx1"; | ||
546 | status = "disabled"; | ||
547 | }; | ||
548 | |||
549 | mcspi3: spi@480b8000 { | ||
550 | compatible = "ti,omap4-mcspi"; | ||
551 | reg = <0x480b8000 0x200>; | ||
552 | interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>; | ||
553 | #address-cells = <1>; | ||
554 | #size-cells = <0>; | ||
555 | ti,hwmods = "mcspi3"; | ||
556 | ti,spi-num-cs = <2>; | ||
557 | dmas = <&sdma 15>, <&sdma 16>; | ||
558 | dma-names = "tx0", "rx0"; | ||
559 | status = "disabled"; | ||
560 | }; | ||
561 | |||
562 | mcspi4: spi@480ba000 { | ||
563 | compatible = "ti,omap4-mcspi"; | ||
564 | reg = <0x480ba000 0x200>; | ||
565 | interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>; | ||
566 | #address-cells = <1>; | ||
567 | #size-cells = <0>; | ||
568 | ti,hwmods = "mcspi4"; | ||
569 | ti,spi-num-cs = <1>; | ||
570 | dmas = <&sdma 70>, <&sdma 71>; | ||
571 | dma-names = "tx0", "rx0"; | ||
572 | status = "disabled"; | ||
573 | }; | ||
574 | }; | ||
575 | }; | ||
diff --git a/include/dt-bindings/pinctrl/dra.h b/include/dt-bindings/pinctrl/dra.h new file mode 100644 index 000000000000..002a2855c046 --- /dev/null +++ b/include/dt-bindings/pinctrl/dra.h | |||
@@ -0,0 +1,50 @@ | |||
1 | /* | ||
2 | * This header provides constants for DRA pinctrl bindings. | ||
3 | * | ||
4 | * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ | ||
5 | * Author: Rajendra Nayak <rnayak@ti.com> | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License version 2 as | ||
9 | * published by the Free Software Foundation. | ||
10 | */ | ||
11 | |||
12 | #ifndef _DT_BINDINGS_PINCTRL_DRA_H | ||
13 | #define _DT_BINDINGS_PINCTRL_DRA_H | ||
14 | |||
15 | /* DRA7 mux mode options for each pin. See TRM for options */ | ||
16 | #define MUX_MODE0 0x0 | ||
17 | #define MUX_MODE1 0x1 | ||
18 | #define MUX_MODE2 0x2 | ||
19 | #define MUX_MODE3 0x3 | ||
20 | #define MUX_MODE4 0x4 | ||
21 | #define MUX_MODE5 0x5 | ||
22 | #define MUX_MODE6 0x6 | ||
23 | #define MUX_MODE7 0x7 | ||
24 | #define MUX_MODE8 0x8 | ||
25 | #define MUX_MODE9 0x9 | ||
26 | #define MUX_MODE10 0xa | ||
27 | #define MUX_MODE11 0xb | ||
28 | #define MUX_MODE12 0xc | ||
29 | #define MUX_MODE13 0xd | ||
30 | #define MUX_MODE14 0xe | ||
31 | #define MUX_MODE15 0xf | ||
32 | |||
33 | #define PULL_ENA (1 << 16) | ||
34 | #define PULL_UP (1 << 17) | ||
35 | #define INPUT_EN (1 << 18) | ||
36 | #define SLEWCONTROL (1 << 19) | ||
37 | #define WAKEUP_EN (1 << 24) | ||
38 | #define WAKEUP_EVENT (1 << 25) | ||
39 | |||
40 | /* Active pin states */ | ||
41 | #define PIN_OUTPUT 0 | ||
42 | #define PIN_OUTPUT_PULLUP (PIN_OUTPUT | PULL_ENA | PULL_UP) | ||
43 | #define PIN_OUTPUT_PULLDOWN (PIN_OUTPUT | PULL_ENA) | ||
44 | #define PIN_INPUT INPUT_EN | ||
45 | #define PIN_INPUT_SLEW (INPUT_EN | SLEWCONTROL) | ||
46 | #define PIN_INPUT_PULLUP (PULL_ENA | INPUT_EN | PULL_UP) | ||
47 | #define PIN_INPUT_PULLDOWN (PULL_ENA | INPUT_EN) | ||
48 | |||
49 | #endif | ||
50 | |||