ARM: dts: omap3-n900: Add support for SD cards
[platform/adaptation/renesas_rcar/renesas_kernel.git] / arch / arm / boot / dts / omap3-n900.dts
1 /*
2  * Copyright (C) 2013 Pavel Machek <pavel@ucw.cz>
3  * Copyright 2013 Aaro Koskinen <aaro.koskinen@iki.fi>
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License version 2 (or later) as
7  * published by the Free Software Foundation.
8  */
9
10 /dts-v1/;
11
12 #include "omap34xx.dtsi"
13
14 / {
15         model = "Nokia N900";
16         compatible = "nokia,omap3-n900", "ti,omap3";
17
18         cpus {
19                 cpu@0 {
20                         cpu0-supply = <&vcc>;
21                 };
22         };
23
24         memory {
25                 device_type = "memory";
26                 reg = <0x80000000 0x10000000>; /* 256 MB */
27         };
28
29 };
30
31 &omap3_pmx_core {
32         pinctrl-names = "default";
33
34         uart2_pins: pinmux_uart2_pins {
35                 pinctrl-single,pins = <
36                         0x14a (PIN_INPUT | MUX_MODE0)           /* uart2_rx */
37                         0x148 (PIN_OUTPUT | MUX_MODE0)          /* uart2_tx */
38                 >;
39         };
40
41         uart3_pins: pinmux_uart3_pins {
42                 pinctrl-single,pins = <
43                         0x16e (PIN_INPUT | MUX_MODE0)           /* uart3_rx */
44                         0x170 (PIN_OUTPUT | MUX_MODE0)          /* uart3_tx */
45                 >;
46         };
47
48         i2c1_pins: pinmux_i2c1_pins {
49                 pinctrl-single,pins = <
50                         0x18a (PIN_INPUT_PULLUP | MUX_MODE0)    /* i2c1_scl */
51                         0x18c (PIN_INPUT_PULLUP | MUX_MODE0)    /* i2c1_sda */
52                 >;
53         };
54
55         i2c2_pins: pinmux_i2c2_pins {
56                 pinctrl-single,pins = <
57                         0x18e (PIN_INPUT_PULLUP | MUX_MODE0)    /* i2c2_scl */
58                         0x190 (PIN_INPUT_PULLUP | MUX_MODE0)    /* i2c2_sda */
59                 >;
60         };
61
62         i2c3_pins: pinmux_i2c3_pins {
63                 pinctrl-single,pins = <
64                         0x192 (PIN_INPUT_PULLUP | MUX_MODE0)    /* i2c3_scl */
65                         0x194 (PIN_INPUT_PULLUP | MUX_MODE0)    /* i2c3_sda */
66                 >;
67         };
68
69         mmc1_pins: pinmux_mmc1_pins {
70                 pinctrl-single,pins = <
71                         0x114 (PIN_INPUT_PULLUP | MUX_MODE0)    /* sdmmc1_clk */
72                         0x116 (PIN_INPUT_PULLUP | MUX_MODE0)    /* sdmmc1_cmd */
73                         0x118 (PIN_INPUT_PULLUP | MUX_MODE0)    /* sdmmc1_dat0 */
74                         0x11a (PIN_INPUT_PULLUP | MUX_MODE0)    /* sdmmc1_dat1 */
75                         0x11c (PIN_INPUT_PULLUP | MUX_MODE0)    /* sdmmc1_dat2 */
76                         0x11e (PIN_INPUT_PULLUP | MUX_MODE0)    /* sdmmc1_dat3 */
77                 >;
78         };
79 };
80
81 &i2c1 {
82         pinctrl-names = "default";
83         pinctrl-0 = <&i2c1_pins>;
84
85         clock-frequency = <2200000>;
86
87         twl: twl@48 {
88                 reg = <0x48>;
89                 interrupts = <7>; /* SYS_NIRQ cascaded to intc */
90                 interrupt-parent = <&intc>;
91         };
92 };
93
94 #include "twl4030.dtsi"
95 #include "twl4030_omap3.dtsi"
96
97 &twl_gpio {
98         ti,pullups      = <0x0>;
99         ti,pulldowns    = <0x03ff3f>; /* BIT(0..5) | BIT(8..17) */
100 };
101
102 &i2c2 {
103         pinctrl-names = "default";
104         pinctrl-0 = <&i2c2_pins>;
105
106         clock-frequency = <100000>;
107 };
108
109 &i2c3 {
110         pinctrl-names = "default";
111         pinctrl-0 = <&i2c3_pins>;
112
113         clock-frequency = <400000>;
114 };
115
116 &mmc1 {
117         pinctrl-names = "default";
118         pinctrl-0 = <&mmc1_pins>;
119         vmmc-supply = <&vmmc1>;
120         bus-width = <4>;
121         cd-gpios = <&gpio6 0 GPIO_ACTIVE_HIGH>; /* 160 */
122 };
123
124 &mmc2 {
125         status = "disabled";
126 };
127
128 &mmc3 {
129         status = "disabled";
130 };
131
132 &mcspi1 {
133         /*
134          * For some reason, touchscreen is necessary for screen to work at
135          * all on real hw. It works well without it on emulator.
136          *
137          * Also... order in the device tree actually matters here.
138          */
139         tsc2005@0 {
140                 compatible = "tsc2005";
141                 spi-max-frequency = <6000000>;
142                 reg = <0>;
143         };
144         mipid@2 {
145                 compatible = "acx565akm";
146                 spi-max-frequency = <6000000>;
147                 reg = <2>;
148         };
149 };
150
151 &usb_otg_hs {
152         interface-type = <0>;
153         usb-phy = <&usb2_phy>;
154         phys = <&usb2_phy>;
155         phy-names = "usb2-phy";
156         mode = <2>;
157         power = <50>;
158 };
159
160 &uart1 {
161         status = "disabled";
162 };
163
164 &uart2 {
165         pinctrl-names = "default";
166         pinctrl-0 = <&uart2_pins>;
167 };
168
169 &uart3 {
170         pinctrl-names = "default";
171         pinctrl-0 = <&uart3_pins>;
172 };