Commit | Line | Data |
---|---|---|
687c2767 TL |
1 | /* |
2 | * This program is free software; you can redistribute it and/or modify | |
3 | * it under the terms of the GNU General Public License version 2 as | |
4 | * published by the Free Software Foundation. | |
5 | */ | |
6 | ||
7 | #include <dt-bindings/input/input.h> | |
8 | ||
9 | / { | |
10 | cpus { | |
11 | cpu@0 { | |
12 | cpu0-supply = <&vcc>; | |
13 | }; | |
14 | }; | |
15 | ||
16 | leds { | |
17 | compatible = "gpio-leds"; | |
18 | user0 { | |
19 | label = "user0"; | |
20 | gpios = <&twl_gpio 18 GPIO_ACTIVE_LOW>; /* LEDA */ | |
21 | linux,default-trigger = "none"; | |
22 | }; | |
23 | }; | |
24 | ||
25 | wl12xx_vmmc: wl12xx_vmmc { | |
26 | compatible = "regulator-fixed"; | |
27 | regulator-name = "vwl1271"; | |
28 | regulator-min-microvolt = <1800000>; | |
29 | regulator-max-microvolt = <1800000>; | |
30 | gpio = <&gpio5 29 0>; /* gpio157 */ | |
31 | startup-delay-us = <70000>; | |
32 | enable-active-high; | |
33 | vin-supply = <&vmmc2>; | |
34 | }; | |
35 | }; | |
36 | ||
37 | &gpmc { | |
38 | ranges = <0 0 0x00000000 0x1000000>; /* CS0: 16MB for NAND */ | |
39 | ||
40 | nand@0,0 { | |
41 | linux,mtd-name = "micron,mt29f4g16abbda3w"; | |
42 | reg = <0 0 4>; /* CS0, offset 0, IO size 4 */ | |
43 | nand-bus-width = <16>; | |
44 | ti,nand-ecc-opt = "bch8"; | |
45 | gpmc,sync-clk-ps = <0>; | |
46 | gpmc,cs-on-ns = <0>; | |
47 | gpmc,cs-rd-off-ns = <44>; | |
48 | gpmc,cs-wr-off-ns = <44>; | |
49 | gpmc,adv-on-ns = <6>; | |
50 | gpmc,adv-rd-off-ns = <34>; | |
51 | gpmc,adv-wr-off-ns = <44>; | |
52 | gpmc,we-off-ns = <40>; | |
53 | gpmc,oe-off-ns = <54>; | |
54 | gpmc,access-ns = <64>; | |
55 | gpmc,rd-cycle-ns = <82>; | |
56 | gpmc,wr-cycle-ns = <82>; | |
57 | gpmc,wr-access-ns = <40>; | |
58 | gpmc,wr-data-mux-bus-ns = <0>; | |
59 | gpmc,device-width = <2>; | |
60 | #address-cells = <1>; | |
61 | #size-cells = <1>; | |
62 | ||
63 | /* u-boot uses mtdparts=omap2-nand.0:512k(x-loader),1920k(u-boot),128k(u-boot-env),4m(kernel),-(fs) */ | |
64 | ||
65 | x-loader@0 { | |
66 | label = "x-loader"; | |
67 | reg = <0 0x80000>; | |
68 | }; | |
69 | ||
70 | bootloaders@80000 { | |
71 | label = "u-boot"; | |
72 | reg = <0x80000 0x1e0000>; | |
73 | }; | |
74 | ||
75 | bootloaders_env@260000 { | |
76 | label = "u-boot-env"; | |
77 | reg = <0x260000 0x20000>; | |
78 | }; | |
79 | ||
80 | kernel@280000 { | |
81 | label = "kernel"; | |
82 | reg = <0x280000 0x400000>; | |
83 | }; | |
84 | ||
85 | filesystem@680000 { | |
86 | label = "fs"; | |
87 | reg = <0x680000 0>; /* 0 = MTDPART_SIZ_FULL */ | |
88 | }; | |
89 | }; | |
90 | }; | |
91 | ||
92 | &i2c1 { | |
93 | clock-frequency = <2600000>; | |
94 | ||
95 | twl: twl@48 { | |
96 | reg = <0x48>; | |
97 | interrupts = <7>; /* SYS_NIRQ cascaded to intc */ | |
98 | interrupt-parent = <&intc>; | |
f81902e4 AF |
99 | twl_audio: audio { |
100 | compatible = "ti,twl4030-audio"; | |
101 | codec { | |
102 | }; | |
103 | }; | |
687c2767 TL |
104 | }; |
105 | }; | |
106 | ||
6b3d42c6 AF |
107 | &i2c2 { |
108 | clock-frequency = <400000>; | |
109 | }; | |
110 | ||
111 | &i2c3 { | |
112 | clock-frequency = <400000>; | |
113 | }; | |
114 | ||
687c2767 TL |
115 | /* |
116 | * Only found on the wireless SOM. For the SOM without wireless, the pins for | |
117 | * MMC3 can be routed with jumpers to the second MMC slot on the devkit and | |
118 | * gpio157 is not connected. So this should be OK to keep common for now, | |
119 | * probably device tree overlays is the way to go with the various SOM and | |
120 | * jumpering combinations for the long run. | |
121 | */ | |
122 | &mmc3 { | |
123 | interrupts-extended = <&intc 94 &omap3_pmx_core2 0x46>; | |
124 | pinctrl-0 = <&mmc3_pins &mmc3_core2_pins>; | |
125 | pinctrl-names = "default"; | |
126 | vmmc-supply = <&wl12xx_vmmc>; | |
127 | non-removable; | |
128 | bus-width = <4>; | |
129 | cap-power-off-card; | |
130 | #address-cells = <1>; | |
131 | #size-cells = <0>; | |
132 | wlcore: wlcore@2 { | |
133 | compatible = "ti,wl1283"; | |
134 | reg = <2>; | |
135 | interrupt-parent = <&gpio5>; | |
136 | interrupts = <24 IRQ_TYPE_LEVEL_HIGH>; /* gpio 152 */ | |
137 | ref-clock-frequency = <26000000>; | |
0ea24daa | 138 | tcxo-clock-frequency = <26000000>; |
687c2767 TL |
139 | }; |
140 | }; | |
141 | ||
142 | &omap3_pmx_core { | |
143 | mmc3_pins: pinmux_mm3_pins { | |
144 | pinctrl-single,pins = < | |
145 | OMAP3_CORE1_IOPAD(0x2164, PIN_INPUT_PULLUP | MUX_MODE3) /* sdmmc2_dat4.sdmmc3_dat0 */ | |
146 | OMAP3_CORE1_IOPAD(0x2166, PIN_INPUT_PULLUP | MUX_MODE3) /* sdmmc2_dat5.sdmmc3_dat1 */ | |
147 | OMAP3_CORE1_IOPAD(0x2168, PIN_INPUT_PULLUP | MUX_MODE3) /* sdmmc2_dat6.sdmmc3_dat2 */ | |
148 | OMAP3_CORE1_IOPAD(0x216a, PIN_INPUT_PULLUP | MUX_MODE3) /* sdmmc2_dat6.sdmmc3_dat3 */ | |
149 | OMAP3_CORE1_IOPAD(0x2184, PIN_INPUT_PULLUP | MUX_MODE4) /* mcbsp4_clkx.gpio_152 */ | |
150 | OMAP3_CORE1_IOPAD(0x218e, PIN_OUTPUT | MUX_MODE4) /* mcbsp1_fsr.gpio_157 */ | |
151 | >; | |
152 | }; | |
f81902e4 AF |
153 | mcbsp2_pins: pinmux_mcbsp2_pins { |
154 | pinctrl-single,pins = < | |
155 | OMAP3_CORE1_IOPAD(0x213c, PIN_INPUT | MUX_MODE0) /* mcbsp2_fsx */ | |
156 | OMAP3_CORE1_IOPAD(0x213e, PIN_INPUT | MUX_MODE0) /* mcbsp2_clkx */ | |
157 | OMAP3_CORE1_IOPAD(0x2140, PIN_INPUT | MUX_MODE0) /* mcbsp2_dr */ | |
158 | OMAP3_CORE1_IOPAD(0x2142, PIN_OUTPUT | MUX_MODE0) /* mcbsp2_dx */ | |
159 | >; | |
160 | }; | |
9ff502f5 AF |
161 | uart2_pins: pinmux_uart2_pins { |
162 | pinctrl-single,pins = < | |
163 | OMAP3_CORE1_IOPAD(0x2174, PIN_INPUT | MUX_MODE0) /* uart2_cts.uart2_cts */ | |
164 | OMAP3_CORE1_IOPAD(0x2176, PIN_OUTPUT | MUX_MODE0) /* uart2_rts .uart2_rts*/ | |
165 | OMAP3_CORE1_IOPAD(0x2178, PIN_OUTPUT | MUX_MODE0) /* uart2_tx.uart2_tx */ | |
166 | OMAP3_CORE1_IOPAD(0x217a, PIN_INPUT | MUX_MODE0) /* uart2_rx.uart2_rx */ | |
167 | OMAP3_CORE1_IOPAD(0x2198, PIN_OUTPUT | MUX_MODE4) /* GPIO_162,BT_EN */ | |
168 | >; | |
169 | }; | |
170 | }; | |
171 | ||
172 | &uart2 { | |
173 | interrupts-extended = <&intc 73 &omap3_pmx_core OMAP3_UART2_RX>; | |
174 | pinctrl-names = "default"; | |
175 | pinctrl-0 = <&uart2_pins>; | |
687c2767 TL |
176 | }; |
177 | ||
178 | &omap3_pmx_core2 { | |
179 | mmc3_core2_pins: pinmux_mmc3_core2_pins { | |
180 | pinctrl-single,pins = < | |
181 | OMAP3630_CORE2_IOPAD(0x25d8, PIN_INPUT_PULLUP | MUX_MODE2) /* etk_clk.sdmmc3_clk */ | |
182 | OMAP3630_CORE2_IOPAD(0x25da, PIN_INPUT_PULLUP | MUX_MODE2) /* etk_ctl.sdmmc3_cmd */ | |
183 | >; | |
184 | }; | |
185 | }; | |
186 | ||
187 | #include "twl4030.dtsi" | |
188 | #include "twl4030_omap3.dtsi" | |
189 | ||
190 | &twl { | |
191 | twl_power: power { | |
192 | compatible = "ti,twl4030-power-idle-osc-off", "ti,twl4030-power-idle"; | |
193 | ti,use_poweroff; | |
194 | }; | |
195 | }; | |
196 | ||
197 | &twl_gpio { | |
198 | ti,use-leds; | |
199 | }; |