Commit | Line | Data |
---|---|---|
4b79197c NM |
1 | /* |
2 | * Copyright (C) 2011-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 | */ | |
98ef7957 | 8 | #include "elpida_ecb240abacn.dtsi" |
4b79197c NM |
9 | |
10 | / { | |
11 | model = "TI OMAP4 PandaBoard"; | |
12 | compatible = "ti,omap4-panda", "ti,omap4430", "ti,omap4"; | |
13 | ||
14 | memory { | |
15 | device_type = "memory"; | |
16 | reg = <0x80000000 0x40000000>; /* 1 GB */ | |
17 | }; | |
18 | ||
19 | leds { | |
20 | compatible = "gpio-leds"; | |
21 | heartbeat { | |
22 | label = "pandaboard::status1"; | |
6d624eab | 23 | gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; |
4b79197c NM |
24 | linux,default-trigger = "heartbeat"; |
25 | }; | |
26 | ||
27 | mmc { | |
28 | label = "pandaboard::status2"; | |
6d624eab | 29 | gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; |
4b79197c NM |
30 | linux,default-trigger = "mmc0"; |
31 | }; | |
32 | }; | |
33 | ||
34 | sound: sound { | |
35 | compatible = "ti,abe-twl6040"; | |
36 | ti,model = "PandaBoard"; | |
37 | ||
38 | ti,mclk-freq = <38400000>; | |
39 | ||
40 | ti,mcpdm = <&mcpdm>; | |
41 | ||
42 | ti,twl6040 = <&twl6040>; | |
43 | ||
44 | /* Audio routing */ | |
45 | ti,audio-routing = | |
46 | "Headset Stereophone", "HSOL", | |
47 | "Headset Stereophone", "HSOR", | |
48 | "Ext Spk", "HFL", | |
49 | "Ext Spk", "HFR", | |
50 | "Line Out", "AUXL", | |
51 | "Line Out", "AUXR", | |
52 | "HSMIC", "Headset Mic", | |
53 | "Headset Mic", "Headset Mic Bias", | |
54 | "AFML", "Line In", | |
55 | "AFMR", "Line In"; | |
56 | }; | |
57 | }; | |
58 | ||
1e68f43b KH |
59 | &omap4_pmx_wkup { |
60 | pinctrl-names = "default"; | |
61 | pinctrl-0 = < | |
62 | &twl6030_wkup_pins | |
63 | >; | |
64 | ||
65 | twl6030_wkup_pins: pinmux_twl6030_wkup_pins { | |
66 | pinctrl-single,pins = < | |
67 | 0x14 0x2 /* fref_clk0_out.sys_drm_msecure OUTPUT | MODE2 */ | |
68 | >; | |
69 | }; | |
70 | }; | |
71 | ||
4b79197c NM |
72 | &omap4_pmx_core { |
73 | pinctrl-names = "default"; | |
74 | pinctrl-0 = < | |
1e68f43b | 75 | &twl6030_pins |
4b79197c NM |
76 | &twl6040_pins |
77 | &mcpdm_pins | |
78 | &mcbsp1_pins | |
79 | &dss_hdmi_pins | |
80 | &tpd12s015_pins | |
81 | >; | |
82 | ||
1e68f43b KH |
83 | twl6030_pins: pinmux_twl6030_pins { |
84 | pinctrl-single,pins = < | |
85 | 0x15e 0x4118 /* sys_nirq1.sys_nirq1 OMAP_WAKEUP_EN | INPUT_PULLUP | MODE0 */ | |
86 | >; | |
87 | }; | |
88 | ||
4b79197c NM |
89 | twl6040_pins: pinmux_twl6040_pins { |
90 | pinctrl-single,pins = < | |
91 | 0xe0 0x3 /* hdq_sio.gpio_127 OUTPUT | MODE3 */ | |
92 | 0x160 0x100 /* sys_nirq2.sys_nirq2 INPUT | MODE0 */ | |
93 | >; | |
94 | }; | |
95 | ||
96 | mcpdm_pins: pinmux_mcpdm_pins { | |
97 | pinctrl-single,pins = < | |
98 | 0xc6 0x108 /* abe_pdm_ul_data.abe_pdm_ul_data INPUT PULLDOWN | MODE0 */ | |
99 | 0xc8 0x108 /* abe_pdm_dl_data.abe_pdm_dl_data INPUT PULLDOWN | MODE0 */ | |
100 | 0xca 0x118 /* abe_pdm_frame.abe_pdm_frame INPUT PULLUP | MODE0 */ | |
101 | 0xcc 0x108 /* abe_pdm_lb_clk.abe_pdm_lb_clk INPUT PULLDOWN | MODE0 */ | |
102 | 0xce 0x108 /* abe_clks.abe_clks INPUT PULLDOWN | MODE0 */ | |
103 | >; | |
104 | }; | |
105 | ||
106 | mcbsp1_pins: pinmux_mcbsp1_pins { | |
107 | pinctrl-single,pins = < | |
108 | 0xbe 0x100 /* abe_mcbsp1_clkx.abe_mcbsp1_clkx INPUT | MODE0 */ | |
109 | 0xc0 0x108 /* abe_mcbsp1_dr.abe_mcbsp1_dr INPUT PULLDOWN | MODE0 */ | |
110 | 0xc2 0x8 /* abe_mcbsp1_dx.abe_mcbsp1_dx OUTPUT PULLDOWN | MODE0 */ | |
111 | 0xc4 0x100 /* abe_mcbsp1_fsx.abe_mcbsp1_fsx INPUT | MODE0 */ | |
112 | >; | |
113 | }; | |
114 | ||
115 | dss_hdmi_pins: pinmux_dss_hdmi_pins { | |
116 | pinctrl-single,pins = < | |
117 | 0x5a 0x118 /* hdmi_cec.hdmi_cec INPUT PULLUP | MODE 0 */ | |
118 | 0x5c 0x118 /* hdmi_scl.hdmi_scl INPUT PULLUP | MODE 0 */ | |
119 | 0x5e 0x118 /* hdmi_sda.hdmi_sda INPUT PULLUP | MODE 0 */ | |
120 | >; | |
121 | }; | |
122 | ||
123 | tpd12s015_pins: pinmux_tpd12s015_pins { | |
124 | pinctrl-single,pins = < | |
125 | 0x22 0x3 /* gpmc_a17.gpio_41 OUTPUT | MODE3 */ | |
126 | 0x48 0x3 /* gpmc_nbe1.gpio_60 OUTPUT | MODE3 */ | |
127 | 0x58 0x10b /* hdmi_hpd.gpio_63 INPUT PULLDOWN | MODE3 */ | |
128 | >; | |
129 | }; | |
130 | ||
131 | i2c1_pins: pinmux_i2c1_pins { | |
132 | pinctrl-single,pins = < | |
133 | 0xe2 0x118 /* i2c1_scl PULLUP | INPUTENABLE | MODE0 */ | |
134 | 0xe4 0x118 /* i2c1_sda PULLUP | INPUTENABLE | MODE0 */ | |
135 | >; | |
136 | }; | |
137 | ||
138 | i2c2_pins: pinmux_i2c2_pins { | |
139 | pinctrl-single,pins = < | |
140 | 0xe6 0x118 /* i2c2_scl PULLUP | INPUTENABLE | MODE0 */ | |
141 | 0xe8 0x118 /* i2c2_sda PULLUP | INPUTENABLE | MODE0 */ | |
142 | >; | |
143 | }; | |
144 | ||
145 | i2c3_pins: pinmux_i2c3_pins { | |
146 | pinctrl-single,pins = < | |
147 | 0xea 0x118 /* i2c3_scl PULLUP | INPUTENABLE | MODE0 */ | |
148 | 0xec 0x118 /* i2c3_sda PULLUP | INPUTENABLE | MODE0 */ | |
149 | >; | |
150 | }; | |
151 | ||
152 | i2c4_pins: pinmux_i2c4_pins { | |
153 | pinctrl-single,pins = < | |
154 | 0xee 0x118 /* i2c4_scl PULLUP | INPUTENABLE | MODE0 */ | |
155 | 0xf0 0x118 /* i2c4_sda PULLUP | INPUTENABLE | MODE0 */ | |
156 | >; | |
157 | }; | |
158 | }; | |
159 | ||
160 | &i2c1 { | |
161 | pinctrl-names = "default"; | |
162 | pinctrl-0 = <&i2c1_pins>; | |
163 | ||
164 | clock-frequency = <400000>; | |
165 | ||
166 | twl: twl@48 { | |
167 | reg = <0x48>; | |
8fea7d5a FV |
168 | /* IRQ# = 7 */ |
169 | interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_1N cascaded to gic */ | |
4b79197c NM |
170 | interrupt-parent = <&gic>; |
171 | }; | |
172 | ||
173 | twl6040: twl@4b { | |
174 | compatible = "ti,twl6040"; | |
175 | reg = <0x4b>; | |
8fea7d5a FV |
176 | /* IRQ# = 119 */ |
177 | interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; /* IRQ_SYS_2N cascaded to gic */ | |
4b79197c NM |
178 | interrupt-parent = <&gic>; |
179 | ti,audpwron-gpio = <&gpio4 31 0>; /* gpio line 127 */ | |
180 | ||
181 | vio-supply = <&v1v8>; | |
182 | v2v1-supply = <&v2v1>; | |
183 | enable-active-high; | |
184 | }; | |
185 | }; | |
186 | ||
98ef7957 | 187 | #include "twl6030.dtsi" |
4b79197c NM |
188 | |
189 | &i2c2 { | |
190 | pinctrl-names = "default"; | |
191 | pinctrl-0 = <&i2c2_pins>; | |
192 | ||
193 | clock-frequency = <400000>; | |
194 | }; | |
195 | ||
196 | &i2c3 { | |
197 | pinctrl-names = "default"; | |
198 | pinctrl-0 = <&i2c3_pins>; | |
199 | ||
200 | clock-frequency = <100000>; | |
201 | ||
202 | /* | |
203 | * Display monitor features are burnt in their EEPROM as EDID data. | |
204 | * The EEPROM is connected as I2C slave device. | |
205 | */ | |
206 | eeprom@50 { | |
207 | compatible = "ti,eeprom"; | |
208 | reg = <0x50>; | |
209 | }; | |
210 | }; | |
211 | ||
212 | &i2c4 { | |
213 | pinctrl-names = "default"; | |
214 | pinctrl-0 = <&i2c4_pins>; | |
215 | ||
216 | clock-frequency = <400000>; | |
217 | }; | |
218 | ||
219 | &mmc1 { | |
220 | vmmc-supply = <&vmmc>; | |
221 | bus-width = <8>; | |
222 | }; | |
223 | ||
224 | &mmc2 { | |
225 | status = "disabled"; | |
226 | }; | |
227 | ||
228 | &mmc3 { | |
229 | status = "disabled"; | |
230 | }; | |
231 | ||
232 | &mmc4 { | |
233 | status = "disabled"; | |
234 | }; | |
235 | ||
236 | &mmc5 { | |
237 | ti,non-removable; | |
238 | bus-width = <4>; | |
239 | }; | |
240 | ||
241 | &emif1 { | |
242 | cs1-used; | |
243 | device-handle = <&elpida_ECB240ABACN>; | |
244 | }; | |
245 | ||
246 | &emif2 { | |
247 | cs1-used; | |
248 | device-handle = <&elpida_ECB240ABACN>; | |
249 | }; | |
250 | ||
251 | &mcbsp2 { | |
252 | status = "disabled"; | |
253 | }; | |
254 | ||
255 | &mcbsp3 { | |
256 | status = "disabled"; | |
257 | }; | |
258 | ||
259 | &dmic { | |
260 | status = "disabled"; | |
261 | }; | |
262 | ||
263 | &twl_usb_comparator { | |
264 | usb-supply = <&vusb>; | |
265 | }; | |
266 | ||
267 | &usb_otg_hs { | |
268 | interface-type = <1>; | |
269 | mode = <3>; | |
270 | power = <50>; | |
271 | }; |