ARM: dts: DRA7/OMAP5: reserve carveout buffers & fix carveout size
[android-sdk/kernel-video.git] / arch / arm / boot / dts / omap5-uevm.dts
1 /*
2  * Copyright (C) 2012 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/;
10 /*
11  * Following are the carveout addresses and the sizes for ION. SMC is not reserved for now
12  * C0000000 - SDRAM+1G
13  * BFD00000 - SMC (3MB)
14  * BA300000 - ION (90MB)
15  * B4300000 - TILER SECURE (81 MB)
16  * B3400000 - TILER NONSECURE (15 MB)
17 */
18 /memreserve/ 0xba300000 0x5a00000;
19 /memreserve/ 0xb5200000 0x5100000;
20 /memreserve/ 0xb4300000 0xf00000;
22 /include/ "omap5.dtsi"
23 /include/ "samsung_k3pe0e000b.dtsi"
26 / {
27         model = "TI OMAP5 uEVM board";
28         compatible = "ti,omap5-uevm", "ti,omap5";
30         cpus {
31                 cpu@0 {
32                         cpu0-supply = <&smps123_reg>;
33                 };
34         };
36         memory {
37                 device_type = "memory";
38                 reg = <0x80000000 0x7F000000>; /* 2032 MB */
39         };
41         vmmcsd_fixed: fixedregulator-mmcsd {
42                 compatible = "regulator-fixed";
43                 regulator-name = "vmmcsd_fixed";
44                 regulator-min-microvolt = <3000000>;
45                 regulator-max-microvolt = <3000000>;
46         };
48         /* HS USB Port 2 RESET */
49         hsusb2_reset: hsusb2_reset_reg {
50                 compatible = "regulator-fixed";
51                 regulator-name = "hsusb2_reset";
52                 regulator-min-microvolt = <3300000>;
53                 regulator-max-microvolt = <3300000>;
54                 gpio = <&gpio3 16 0>;   /* gpio3_80 HUB_NRESET */
55                 startup-delay-us = <70000>;
56                 enable-active-high;
57         };
59         /* HS USB Host PHY on PORT 2 */
60         hsusb2_phy: hsusb2_phy {
61                 compatible = "usb-nop-xceiv";
62                 reset-supply = <&hsusb2_reset>;
63         };
65         /* HS USB Port 3 RESET */
66         hsusb3_reset: hsusb3_reset_reg {
67                 compatible = "regulator-fixed";
68                 regulator-name = "hsusb3_reset";
69                 regulator-min-microvolt = <3300000>;
70                 regulator-max-microvolt = <3300000>;
71                 gpio = <&gpio3 15 0>;   /* gpio3_79 ETH_NRESET */
72                 startup-delay-us = <70000>;
73                 enable-active-high;
74         };
76         /* HS USB Host PHY on PORT 3 */
77         hsusb3_phy: hsusb3_phy {
78                 compatible = "usb-nop-xceiv";
79                 reset-supply = <&hsusb3_reset>;
80         };
82         /* hsusb2_phy is clocked by FREF_CLK1 i.e. auxclk1 */
83         clock_alias {
84                 clock-name = "auxclk1_ck";
85                 clock-alias = "main_clk";
86                 device = <&hsusb2_phy>;
87                 clock-frequency = <19200000>; /* 19.2 MHz */
88         };
90         ion_config {
91                 compatible = "ti,ion-omap";
92                 ti,omap_ion_heap_secure_input_base = <0xba300000>;
93                 ti,omap_ion_heap_tiler_base = <0xb4300000>;
94                 ti,omap_ion_heap_nonsecure_tiler_base = <0xf00000>;
95                 /*90 MB*/
96                 ti,omap_ion_heap_secure_input_size = <0x5A00000>;
97                 /*96 MB*/
98                 ti,omap_ion_heap_tiler_size = <0x6000000>;
99                 /*15 MB*/
100                 ti,omap_ion_heap_nonsecure_tiler_size = <0xF00000>;
101         };
103         sound {
104                 compatible = "ti,abe-twl6040";
105                 ti,model = "PandaBoard5";
107                 ti,jack-detection = <1>;
108                 ti,mclk-freq = <19200000>;
110                 ti,mcpdm = <&mcpdm>;
111                 ti,mcbsp1 = <&mcbsp1>;
112                 ti,mcbsp2 = <&mcbsp2>;
113                 ti,aess = <&aess>;
115                 ti,twl6040 = <&twl6040>;
117                 /* Audio routing */
118                 ti,audio-routing =
119                         "Headset Stereophone", "HSOL",
120                         "Headset Stereophone", "HSOR",
121                         "Line Out", "AUXL",
122                         "Line Out", "AUXR",
123                         "HSMIC", "Headset Mic",
124                         "Headset Mic", "Headset Mic Bias",
125                         "AFML", "Line In",
126                         "AFMR", "Line In",
127                         "Headset Playback", "PDM_DL1",
128                         "PDM_UL1", "Capture",
129                         "40122000.mcbsp Playback", "BT_VX_DL",
130                         "BT_VX_UL", "40122000.mcbsp Capture",
131                         "40124000.mcbsp Playback", "MM_EXT_DL",
132                         "MM_EXT_UL", "40124000.mcbsp Capture";
133         };
135         sound_hdmi {
136                 compatible = "ti,omap-hdmi-tpd12s015-audio";
137                 ti,model = "OMAP5HDMI";
139                 ti,hdmi_audio = <&hdmi>;
140                 ti,level_shifter = <&tpd12s015>;
141         };
143         leds {
144                 compatible = "gpio-leds";
145                 led@1 {
146                         label = "omap5:blue:usr1";
147                         gpios = <&gpio5 25 0>;  /* gpio5_153 D1 LED */
148                         linux,default-trigger = "heartbeat";
149                         default-state = "off";
150                 };
151         };
152 };
154 &omap5_pmx_core {
155         pinctrl-names = "default";
156         pinctrl-0 = <
157                         &twl6040_pins
158                         &mcpdm_pins
159                         &dmic_pins
160                         &mcbsp1_pins
161                         &mcbsp2_pins
162                         &usbhost_pins
163                         &dss_hdmi_pins
164                         &tpd12s015_pins
165                         &tca6424a_pins
166                         &palmas_pins
167                         &led_gpio_pins
168         >;
170         twl6040_pins: pinmux_twl6040_pins {
171                 pinctrl-single,pins = <
172                         0x17e 0x6       /* mcspi1_somi.gpio5_141 OUTPUT | MODE6 */
173                         0x18a 0x6       /* perslimbus2_clock.gpio5_145 OUTPUT | MODE6 */
174                 >;
175         };
177         mcpdm_pins: pinmux_mcpdm_pins {
178                 pinctrl-single,pins = <
179                         0x142 0x108     /* abe_clks.abe_clks INPUT PULLDOWN | MODE0 */
180                         0x15c 0x108     /* abemcpdm_ul_data.abemcpdm_ul_data INPUT PULLDOWN | MODE0 */
181                         0x15e 0x108     /* abemcpdm_dl_data.abemcpdm_dl_data INPUT PULLDOWN | MODE0 */
182                         0x160 0x118     /* abemcpdm_frame.abemcpdm_frame INPUT PULLUP | MODE0 */
183                         0x162 0x108     /* abemcpdm_lb_clk.abemcpdm_lb_clk INPUT PULLDOWN | MODE0 */
184                 >;
185         };
187         dmic_pins: pinmux_dmic_pins {
188                 pinctrl-single,pins = <
189                         0x144 0x100     /* abedmic_din1.abedmic_din1 INPUT | MODE0 */
190                         0x146 0x100     /* abedmic_din2.abedmic_din2 INPUT | MODE0 */
191                         0x148 0x100     /* abedmic_din3.abedmic_din3 INPUT | MODE0 */
192                         0x14a 0         /* abedmic_clk1.abedmic_clk1 OUTPUT | MODE0 */
193                 >;
194         };
196         mcbsp1_pins: pinmux_mcbsp1_pins {
197                 pinctrl-single,pins = <
198                         0x14c 0x101     /* abedmic_clk2.abemcbsp1_fsx INPUT | MODE1 */
199                         0x14e 0x9       /* abedmic_clk3.abemcbsp1_dx OUTPUT PULLDOWN | MODE1 */
200                         0x150 0x101     /* abeslimbus1_clock.abemcbsp1_clkx INPUT | MODE0 */
201                         0x152 0x109     /* abeslimbus1_data.abemcbsp1_dr INPUT PULLDOWN | MODE1 */
202                 >;
203         };
205         mcbsp2_pins: pinmux_mcbsp2_pins {
206                 pinctrl-single,pins = <
207                         0x154 0x108     /* abemcbsp2_dr.abemcbsp2_dr INPUT PULLDOWN | MODE0 */
208                         0x156 0x8       /* abemcbsp2_dx.abemcbsp2_dx OUTPUT PULLDOWN | MODE0 */
209                         0x158 0x100     /* abemcbsp2_fsx.abemcbsp2_fsx INPUT | MODE0 */
210                         0x15a 0x100     /* abemcbsp2_clkx.abemcbsp2_clkx INPUT | MODE0 */
211                 >;
212         };
214         usbhost_pins: pinmux_usbhost_pins {
215                 pinctrl-single,pins = <
216                         0x84 0x100      /* usbb2_hsic_strobe INPUT | MODE 0 */
217                         0x86 0x100      /* usbb2_hsic_data INPUT | MODE 0 */
219                         0x19e 0x100     /* usbb3_hsic_strobe INPUT | MODE 0 */
220                         0x1a0 0x100     /* usbb3_hsic_data INPUT | MODE 0 */
222                         0x70 0x6        /* gpio3_80 OUTPUT | MODE 6 HUB_NRESET */
223                         0x6e 0x6        /* gpio3_79 OUTPUT | MODE 6 ETH_NRESET */
224                 >;
225         };
227         dss_hdmi_pins: pinmux_dss_hdmi_pins {
228                 pinctrl-single,pins = <
229                         0x0fc 0x118     /* hdmi_cec.hdmi_cec INPUT PULLUP | MODE 0 */
230                         0x100 0x106     /* GPIO7_194, DDC-SCL */
231                         0x102 0x106     /* GPIO7_195, DDC-SDA */
232                 >;
233         };
235         tpd12s015_pins: pinmux_tpd12s015_pins {
236                 pinctrl-single,pins = <
237                         0x0fe 0x116     /* hdmi_hpd.gpio7_193 INPUT PULLDOWN | MODE6 */
238                 >;
239         };
241         tca6424a_pins: pinmux_tca6424a_pins {
242                 pinctrl-single,pins = <
243                         0x186 0x100     /* i2c5_scl.i2c5_scl INPUT | MODE0 */
244                         0x188 0x100     /* i2c5_sda.i2c5_sda INPUT | MODE0 */
245                 >;
246         };
248         uart1_pins: pinmux_uart1_pins {
249                 pinctrl-single,pins = <
250                         0x60 0x0        /* uart1_tx.uart1_cts MODE0 */
251                         0x62 0x118      /* uart1_tx.uart1_cts INPUT | PULLUP | MODE0 */
252                         0x64 0x118      /* uart1_rx.uart1_rts INPUT | PULLUP | MODE0 */
253                         0x66 0          /* uart1_rx.uart1_rts MODE0 */
254                 >;
255         };
257         uart3_pins: pinmux_uart3_pins {
258                 pinctrl-single,pins = <
259                         0x19a 0x0       /* uart3_rts_irsd.uart3_tx_irtx MODE0 */
260                         0x19c 0x118     /* uart3_rx_irrx.uart3_usbb3_hsic INPUT | PULLUP | MODE0 */
261                 >;
262         };
264         uart5_pins: pinmux_uart5_pins {
265                 pinctrl-single,pins = <
266                         0x170 0x118     /* uart5_rx.uart5_rx INPUT | PULLUP | MODE0 */
267                         0x172 0x0       /* uart5_tx.uart5_tx MODE0 */
268                         0x174 0x118     /* uart5_cts.uart5_rts INPUT | PULLUP | MODE0 */
269                         0x176 0x0       /* uart5_cts.uart5_rts MODE0 */
270                 >;
271         };
273         mcspi2_pins: pinmux_mcspi2_pins {
274                 pinctrl-single,pins = <
275                         0xbc 0x100      /*  MCSPI2_CLK INPUTENABLE | MODE0 */
276                         0xbe 0x100      /*  MCSPI2_SIMO INPUTENABLE | MODE0 */
277                         0xc0 0x118      /*  MCSPI2_SOMI PULLUP | INPUTENABLE | MODE0*/
278                         0xc2 0x0        /*  MCSPI2_CS MODE0*/
279                 >;
280         };
282         mcspi3_pins: pinmux_mcspi3_pins {
283                 pinctrl-single,pins = <
284                         0x78 0x101      /*  MCSPI2_SOMI INPUTENABLE | MODE1 */
285                         0x7a 0x101      /*  MCSPI2_CS INPUTENABLE | MODE1 */
286                         0x7c 0x101      /*  MCSPI2_SIMO INPUTENABLE | MODE1 */
287                         0x7e 0x101      /*  MCSPI2_CLK INPUTENABLE | MODE1 */
288                 >;
289         };
291         mcspi4_pins: pinmux_mcspi4_pins {
292                 pinctrl-single,pins = <
293                         0x164 0x101     /*  MCSPI2_CLK INPUTENABLE | MODE1 */
294                         0x168 0x101     /*  MCSPI2_SIMO INPUTENABLE | MODE1 */
295                         0x16a 0x101     /*  MCSPI2_SOMI INPUTENABLE | MODE1 */
296                         0x16c 0x101     /*  MCSPI2_CS INPUTENABLE | MODE1 */
297                 >;
298         };
300         palmas_pins: pinmux_palmas_pins {
301                 pinctrl-single,pins = <
302                         0x140 0x11f     /* MSLEEP INPUT | PULLUP | MODE7 */
303                 >;
304         };
306         led_gpio_pins: pinmux_led_gpio_pins {
307                 pinctrl-single,pins = <
308                         0x196 0x6       /* uart3_cts_rctx.gpio5_153 OUTPUT | MODE6 */
309                 >;
310         };
311 };
313 &omap5_pmx_wkup {
314         pinctrl-names = "default";
315         pinctrl-0 = <
316                         &usbhost_wkup_pins
317         >;
319         usbhost_wkup_pins: pinmux_usbhost_wkup_pins {
320                 pinctrl-single,pins = <
321                         0x1A 0x0        /* fref_clk1_out OUTPUT | MODE 7 for USB hub clk */
322                 >;
323         };
324 };
326 &mmc1 {
327         vmmc-supply = <&vmmcsd_fixed>;
328         bus-width = <4>;
329 };
331 &mmc2 {
332         vmmc-supply = <&vmmcsd_fixed>;
333         bus-width = <8>;
334         ti,non-removable;
335 };
337 &mmc3 {
338         bus-width = <4>;
339         ti,non-removable;
340         status = "disabled";
341 };
343 &mmc4 {
344         status = "disabled";
345 };
347 &mmc5 {
348         status = "disabled";
349 };
351 &i2c5 {
352         tca6424a: tca6424a@22 {
353                 compatible = "ti,tca6424a";
354                 reg = <0x22>;
355                 gpio-controller;
356                 #gpio-cells = <2>;
357         };
358 };
360 &mcbsp3 {
361         status = "disabled";
362 };
364 &emif1 {
365         cs1-used;
366         device-handle = <&samsung_K3PE0E000B>;
367 };
369 &emif2 {
370         cs1-used;
371         device-handle = <&samsung_K3PE0E000B>;
372 };
374 &i2c1 {
375         clock-frequency = <400000>;
377         palmas: palmas@48 {
378                 reg = <0x48>;
379                 /* SPI = 0, IRQ# = 7, 4 = active high level-sensitive */
380                 interrupts = <0 7 4>; /* IRQ_SYS_1N cascaded to gic */
381                 interrupt-parent = <&gic>;
382         };
384         twl6040: twl@4b {
385                 compatible = "ti,twl6040";
387                 interrupts = <0 119 4>; /* IRQ_SYS_2N cascaded to gic */
388                 interrupt-parent = <&gic>;
389                 ti,audpwron-gpio = <&gpio5 13 0>;  /* gpio line 141 */
391                 vio-supply = <&smps7_reg>;
392                 v2v1-supply = <&smps9_reg>;
393                 enable-active-high;
394         };
395 };
397 &usbhshost {
398         port2-mode = "ehci-hsic";
399         port3-mode = "ehci-hsic";
400 };
402 &usbhsehci {
403         phys = <0 &hsusb2_phy &hsusb3_phy>;
404 };
406 /include/ "palmas.dtsi"
407 /include/ "twl6040.dtsi"
409 &hdmi {
410         tpd12s015: tpd12s015 {
411                 compatible = "ti,tpd12s015";
413                 gpios = <&tca6424a 0 0>,        /* TCA6424A P01, CT_CP_HDP */
414                         <&tca6424a 1 0>,        /* TCA6424A P00, LS_OE*/
415                         <&gpio7 1 0>,           /* 193, HPD */
416                         <&gpio7 2 0>,           /* 194, SCL */
417                         <&gpio7 3 0>;           /* 195, SDA */
420                 hdmi-monitor {
421                         compatible = "ti,hdmi_panel";
422                 };
424         };
425 };
427 &uart1 {
428         pinctrl-names = "default";
429         pinctrl-0 = <&uart1_pins>;
430 };
432 &uart3 {
433         pinctrl-names = "default";
434         pinctrl-0 = <&uart3_pins>;
435 };
437 &uart5 {
438         pinctrl-names = "default";
439         pinctrl-0 = <&uart5_pins>;
440 };
442 &mcspi2 {
443         pinctrl-names = "default";
444         pinctrl-0 = <&mcspi2_pins>;
445 };
447 &mcspi3 {
448         pinctrl-names = "default";
449         pinctrl-0 = <&mcspi3_pins>;
450 };
452 &mcspi4 {
453         pinctrl-names = "default";
454         pinctrl-0 = <&mcspi4_pins>;
455 };