aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2017-12-21 11:20:49 -0500
committerArnd Bergmann <arnd@arndb.de>2017-12-21 11:20:49 -0500
commitce541f0419fdac1f76ac5385eebb1f43efef24fc (patch)
tree145e22657b058f8ba5422777e3879803e975b81b
parent24ff73a0af2c41fa32fd5d0836ab52e7cc93e9d5 (diff)
parenta38867305203ef5a27f0c9ff1e943a0c2fabdbce (diff)
Merge tag 'omap-for-v4.16/dt-signed' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/dt
Pull "Dts related changes for omaps for v4.16 merge window" from Tony Lindgren: These changes are mostly improvments for various devices. Note that these are based on my earlier fixes branch omap-for-v4.15/fixes-dt to avoid a pointless merge conflict between a fix and removal. The summary of changes is: - Fix audio codec reset pin for am335x-pepper and n900, this has been always broken and won't get fixed until the related driver changes are also merged in for v4.16, so not urgent - Fix tps65917 powerhold property for dra76-evm - Changes to logicpd boards to remove MTD partition information and to add support for omap35xx variants by setting up common dts files for the logicpd boards - Disable dra7 USB metastability workaround, this won't do anything until the related driver changes are also merged into v4.16, so not urgent * tag 'omap-for-v4.16/dt-signed' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: dts: Move move WiFi bindings to logicpd-torpedo-37xx-devkit ARM: dts: Add minimal support for LogicPD OMAP35xx Torpedo devkit ARM: dts: Move most of logicpd-torpedo-37xx-devkit to logicpd-torpedo-baseboard ARM: dts: Add minimal support for LogicPD OMAP35xx SOM-LV devkit ARM: dts: Move most of logicpd-som-lv-37xx-devkit.dts to logicpd-som-lv-baseboard.dtsi ARM: dts: dra7: Add missing hdmi audio DMA channel information ARM: dts: dra7: Disable USB metastability workaround for USB2 ARM: dts: omap3: logicpd kits: Remove partition information ARM: dts: DRA76-EVM: Set powerhold property for tps65917 ARM: dts: omap3-n900: Fix the audio CODEC's reset pin ARM: dts: am335x-pepper: Fix the audio CODEC's reset pin
-rw-r--r--arch/arm/boot/dts/am335x-pepper.dts2
-rw-r--r--arch/arm/boot/dts/dra7.dtsi3
-rw-r--r--arch/arm/boot/dts/dra76-evm.dts1
-rw-r--r--arch/arm/boot/dts/logicpd-som-lv-35xx-devkit.dts17
-rw-r--r--arch/arm/boot/dts/logicpd-som-lv-37xx-devkit.dts249
-rw-r--r--arch/arm/boot/dts/logicpd-som-lv-baseboard.dtsi256
-rw-r--r--arch/arm/boot/dts/logicpd-som-lv.dtsi27
-rw-r--r--arch/arm/boot/dts/logicpd-torpedo-35xx-devkit.dts17
-rw-r--r--arch/arm/boot/dts/logicpd-torpedo-37xx-devkit.dts411
-rw-r--r--arch/arm/boot/dts/logicpd-torpedo-baseboard.dtsi395
-rw-r--r--arch/arm/boot/dts/logicpd-torpedo-som.dtsi84
-rw-r--r--arch/arm/boot/dts/omap3-n900.dts4
12 files changed, 735 insertions, 731 deletions
diff --git a/arch/arm/boot/dts/am335x-pepper.dts b/arch/arm/boot/dts/am335x-pepper.dts
index 03c7d77023c6..9fb7426070ce 100644
--- a/arch/arm/boot/dts/am335x-pepper.dts
+++ b/arch/arm/boot/dts/am335x-pepper.dts
@@ -139,7 +139,7 @@
139&audio_codec { 139&audio_codec {
140 status = "okay"; 140 status = "okay";
141 141
142 gpio-reset = <&gpio1 16 GPIO_ACTIVE_LOW>; 142 reset-gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
143 AVDD-supply = <&ldo3_reg>; 143 AVDD-supply = <&ldo3_reg>;
144 IOVDD-supply = <&ldo3_reg>; 144 IOVDD-supply = <&ldo3_reg>;
145 DRVDD-supply = <&ldo3_reg>; 145 DRVDD-supply = <&ldo3_reg>;
diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
index a1d7178a3966..3c8c0d743dd0 100644
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -1561,6 +1561,7 @@
1561 dr_mode = "otg"; 1561 dr_mode = "otg";
1562 snps,dis_u3_susphy_quirk; 1562 snps,dis_u3_susphy_quirk;
1563 snps,dis_u2_susphy_quirk; 1563 snps,dis_u2_susphy_quirk;
1564 snps,dis_metastability_quirk;
1564 }; 1565 };
1565 }; 1566 };
1566 1567
@@ -1929,6 +1930,8 @@
1929 clocks = <&dss_clkctrl DRA7_DSS_CORE_CLKCTRL 9>, 1930 clocks = <&dss_clkctrl DRA7_DSS_CORE_CLKCTRL 9>,
1930 <&dss_clkctrl DRA7_DSS_CORE_CLKCTRL 10>; 1931 <&dss_clkctrl DRA7_DSS_CORE_CLKCTRL 10>;
1931 clock-names = "fck", "sys_clk"; 1932 clock-names = "fck", "sys_clk";
1933 dmas = <&sdma_xbar 76>;
1934 dma-names = "audio_tx";
1932 }; 1935 };
1933 }; 1936 };
1934 1937
diff --git a/arch/arm/boot/dts/dra76-evm.dts b/arch/arm/boot/dts/dra76-evm.dts
index b024a65c6e27..f64aab450315 100644
--- a/arch/arm/boot/dts/dra76-evm.dts
+++ b/arch/arm/boot/dts/dra76-evm.dts
@@ -148,6 +148,7 @@
148 compatible = "ti,tps65917"; 148 compatible = "ti,tps65917";
149 reg = <0x58>; 149 reg = <0x58>;
150 ti,system-power-controller; 150 ti,system-power-controller;
151 ti,palmas-override-powerhold;
151 interrupt-controller; 152 interrupt-controller;
152 #interrupt-cells = <2>; 153 #interrupt-cells = <2>;
153 154
diff --git a/arch/arm/boot/dts/logicpd-som-lv-35xx-devkit.dts b/arch/arm/boot/dts/logicpd-som-lv-35xx-devkit.dts
new file mode 100644
index 000000000000..32d0dc371fc3
--- /dev/null
+++ b/arch/arm/boot/dts/logicpd-som-lv-35xx-devkit.dts
@@ -0,0 +1,17 @@
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/dts-v1/;
8
9#include "omap34xx.dtsi"
10#include "logicpd-som-lv.dtsi"
11#include "logicpd-som-lv-baseboard.dtsi"
12#include "omap-gpmc-smsc9221.dtsi"
13
14/ {
15 model = "LogicPD Zoom OMAP35xx SOM-LV Development Kit";
16 compatible = "logicpd,dm3730-som-lv-devkit", "ti,omap3";
17};
diff --git a/arch/arm/boot/dts/logicpd-som-lv-37xx-devkit.dts b/arch/arm/boot/dts/logicpd-som-lv-37xx-devkit.dts
index 2fa5eb4bd402..24283739526c 100644
--- a/arch/arm/boot/dts/logicpd-som-lv-37xx-devkit.dts
+++ b/arch/arm/boot/dts/logicpd-som-lv-37xx-devkit.dts
@@ -8,257 +8,10 @@
8 8
9#include "omap36xx.dtsi" 9#include "omap36xx.dtsi"
10#include "logicpd-som-lv.dtsi" 10#include "logicpd-som-lv.dtsi"
11#include "logicpd-som-lv-baseboard.dtsi"
11#include "omap-gpmc-smsc9221.dtsi" 12#include "omap-gpmc-smsc9221.dtsi"
12 13
13/ { 14/ {
14 model = "LogicPD Zoom DM3730 SOM-LV Development Kit"; 15 model = "LogicPD Zoom DM3730 SOM-LV Development Kit";
15 compatible = "logicpd,dm3730-som-lv-devkit", "ti,omap3630", "ti,omap3"; 16 compatible = "logicpd,dm3730-som-lv-devkit", "ti,omap3630", "ti,omap3";
16
17 gpio_keys {
18 compatible = "gpio-keys";
19 pinctrl-names = "default";
20 pinctrl-0 = <&gpio_key_pins>;
21
22 sysboot2 {
23 label = "gpio3";
24 gpios = <&gpio4 15 GPIO_ACTIVE_LOW>; /* gpio_111 / uP_GPIO_3 */
25 linux,code = <BTN_0>;
26 wakeup-source;
27 };
28 };
29
30 sound {
31 compatible = "ti,omap-twl4030";
32 ti,model = "omap3logic";
33 ti,mcbsp = <&mcbsp2>;
34 };
35
36 leds {
37 compatible = "gpio-leds";
38 pinctrl-names = "default";
39 pinctrl-0 = <&led_pins &led_pins_wkup>;
40
41 led1 {
42 label = "led1";
43 gpios = <&gpio5 5 GPIO_ACTIVE_LOW>; /* gpio133 */
44 linux,default-trigger = "cpu0";
45 };
46
47 led2 {
48 label = "led2";
49 gpios = <&gpio1 11 GPIO_ACTIVE_LOW>; /* gpio11 */
50 linux,default-trigger = "none";
51 };
52 };
53};
54
55&vaux1 {
56 regulator-min-microvolt = <3000000>;
57 regulator-max-microvolt = <3000000>;
58};
59
60&vaux4 {
61 regulator-min-microvolt = <1800000>;
62 regulator-max-microvolt = <1800000>;
63};
64
65&mcbsp2 {
66 status = "okay";
67};
68
69&charger {
70 ti,bb-uvolt = <3200000>;
71 ti,bb-uamp = <150>;
72};
73
74&gpmc {
75 ranges = <0 0 0x30000000 0x1000000 /* CS0: 16MB for NAND */
76 1 0 0x2c000000 0x1000000>; /* CS1: 16MB for LAN9221 */
77
78 ethernet@gpmc {
79 pinctrl-names = "default";
80 pinctrl-0 = <&lan9221_pins>;
81 interrupt-parent = <&gpio5>;
82 interrupts = <24 IRQ_TYPE_LEVEL_LOW>; /* gpio_152 */
83 reg = <1 0 0xff>;
84 };
85};
86
87&vpll2 {
88 regulator-always-on;
89};
90
91&dss {
92 status = "ok";
93 vdds_dsi-supply = <&vpll2>;
94 vdda_video-supply = <&video_reg>;
95 pinctrl-names = "default";
96 pinctrl-0 = <&dss_dpi_pins1>;
97 port {
98 dpi_out: endpoint {
99 remote-endpoint = <&lcd_in>;
100 data-lines = <16>;
101 };
102 };
103};
104
105/ {
106 aliases {
107 display0 = &lcd0;
108 };
109
110 video_reg: video_reg {
111 compatible = "regulator-fixed";
112 regulator-name = "fixed-supply";
113 regulator-min-microvolt = <3300000>;
114 regulator-max-microvolt = <3300000>;
115 };
116
117 lcd0: display@0 {
118 compatible = "panel-dpi";
119 label = "28";
120 status = "okay";
121 /* default-on; */
122 pinctrl-names = "default";
123 pinctrl-0 = <&lcd_enable_pin>;
124 enable-gpios = <&gpio5 27 GPIO_ACTIVE_HIGH>; /* gpio155, lcd INI */
125 port {
126 lcd_in: endpoint {
127 remote-endpoint = <&dpi_out>;
128 };
129 };
130
131 panel-timing {
132 clock-frequency = <9000000>;
133 hactive = <480>;
134 vactive = <272>;
135 hfront-porch = <3>;
136 hback-porch = <2>;
137 hsync-len = <42>;
138 vback-porch = <3>;
139 vfront-porch = <2>;
140 vsync-len = <11>;
141 hsync-active = <1>;
142 vsync-active = <1>;
143 de-active = <1>;
144 pixelclk-active = <0>;
145 };
146 };
147
148 bl: backlight {
149 compatible = "pwm-backlight";
150 pinctrl-names = "default";
151 pinctrl-0 = <&backlight_pins>;
152 pwms = <&twl_pwm 0 5000000>;
153 brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>;
154 default-brightness-level = <7>;
155 enable-gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; /* gpio_8 */
156 };
157};
158
159&mmc1 {
160 interrupts-extended = <&intc 83 &omap3_pmx_core 0x11a>;
161 pinctrl-names = "default";
162 pinctrl-0 = <&mmc1_pins>;
163 wp-gpios = <&gpio4 30 GPIO_ACTIVE_HIGH>; /* gpio_126 */
164 cd-gpios = <&gpio4 14 IRQ_TYPE_LEVEL_LOW>; /* gpio_110 */
165 vmmc-supply = <&vmmc1>;
166 bus-width = <4>;
167 cap-power-off-card;
168};
169
170&omap3_pmx_core {
171 gpio_key_pins: pinmux_gpio_key_pins {
172 pinctrl-single,pins = <
173 OMAP3_CORE1_IOPAD(0x212e, PIN_INPUT_PULLUP | MUX_MODE4) /* cam_xclkb.gpio_111 / uP_GPIO_3*/
174 >;
175 };
176
177 led_pins: pinmux_led_pins {
178 pinctrl-single,pins = <
179 OMAP3_CORE1_IOPAD(0x215e, PIN_OUTPUT_PULLUP | MUX_MODE4) /* sdmmc2_dat1.gpio_133 / uP_GPIO_0 */
180 >;
181 };
182
183 lan9221_pins: pinmux_lan9221_pins {
184 pinctrl-single,pins = <
185 OMAP3_CORE1_IOPAD(0x2184, PIN_INPUT_PULLUP | MUX_MODE4) /* mcbsp4_clkx.gpio_152 */
186 >;
187 };
188
189 mmc1_pins: pinmux_mmc1_pins {
190 pinctrl-single,pins = <
191 OMAP3_CORE1_IOPAD(0x2144, PIN_OUTPUT | MUX_MODE0) /* sdmmc1_clk.sdmmc1_clk */
192 OMAP3_CORE1_IOPAD(0x2146, PIN_INPUT | MUX_MODE0) /* sdmmc1_cmd.sdmmc1_cmd */
193 OMAP3_CORE1_IOPAD(0x2148, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat0.sdmmc1_dat0 */
194 OMAP3_CORE1_IOPAD(0x214a, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat1.sdmmc1_dat1 */
195 OMAP3_CORE1_IOPAD(0x214c, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat2.sdmmc1_dat2 */
196 OMAP3_CORE1_IOPAD(0x214e, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat3.sdmmc1_dat3 */
197 OMAP3_CORE1_IOPAD(0x2132, PIN_INPUT_PULLUP | MUX_MODE4) /* cam_strobe.gpio_126 */
198 OMAP3_CORE1_IOPAD(0x212c, PIN_INPUT_PULLUP | MUX_MODE4) /* cam_d11.gpio_110 */
199 >;
200 };
201
202 lcd_enable_pin: pinmux_lcd_enable_pin {
203 pinctrl-single,pins = <
204 OMAP3_CORE1_IOPAD(0x218a, PIN_OUTPUT | PIN_OFF_OUTPUT_LOW | MUX_MODE4) /* mcbsp4_fs.gpio_155 */
205 >;
206 };
207
208 dss_dpi_pins1: pinmux_dss_dpi_pins1 {
209 pinctrl-single,pins = <
210 OMAP3_CORE1_IOPAD(0x20d4, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_pclk.dss_pclk */
211 OMAP3_CORE1_IOPAD(0x20d6, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_hsync.dss_hsync */
212 OMAP3_CORE1_IOPAD(0x20d8, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_vsync.dss_vsync */
213 OMAP3_CORE1_IOPAD(0x20da, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_acbias.dss_acbias */
214
215 OMAP3_CORE1_IOPAD(0x20dc, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data0.dss_data0 */
216 OMAP3_CORE1_IOPAD(0x20de, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data1.dss_data1 */
217 OMAP3_CORE1_IOPAD(0x20e0, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data2.dss_data2 */
218 OMAP3_CORE1_IOPAD(0x20e2, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data3.dss_data3 */
219 OMAP3_CORE1_IOPAD(0x20e4, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data4.dss_data4 */
220 OMAP3_CORE1_IOPAD(0x20e6, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data5.dss_data5 */
221 OMAP3_CORE1_IOPAD(0x20e8, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data6.dss_data6 */
222 OMAP3_CORE1_IOPAD(0x20ea, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data7.dss_data7 */
223 OMAP3_CORE1_IOPAD(0x20ec, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data8.dss_data8 */
224 OMAP3_CORE1_IOPAD(0x20ee, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data9.dss_data9 */
225 OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data10.dss_data10 */
226 OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data11.dss_data11 */
227 OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data12.dss_data12 */
228 OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data13.dss_data13 */
229 OMAP3_CORE1_IOPAD(0x20f8, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data14.dss_data14 */
230 OMAP3_CORE1_IOPAD(0x20fa, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data15.dss_data15 */
231 >;
232 };
233};
234
235&omap3_pmx_wkup {
236 led_pins_wkup: pinmux_led_pins_wkup {
237 pinctrl-single,pins = <
238 OMAP3_WKUP_IOPAD(0x2a24, PIN_OUTPUT_PULLUP | MUX_MODE4) /* jtag_emu0.gpio_11 / uP_GPIO_1 */
239 >;
240 };
241
242 backlight_pins: pinmux_backlight_pins {
243 pinctrl-single,pins = <
244 OMAP3_WKUP_IOPAD(0x2a16, PIN_OUTPUT | PIN_OFF_OUTPUT_LOW | MUX_MODE4) /* sys_boot6.gpio_8 */
245 >;
246 };
247};
248
249
250&uart1 {
251 interrupts-extended = <&intc 72 &omap3_pmx_core OMAP3_UART1_RX>;
252};
253
254/* Wired to the tps65950 on the SOM, only the USB connector is on the devkit */
255&usb_otg_hs {
256 pinctrl-names = "default";
257 pinctrl-0 = <&hsusb_otg_pins>;
258 interface-type = <0>;
259 usb-phy = <&usb2_phy>;
260 phys = <&usb2_phy>;
261 phy-names = "usb2-phy";
262 mode = <3>;
263 power = <50>;
264}; 17};
diff --git a/arch/arm/boot/dts/logicpd-som-lv-baseboard.dtsi b/arch/arm/boot/dts/logicpd-som-lv-baseboard.dtsi
new file mode 100644
index 000000000000..4990ed90dcea
--- /dev/null
+++ b/arch/arm/boot/dts/logicpd-som-lv-baseboard.dtsi
@@ -0,0 +1,256 @@
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/ {
8 gpio_keys {
9 compatible = "gpio-keys";
10 pinctrl-names = "default";
11 pinctrl-0 = <&gpio_key_pins>;
12
13 sysboot2 {
14 label = "gpio3";
15 gpios = <&gpio4 15 GPIO_ACTIVE_LOW>; /* gpio_111 / uP_GPIO_3 */
16 linux,code = <BTN_0>;
17 wakeup-source;
18 };
19 };
20
21 sound {
22 compatible = "ti,omap-twl4030";
23 ti,model = "omap3logic";
24 ti,mcbsp = <&mcbsp2>;
25 };
26
27 leds {
28 compatible = "gpio-leds";
29 pinctrl-names = "default";
30 pinctrl-0 = <&led_pins &led_pins_wkup>;
31
32 led1 {
33 label = "led1";
34 gpios = <&gpio5 5 GPIO_ACTIVE_LOW>; /* gpio133 */
35 linux,default-trigger = "cpu0";
36 };
37
38 led2 {
39 label = "led2";
40 gpios = <&gpio1 11 GPIO_ACTIVE_LOW>; /* gpio11 */
41 linux,default-trigger = "none";
42 };
43 };
44};
45
46&vaux1 {
47 regulator-min-microvolt = <3000000>;
48 regulator-max-microvolt = <3000000>;
49};
50
51&vaux4 {
52 regulator-min-microvolt = <1800000>;
53 regulator-max-microvolt = <1800000>;
54};
55
56&mcbsp2 {
57 status = "okay";
58};
59
60&charger {
61 ti,bb-uvolt = <3200000>;
62 ti,bb-uamp = <150>;
63};
64
65&gpmc {
66 ranges = <0 0 0x30000000 0x1000000 /* CS0: 16MB for NAND */
67 1 0 0x2c000000 0x1000000 /* CS1: 16MB for LAN9221 */
68 2 0 0x10000000 0x2000000>; /* CS2: 32MB for NOR */
69
70 ethernet@gpmc {
71 pinctrl-names = "default";
72 pinctrl-0 = <&lan9221_pins>;
73 interrupt-parent = <&gpio5>;
74 interrupts = <24 IRQ_TYPE_LEVEL_LOW>; /* gpio_152 */
75 reg = <1 0 0xff>;
76 };
77};
78
79&vpll2 {
80 regulator-always-on;
81};
82
83&dss {
84 status = "ok";
85 vdds_dsi-supply = <&vpll2>;
86 vdda_video-supply = <&video_reg>;
87 pinctrl-names = "default";
88 pinctrl-0 = <&dss_dpi_pins1>;
89 port {
90 dpi_out: endpoint {
91 remote-endpoint = <&lcd_in>;
92 data-lines = <16>;
93 };
94 };
95};
96
97/ {
98 aliases {
99 display0 = &lcd0;
100 };
101
102 video_reg: video_reg {
103 compatible = "regulator-fixed";
104 regulator-name = "fixed-supply";
105 regulator-min-microvolt = <3300000>;
106 regulator-max-microvolt = <3300000>;
107 };
108
109 lcd0: display@0 {
110 compatible = "panel-dpi";
111 label = "28";
112 status = "okay";
113 /* default-on; */
114 pinctrl-names = "default";
115 pinctrl-0 = <&lcd_enable_pin>;
116 enable-gpios = <&gpio5 27 GPIO_ACTIVE_HIGH>; /* gpio155, lcd INI */
117 port {
118 lcd_in: endpoint {
119 remote-endpoint = <&dpi_out>;
120 };
121 };
122
123 panel-timing {
124 clock-frequency = <9000000>;
125 hactive = <480>;
126 vactive = <272>;
127 hfront-porch = <3>;
128 hback-porch = <2>;
129 hsync-len = <42>;
130 vback-porch = <3>;
131 vfront-porch = <2>;
132 vsync-len = <11>;
133 hsync-active = <1>;
134 vsync-active = <1>;
135 de-active = <1>;
136 pixelclk-active = <0>;
137 };
138 };
139
140 bl: backlight {
141 compatible = "pwm-backlight";
142 pinctrl-names = "default";
143 pinctrl-0 = <&backlight_pins>;
144 pwms = <&twl_pwm 0 5000000>;
145 brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>;
146 default-brightness-level = <7>;
147 enable-gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; /* gpio_8 */
148 };
149};
150
151&mmc1 {
152 interrupts-extended = <&intc 83 &omap3_pmx_core 0x11a>;
153 pinctrl-names = "default";
154 pinctrl-0 = <&mmc1_pins>;
155 wp-gpios = <&gpio4 30 GPIO_ACTIVE_HIGH>; /* gpio_126 */
156 cd-gpios = <&gpio4 14 IRQ_TYPE_LEVEL_LOW>; /* gpio_110 */
157 vmmc-supply = <&vmmc1>;
158 bus-width = <4>;
159 cap-power-off-card;
160};
161
162&omap3_pmx_core {
163 gpio_key_pins: pinmux_gpio_key_pins {
164 pinctrl-single,pins = <
165 OMAP3_CORE1_IOPAD(0x212e, PIN_INPUT_PULLUP | MUX_MODE4) /* cam_xclkb.gpio_111 / uP_GPIO_3*/
166 >;
167 };
168
169 led_pins: pinmux_led_pins {
170 pinctrl-single,pins = <
171 OMAP3_CORE1_IOPAD(0x215e, PIN_OUTPUT_PULLUP | MUX_MODE4) /* sdmmc2_dat1.gpio_133 / uP_GPIO_0 */
172 >;
173 };
174
175 lan9221_pins: pinmux_lan9221_pins {
176 pinctrl-single,pins = <
177 OMAP3_CORE1_IOPAD(0x2184, PIN_INPUT_PULLUP | MUX_MODE4) /* mcbsp4_clkx.gpio_152 */
178 >;
179 };
180
181 mmc1_pins: pinmux_mmc1_pins {
182 pinctrl-single,pins = <
183 OMAP3_CORE1_IOPAD(0x2144, PIN_OUTPUT | MUX_MODE0) /* sdmmc1_clk.sdmmc1_clk */
184 OMAP3_CORE1_IOPAD(0x2146, PIN_INPUT | MUX_MODE0) /* sdmmc1_cmd.sdmmc1_cmd */
185 OMAP3_CORE1_IOPAD(0x2148, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat0.sdmmc1_dat0 */
186 OMAP3_CORE1_IOPAD(0x214a, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat1.sdmmc1_dat1 */
187 OMAP3_CORE1_IOPAD(0x214c, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat2.sdmmc1_dat2 */
188 OMAP3_CORE1_IOPAD(0x214e, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat3.sdmmc1_dat3 */
189 OMAP3_CORE1_IOPAD(0x2132, PIN_INPUT_PULLUP | MUX_MODE4) /* cam_strobe.gpio_126 */
190 OMAP3_CORE1_IOPAD(0x212c, PIN_INPUT_PULLUP | MUX_MODE4) /* cam_d11.gpio_110 */
191 >;
192 };
193
194 lcd_enable_pin: pinmux_lcd_enable_pin {
195 pinctrl-single,pins = <
196 OMAP3_CORE1_IOPAD(0x218a, PIN_OUTPUT | PIN_OFF_OUTPUT_LOW | MUX_MODE4) /* mcbsp4_fs.gpio_155 */
197 >;
198 };
199
200 dss_dpi_pins1: pinmux_dss_dpi_pins1 {
201 pinctrl-single,pins = <
202 OMAP3_CORE1_IOPAD(0x20d4, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_pclk.dss_pclk */
203 OMAP3_CORE1_IOPAD(0x20d6, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_hsync.dss_hsync */
204 OMAP3_CORE1_IOPAD(0x20d8, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_vsync.dss_vsync */
205 OMAP3_CORE1_IOPAD(0x20da, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_acbias.dss_acbias */
206
207 OMAP3_CORE1_IOPAD(0x20dc, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data0.dss_data0 */
208 OMAP3_CORE1_IOPAD(0x20de, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data1.dss_data1 */
209 OMAP3_CORE1_IOPAD(0x20e0, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data2.dss_data2 */
210 OMAP3_CORE1_IOPAD(0x20e2, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data3.dss_data3 */
211 OMAP3_CORE1_IOPAD(0x20e4, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data4.dss_data4 */
212 OMAP3_CORE1_IOPAD(0x20e6, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data5.dss_data5 */
213 OMAP3_CORE1_IOPAD(0x20e8, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data6.dss_data6 */
214 OMAP3_CORE1_IOPAD(0x20ea, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data7.dss_data7 */
215 OMAP3_CORE1_IOPAD(0x20ec, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data8.dss_data8 */
216 OMAP3_CORE1_IOPAD(0x20ee, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data9.dss_data9 */
217 OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data10.dss_data10 */
218 OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data11.dss_data11 */
219 OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data12.dss_data12 */
220 OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data13.dss_data13 */
221 OMAP3_CORE1_IOPAD(0x20f8, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data14.dss_data14 */
222 OMAP3_CORE1_IOPAD(0x20fa, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data15.dss_data15 */
223 >;
224 };
225};
226
227&omap3_pmx_wkup {
228 led_pins_wkup: pinmux_led_pins_wkup {
229 pinctrl-single,pins = <
230 OMAP3_WKUP_IOPAD(0x2a24, PIN_OUTPUT_PULLUP | MUX_MODE4) /* jtag_emu0.gpio_11 / uP_GPIO_1 */
231 >;
232 };
233
234 backlight_pins: pinmux_backlight_pins {
235 pinctrl-single,pins = <
236 OMAP3_WKUP_IOPAD(0x2a16, PIN_OUTPUT | PIN_OFF_OUTPUT_LOW | MUX_MODE4) /* sys_boot6.gpio_8 */
237 >;
238 };
239};
240
241
242&uart1 {
243 interrupts-extended = <&intc 72 &omap3_pmx_core OMAP3_UART1_RX>;
244};
245
246/* Wired to the tps65950 on the SOM, only the USB connector is on the devkit */
247&usb_otg_hs {
248 pinctrl-names = "default";
249 pinctrl-0 = <&hsusb_otg_pins>;
250 interface-type = <0>;
251 usb-phy = <&usb2_phy>;
252 phys = <&usb2_phy>;
253 phy-names = "usb2-phy";
254 mode = <3>;
255 power = <50>;
256};
diff --git a/arch/arm/boot/dts/logicpd-som-lv.dtsi b/arch/arm/boot/dts/logicpd-som-lv.dtsi
index 29cb804d10cc..c1aa7a4518fb 100644
--- a/arch/arm/boot/dts/logicpd-som-lv.dtsi
+++ b/arch/arm/boot/dts/logicpd-som-lv.dtsi
@@ -67,33 +67,6 @@
67 gpmc,device-width = <2>; 67 gpmc,device-width = <2>;
68 #address-cells = <1>; 68 #address-cells = <1>;
69 #size-cells = <1>; 69 #size-cells = <1>;
70
71 /* u-boot uses mtdparts=omap2-nand.0:512k(x-loader),1920k(u-boot),128k(u-boot-env),4m(kernel),-(fs) */
72
73 x-loader@0 {
74 label = "x-loader";
75 reg = <0 0x80000>;
76 };
77
78 bootloaders@80000 {
79 label = "u-boot";
80 reg = <0x80000 0x1e0000>;
81 };
82
83 bootloaders_env@260000 {
84 label = "u-boot-env";
85 reg = <0x260000 0x20000>;
86 };
87
88 kernel@280000 {
89 label = "kernel";
90 reg = <0x280000 0x400000>;
91 };
92
93 filesystem@680000 {
94 label = "fs";
95 reg = <0x680000 0>; /* 0 = MTDPART_SIZ_FULL */
96 };
97 }; 70 };
98}; 71};
99 72
diff --git a/arch/arm/boot/dts/logicpd-torpedo-35xx-devkit.dts b/arch/arm/boot/dts/logicpd-torpedo-35xx-devkit.dts
new file mode 100644
index 000000000000..d7cb659656ce
--- /dev/null
+++ b/arch/arm/boot/dts/logicpd-torpedo-35xx-devkit.dts
@@ -0,0 +1,17 @@
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/dts-v1/;
8
9#include "omap34xx.dtsi"
10#include "logicpd-torpedo-som.dtsi"
11#include "logicpd-torpedo-baseboard.dtsi"
12#include "omap-gpmc-smsc9221.dtsi"
13
14/ {
15 model = "LogicPD Zoom OMAP35xx Torpedo Development Kit";
16 compatible = "logicpd,dm3730-torpedo-devkit", "ti,omap3";
17};
diff --git a/arch/arm/boot/dts/logicpd-torpedo-37xx-devkit.dts b/arch/arm/boot/dts/logicpd-torpedo-37xx-devkit.dts
index b4575bbaf085..234afd6d60ec 100644
--- a/arch/arm/boot/dts/logicpd-torpedo-37xx-devkit.dts
+++ b/arch/arm/boot/dts/logicpd-torpedo-37xx-devkit.dts
@@ -9,396 +9,69 @@
9#include "omap36xx.dtsi" 9#include "omap36xx.dtsi"
10#include "logicpd-torpedo-som.dtsi" 10#include "logicpd-torpedo-som.dtsi"
11#include "omap-gpmc-smsc9221.dtsi" 11#include "omap-gpmc-smsc9221.dtsi"
12#include "logicpd-torpedo-baseboard.dtsi"
12 13
13/ { 14/ {
14 model = "LogicPD Zoom DM3730 Torpedo + Wireless Development Kit"; 15 model = "LogicPD Zoom DM3730 Torpedo + Wireless Development Kit";
15 compatible = "logicpd,dm3730-torpedo-devkit", "ti,omap3630", "ti,omap3"; 16 compatible = "logicpd,dm3730-torpedo-devkit", "ti,omap3630", "ti,omap3";
16 17
17 gpio_keys { 18 wl12xx_vmmc: wl12xx_vmmc {
18 compatible = "gpio-keys";
19 pinctrl-names = "default";
20 pinctrl-0 = <&gpio_key_pins &gpio_key_pins_wkup>;
21
22 sysboot2 {
23 label = "sysboot2";
24 gpios = <&gpio1 2 GPIO_ACTIVE_LOW>; /* gpio2 */
25 linux,code = <BTN_0>;
26 wakeup-source;
27 };
28
29 sysboot5 {
30 label = "sysboot5";
31 gpios = <&gpio1 7 GPIO_ACTIVE_LOW>; /* gpio7 */
32 linux,code = <BTN_1>;
33 wakeup-source;
34 };
35
36 gpio1 {
37 label = "gpio1";
38 gpios = <&gpio6 21 GPIO_ACTIVE_LOW>; /* gpio181 */
39 linux,code = <BTN_2>;
40 wakeup-source;
41 };
42
43 gpio2 {
44 label = "gpio2";
45 gpios = <&gpio6 18 GPIO_ACTIVE_LOW>; /* gpio178 */
46 linux,code = <BTN_3>;
47 wakeup-source;
48 };
49 };
50
51 sound {
52 compatible = "ti,omap-twl4030";
53 ti,model = "omap3logic";
54 ti,mcbsp = <&mcbsp2>;
55 };
56
57 leds {
58 compatible = "gpio-leds";
59 pinctrl-names = "default";
60 pinctrl-0 = <&led_pins>;
61
62 led1 {
63 label = "led1";
64 gpios = <&gpio6 20 GPIO_ACTIVE_HIGH>; /* gpio180 */
65 linux,default-trigger = "cpu0";
66 };
67
68 led2 {
69 label = "led2";
70 gpios = <&gpio6 19 GPIO_ACTIVE_HIGH>; /* gpio179 */
71 linux,default-trigger = "none";
72 };
73 };
74
75 pwm10: dmtimer-pwm {
76 compatible = "ti,omap-dmtimer-pwm";
77 pinctrl-names = "default";
78 pinctrl-0 = <&pwm_pins>;
79 ti,timers = <&timer10>;
80 #pwm-cells = <3>;
81 };
82
83};
84
85&vaux1 {
86 regulator-min-microvolt = <3000000>;
87 regulator-max-microvolt = <3000000>;
88};
89
90&vaux4 {
91 regulator-min-microvolt = <1800000>;
92 regulator-max-microvolt = <1800000>;
93};
94
95&mcbsp2 {
96 status = "okay";
97};
98
99&charger {
100 ti,bb-uvolt = <3200000>;
101 ti,bb-uamp = <150>;
102};
103
104&gpmc {
105 ranges = <0 0 0x30000000 0x1000000 /* CS0: 16MB for NAND */
106 1 0 0x2c000000 0x1000000>; /* CS1: 16MB for LAN9221 */
107
108 ethernet@gpmc {
109 pinctrl-names = "default";
110 pinctrl-0 = <&lan9221_pins>;
111 interrupt-parent = <&gpio5>;
112 interrupts = <1 IRQ_TYPE_LEVEL_LOW>; /* gpio129 */
113 reg = <1 0 0xff>;
114 };
115};
116
117&vpll2 {
118 regulator-always-on;
119};
120
121&dss {
122 status = "ok";
123 vdds_dsi-supply = <&vpll2>;
124 vdda_video-supply = <&video_reg>;
125 pinctrl-names = "default";
126 pinctrl-0 = <&dss_dpi_pins1>;
127 port {
128 dpi_out: endpoint {
129 remote-endpoint = <&lcd_in>;
130 data-lines = <16>;
131 };
132 };
133};
134
135/ {
136 aliases {
137 display0 = &lcd0;
138 };
139
140 video_reg: video_reg {
141 pinctrl-names = "default";
142 pinctrl-0 = <&panel_pwr_pins>;
143 compatible = "regulator-fixed"; 19 compatible = "regulator-fixed";
144 regulator-name = "fixed-supply"; 20 regulator-name = "vwl1271";
145 regulator-min-microvolt = <3300000>; 21 regulator-min-microvolt = <1800000>;
146 regulator-max-microvolt = <3300000>; 22 regulator-max-microvolt = <1800000>;
147 gpio = <&gpio5 27 GPIO_ACTIVE_HIGH>; /* gpio155, lcd INI */ 23 gpio = <&gpio5 29 0>; /* gpio157 */
148 }; 24 startup-delay-us = <70000>;
149 25 enable-active-high;
150 lcd0: display { 26 vin-supply = <&vmmc2>;
151 compatible = "panel-dpi";
152 label = "15";
153 status = "okay";
154 /* default-on; */
155 pinctrl-names = "default";
156
157 port {
158 lcd_in: endpoint {
159 remote-endpoint = <&dpi_out>;
160 };
161 };
162
163 panel-timing {
164 clock-frequency = <9000000>;
165 hactive = <480>;
166 vactive = <272>;
167 hfront-porch = <3>;
168 hback-porch = <2>;
169 hsync-len = <42>;
170 vback-porch = <3>;
171 vfront-porch = <4>;
172 vsync-len = <11>;
173 hsync-active = <0>;
174 vsync-active = <0>;
175 de-active = <1>;
176 pixelclk-active = <1>;
177 };
178 };
179
180 bl: backlight {
181 compatible = "pwm-backlight";
182 pinctrl-names = "default";
183 pinctrl-0 = <&backlight_pins>;
184 pwms = <&pwm10 0 5000000 0>;
185 brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>;
186 default-brightness-level = <7>;
187 enable-gpios = <&gpio5 26 GPIO_ACTIVE_HIGH>; /* gpio_154 */
188 }; 27 };
189}; 28};
190 29
191&mmc1 { 30/*
192 interrupts-extended = <&intc 83 &omap3_pmx_core 0x11a>; 31 * Only found on the wireless SOM. For the SOM without wireless, the pins for
32 * MMC3 can be routed with jumpers to the second MMC slot on the devkit and
33 * gpio157 is not connected. So this should be OK to keep common for now,
34 * probably device tree overlays is the way to go with the various SOM and
35 * jumpering combinations for the long run.
36 */
37&mmc3 {
38 interrupts-extended = <&intc 94 &omap3_pmx_core2 0x46>;
39 pinctrl-0 = <&mmc3_pins &mmc3_core2_pins>;
193 pinctrl-names = "default"; 40 pinctrl-names = "default";
194 pinctrl-0 = <&mmc1_pins &mmc1_cd>; 41 vmmc-supply = <&wl12xx_vmmc>;
195 cd-gpios = <&gpio4 31 GPIO_ACTIVE_LOW>; /* gpio127 */ 42 non-removable;
196 vmmc-supply = <&vmmc1>;
197 bus-width = <4>; 43 bus-width = <4>;
198 cap-power-off-card; 44 cap-power-off-card;
45 #address-cells = <1>;
46 #size-cells = <0>;
47 wlcore: wlcore@2 {
48 compatible = "ti,wl1283";
49 reg = <2>;
50 interrupt-parent = <&gpio5>;
51 interrupts = <24 IRQ_TYPE_LEVEL_HIGH>; /* gpio 152 */
52 ref-clock-frequency = <26000000>;
53 tcxo-clock-frequency = <26000000>;
54 };
199}; 55};
200 56
201&omap3_pmx_core { 57&omap3_pmx_core {
202 gpio_key_pins: pinmux_gpio_key_pins { 58 mmc3_pins: pinmux_mm3_pins {
203 pinctrl-single,pins = <
204 OMAP3_CORE1_IOPAD(0x21d6, PIN_INPUT_PULLUP | MUX_MODE4) /* mcspi2_clk.gpio_178 */
205 OMAP3_CORE1_IOPAD(0x21dc, PIN_INPUT_PULLUP | MUX_MODE4) /* mcspi2_cs0.gpio_181 */
206 >;
207 };
208
209 pwm_pins: pinmux_pwm_pins {
210 pinctrl-single,pins = <
211 OMAP3_CORE1_IOPAD(0x20B8, PIN_OUTPUT | PIN_OFF_OUTPUT_LOW | MUX_MODE3) /* gpmc_ncs5.gpt_10_pwm_evt */
212 >;
213 };
214
215 led_pins: pinmux_led_pins {
216 pinctrl-single,pins = < 59 pinctrl-single,pins = <
217 OMAP3_CORE1_IOPAD(0x21d8, PIN_OUTPUT | MUX_MODE4) /* gpio_179 */ 60 OMAP3_CORE1_IOPAD(0x2164, PIN_INPUT_PULLUP | MUX_MODE3) /* sdmmc2_dat4.sdmmc3_dat0 */
218 OMAP3_CORE1_IOPAD(0x21da, PIN_OUTPUT | MUX_MODE4) /* gpio_180 */ 61 OMAP3_CORE1_IOPAD(0x2166, PIN_INPUT_PULLUP | MUX_MODE3) /* sdmmc2_dat5.sdmmc3_dat1 */
219 >; 62 OMAP3_CORE1_IOPAD(0x2168, PIN_INPUT_PULLUP | MUX_MODE3) /* sdmmc2_dat6.sdmmc3_dat2 */
220 }; 63 OMAP3_CORE1_IOPAD(0x216a, PIN_INPUT_PULLUP | MUX_MODE3) /* sdmmc2_dat6.sdmmc3_dat3 */
221 64 OMAP3_CORE1_IOPAD(0x2184, PIN_INPUT_PULLUP | MUX_MODE4) /* mcbsp4_clkx.gpio_152 */
222 mmc1_pins: pinmux_mmc1_pins { 65 OMAP3_CORE1_IOPAD(0x218e, PIN_OUTPUT | MUX_MODE4) /* mcbsp1_fsr.gpio_157 */
223 pinctrl-single,pins = <
224 OMAP3_CORE1_IOPAD(0x2144, PIN_OUTPUT | MUX_MODE0) /* sdmmc1_clk.sdmmc1_clk */
225 OMAP3_CORE1_IOPAD(0x2146, PIN_INPUT | MUX_MODE0) /* sdmmc1_cmd.sdmmc1_cmd */
226 OMAP3_CORE1_IOPAD(0x2148, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat0.sdmmc1_dat0 */
227 OMAP3_CORE1_IOPAD(0x214a, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat1.sdmmc1_dat1 */
228 OMAP3_CORE1_IOPAD(0x214c, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat2.sdmmc1_dat2 */
229 OMAP3_CORE1_IOPAD(0x214e, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat3.sdmmc1_dat3 */
230 >;
231 };
232
233 tsc2004_pins: pinmux_tsc2004_pins {
234 pinctrl-single,pins = <
235 OMAP3_CORE1_IOPAD(0x2186, PIN_INPUT | MUX_MODE4) /* mcbsp4_dr.gpio_153 */
236 >;
237 };
238
239 backlight_pins: pinmux_backlight_pins {
240 pinctrl-single,pins = <
241 OMAP3_CORE1_IOPAD(0x2188, PIN_OUTPUT | PIN_OFF_OUTPUT_LOW | MUX_MODE4) /* mcbsp4_dx.gpio_154 */
242 >;
243 };
244
245 isp_pins: pinmux_isp_pins {
246 pinctrl-single,pins = <
247 OMAP3_CORE1_IOPAD(0x210c, PIN_INPUT | MUX_MODE0) /* cam_hs.cam_hs */
248 OMAP3_CORE1_IOPAD(0x210e, PIN_INPUT | MUX_MODE0) /* cam_vs.cam_vs */
249 OMAP3_CORE1_IOPAD(0x2110, PIN_INPUT | MUX_MODE0) /* cam_xclka.cam_xclka */
250 OMAP3_CORE1_IOPAD(0x2112, PIN_INPUT | MUX_MODE0) /* cam_pclk.cam_pclk */
251
252 OMAP3_CORE1_IOPAD(0x2116, PIN_INPUT | MUX_MODE0) /* cam_d0.cam_d0 */
253 OMAP3_CORE1_IOPAD(0x2118, PIN_INPUT | MUX_MODE0) /* cam_d1.cam_d1 */
254 OMAP3_CORE1_IOPAD(0x211a, PIN_INPUT | MUX_MODE0) /* cam_d2.cam_d2 */
255 OMAP3_CORE1_IOPAD(0x211c, PIN_INPUT | MUX_MODE0) /* cam_d3.cam_d3 */
256 OMAP3_CORE1_IOPAD(0x211e, PIN_INPUT | MUX_MODE0) /* cam_d4.cam_d4 */
257 OMAP3_CORE1_IOPAD(0x2120, PIN_INPUT | MUX_MODE0) /* cam_d5.cam_d5 */
258 OMAP3_CORE1_IOPAD(0x2122, PIN_INPUT | MUX_MODE0) /* cam_d6.cam_d6 */
259 OMAP3_CORE1_IOPAD(0x2124, PIN_INPUT | MUX_MODE0) /* cam_d7.cam_d7 */
260 >;
261 };
262
263 panel_pwr_pins: pinmux_panel_pwr_pins {
264 pinctrl-single,pins = <
265 OMAP3_CORE1_IOPAD(0x218a, PIN_OUTPUT | PIN_OFF_OUTPUT_LOW | MUX_MODE4) /* mcbsp4_fs.gpio_155 */
266 >;
267 };
268
269 dss_dpi_pins1: pinmux_dss_dpi_pins1 {
270 pinctrl-single,pins = <
271 OMAP3_CORE1_IOPAD(0x20d4, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_pclk.dss_pclk */
272 OMAP3_CORE1_IOPAD(0x20d6, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_hsync.dss_hsync */
273 OMAP3_CORE1_IOPAD(0x20d8, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_vsync.dss_vsync */
274 OMAP3_CORE1_IOPAD(0x20da, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_acbias.dss_acbias */
275
276 OMAP3_CORE1_IOPAD(0x20e8, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data6.dss_data6 */
277 OMAP3_CORE1_IOPAD(0x20ea, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data7.dss_data7 */
278 OMAP3_CORE1_IOPAD(0x20ec, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data8.dss_data8 */
279 OMAP3_CORE1_IOPAD(0x20ee, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data9.dss_data9 */
280 OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data10.dss_data10 */
281 OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data11.dss_data11 */
282 OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data12.dss_data12 */
283 OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data13.dss_data13 */
284 OMAP3_CORE1_IOPAD(0x20f8, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data14.dss_data14 */
285 OMAP3_CORE1_IOPAD(0x20fa, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data15.dss_data15 */
286 OMAP3_CORE1_IOPAD(0x20fc, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data16.dss_data16 */
287 OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data17.dss_data17 */
288
289 OMAP3_CORE1_IOPAD(0x2100, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE3) /* dss_data18.dss_data0 */
290 OMAP3_CORE1_IOPAD(0x2102, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE3) /* dss_data19.dss_data1 */
291 OMAP3_CORE1_IOPAD(0x2104, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE3) /* dss_data20.dss_data2 */
292 OMAP3_CORE1_IOPAD(0x2106, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE3) /* dss_data21.dss_data3 */
293 OMAP3_CORE1_IOPAD(0x2108, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE3) /* dss_data22.dss_data4 */
294 OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE3) /* dss_data23.dss_data5 */
295 >; 66 >;
296 }; 67 };
297}; 68};
298 69
299&omap3_pmx_wkup { 70&omap3_pmx_core2 {
300 gpio_key_pins_wkup: pinmux_gpio_key_pins_wkup { 71 mmc3_core2_pins: pinmux_mmc3_core2_pins {
301 pinctrl-single,pins = <
302 OMAP3_WKUP_IOPAD(0x2a0a, PIN_INPUT_PULLUP | MUX_MODE4) /* sys_boot0.gpio_2 */
303 OMAP3_WKUP_IOPAD(0x2a14, PIN_INPUT_PULLUP | MUX_MODE4) /* sys_boot5.gpio_7 */
304 >;
305 };
306
307 lan9221_pins: pinmux_lan9221_pins {
308 pinctrl-single,pins = <
309 OMAP3_WKUP_IOPAD(0x2a5a, PIN_INPUT | MUX_MODE4) /* reserved.gpio_129 */
310 >;
311 };
312
313 mmc1_cd: pinmux_mmc1_cd {
314 pinctrl-single,pins = < 72 pinctrl-single,pins = <
315 OMAP3_WKUP_IOPAD(0x2a54, PIN_INPUT_PULLUP | MUX_MODE4) /* reserved.gpio_127 */ 73 OMAP3630_CORE2_IOPAD(0x25d8, PIN_INPUT_PULLUP | MUX_MODE2) /* etk_clk.sdmmc3_clk */
74 OMAP3630_CORE2_IOPAD(0x25da, PIN_INPUT_PULLUP | MUX_MODE2) /* etk_ctl.sdmmc3_cmd */
316 >; 75 >;
317 }; 76 };
318}; 77};
319
320&i2c2 {
321 mt9p031@48 {
322 compatible = "aptina,mt9p031";
323 reg = <0x48>;
324 clocks = <&isp 0>;
325 vaa-supply = <&vaux4>;
326 vdd-supply = <&vaux4>;
327 vdd_io-supply = <&vaux4>;
328 port {
329 mt9p031_out: endpoint {
330 input-clock-frequency = <24000000>;
331 pixel-clock-frequency = <72000000>;
332 remote-endpoint = <&ccdc_ep>;
333 };
334 };
335 };
336};
337
338&i2c3 {
339 touchscreen: tsc2004@48 {
340 compatible = "ti,tsc2004";
341 reg = <0x48>;
342 vio-supply = <&vaux1>;
343 pinctrl-names = "default";
344 pinctrl-0 = <&tsc2004_pins>;
345 interrupts-extended = <&gpio5 25 IRQ_TYPE_EDGE_RISING>; /* gpio 153 */
346
347 touchscreen-fuzz-x = <4>;
348 touchscreen-fuzz-y = <7>;
349 touchscreen-fuzz-pressure = <2>;
350 touchscreen-size-x = <4096>;
351 touchscreen-size-y = <4096>;
352 touchscreen-max-pressure = <2048>;
353
354 ti,x-plate-ohms = <280>;
355 ti,esd-recovery-timeout-ms = <8000>;
356 };
357};
358
359&mcspi1 {
360 at25@0 {
361 compatible = "atmel,at25";
362 reg = <0>;
363 spi-max-frequency = <5000000>;
364 spi-cpha;
365 spi-cpol;
366
367 pagesize = <64>;
368 size = <32768>;
369 address-width = <16>;
370 };
371};
372
373&isp {
374 pinctrl-names = "default";
375 pinctrl-0 = <&isp_pins>;
376 ports {
377 port@0 {
378 reg = <0>;
379 ccdc_ep: endpoint {
380 remote-endpoint = <&mt9p031_out>;
381 bus-width = <8>;
382 hsync-active = <1>;
383 vsync-active = <1>;
384 pclk-sample = <0>;
385 };
386 };
387 };
388};
389
390&uart1 {
391 interrupts-extended = <&intc 72 &omap3_pmx_core OMAP3_UART1_RX>;
392};
393
394/* Wired to the tps65950 on the SOM, only the USB connector is on the devkit */
395&usb_otg_hs {
396 pinctrl-names = "default";
397 pinctrl-0 = <&hsusb_otg_pins>;
398 interface-type = <0>;
399 usb-phy = <&usb2_phy>;
400 phys = <&usb2_phy>;
401 phy-names = "usb2-phy";
402 mode = <3>;
403 power = <50>;
404};
diff --git a/arch/arm/boot/dts/logicpd-torpedo-baseboard.dtsi b/arch/arm/boot/dts/logicpd-torpedo-baseboard.dtsi
new file mode 100644
index 000000000000..86c5644f558c
--- /dev/null
+++ b/arch/arm/boot/dts/logicpd-torpedo-baseboard.dtsi
@@ -0,0 +1,395 @@
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/ {
8 gpio_keys {
9 compatible = "gpio-keys";
10 pinctrl-names = "default";
11 pinctrl-0 = <&gpio_key_pins &gpio_key_pins_wkup>;
12
13 sysboot2 {
14 label = "sysboot2";
15 gpios = <&gpio1 2 GPIO_ACTIVE_LOW>; /* gpio2 */
16 linux,code = <BTN_0>;
17 wakeup-source;
18 };
19
20 sysboot5 {
21 label = "sysboot5";
22 gpios = <&gpio1 7 GPIO_ACTIVE_LOW>; /* gpio7 */
23 linux,code = <BTN_1>;
24 wakeup-source;
25 };
26
27 gpio1 {
28 label = "gpio1";
29 gpios = <&gpio6 21 GPIO_ACTIVE_LOW>; /* gpio181 */
30 linux,code = <BTN_2>;
31 wakeup-source;
32 };
33
34 gpio2 {
35 label = "gpio2";
36 gpios = <&gpio6 18 GPIO_ACTIVE_LOW>; /* gpio178 */
37 linux,code = <BTN_3>;
38 wakeup-source;
39 };
40 };
41
42 sound {
43 compatible = "ti,omap-twl4030";
44 ti,model = "omap3logic";
45 ti,mcbsp = <&mcbsp2>;
46 };
47
48 leds {
49 compatible = "gpio-leds";
50 pinctrl-names = "default";
51 pinctrl-0 = <&led_pins>;
52
53 led1 {
54 label = "led1";
55 gpios = <&gpio6 20 GPIO_ACTIVE_HIGH>; /* gpio180 */
56 linux,default-trigger = "cpu0";
57 };
58
59 led2 {
60 label = "led2";
61 gpios = <&gpio6 19 GPIO_ACTIVE_HIGH>; /* gpio179 */
62 linux,default-trigger = "none";
63 };
64 };
65
66 pwm10: dmtimer-pwm {
67 compatible = "ti,omap-dmtimer-pwm";
68 pinctrl-names = "default";
69 pinctrl-0 = <&pwm_pins>;
70 ti,timers = <&timer10>;
71 #pwm-cells = <3>;
72 };
73
74};
75
76&vaux1 {
77 regulator-min-microvolt = <3000000>;
78 regulator-max-microvolt = <3000000>;
79};
80
81&vaux4 {
82 regulator-min-microvolt = <1800000>;
83 regulator-max-microvolt = <1800000>;
84};
85
86&mcbsp2 {
87 status = "okay";
88};
89
90&charger {
91 ti,bb-uvolt = <3200000>;
92 ti,bb-uamp = <150>;
93};
94
95&gpmc {
96 ranges = <0 0 0x30000000 0x1000000 /* CS0: 16MB for NAND */
97 1 0 0x2c000000 0x1000000>; /* CS1: 16MB for LAN9221 */
98
99 ethernet@gpmc {
100 pinctrl-names = "default";
101 pinctrl-0 = <&lan9221_pins>;
102 interrupt-parent = <&gpio5>;
103 interrupts = <1 IRQ_TYPE_LEVEL_LOW>; /* gpio129 */
104 reg = <1 0 0xff>;
105 };
106};
107
108&vpll2 {
109 regulator-always-on;
110};
111
112&dss {
113 status = "ok";
114 vdds_dsi-supply = <&vpll2>;
115 vdda_video-supply = <&video_reg>;
116 pinctrl-names = "default";
117 pinctrl-0 = <&dss_dpi_pins1>;
118 port {
119 dpi_out: endpoint {
120 remote-endpoint = <&lcd_in>;
121 data-lines = <16>;
122 };
123 };
124};
125
126/ {
127 aliases {
128 display0 = &lcd0;
129 };
130
131 video_reg: video_reg {
132 pinctrl-names = "default";
133 pinctrl-0 = <&panel_pwr_pins>;
134 compatible = "regulator-fixed";
135 regulator-name = "fixed-supply";
136 regulator-min-microvolt = <3300000>;
137 regulator-max-microvolt = <3300000>;
138 gpio = <&gpio5 27 GPIO_ACTIVE_HIGH>; /* gpio155, lcd INI */
139 };
140
141 lcd0: display {
142 compatible = "panel-dpi";
143 label = "15";
144 status = "okay";
145 /* default-on; */
146 pinctrl-names = "default";
147
148 port {
149 lcd_in: endpoint {
150 remote-endpoint = <&dpi_out>;
151 };
152 };
153
154 panel-timing {
155 clock-frequency = <9000000>;
156 hactive = <480>;
157 vactive = <272>;
158 hfront-porch = <3>;
159 hback-porch = <2>;
160 hsync-len = <42>;
161 vback-porch = <3>;
162 vfront-porch = <4>;
163 vsync-len = <11>;
164 hsync-active = <0>;
165 vsync-active = <0>;
166 de-active = <1>;
167 pixelclk-active = <1>;
168 };
169 };
170
171 bl: backlight {
172 compatible = "pwm-backlight";
173 pinctrl-names = "default";
174 pinctrl-0 = <&backlight_pins>;
175 pwms = <&pwm10 0 5000000 0>;
176 brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>;
177 default-brightness-level = <7>;
178 enable-gpios = <&gpio5 26 GPIO_ACTIVE_HIGH>; /* gpio_154 */
179 };
180};
181
182&mmc1 {
183 interrupts-extended = <&intc 83 &omap3_pmx_core 0x11a>;
184 pinctrl-names = "default";
185 pinctrl-0 = <&mmc1_pins &mmc1_cd>;
186 cd-gpios = <&gpio4 31 GPIO_ACTIVE_LOW>; /* gpio127 */
187 vmmc-supply = <&vmmc1>;
188 bus-width = <4>;
189 cap-power-off-card;
190};
191
192&omap3_pmx_core {
193 gpio_key_pins: pinmux_gpio_key_pins {
194 pinctrl-single,pins = <
195 OMAP3_CORE1_IOPAD(0x21d6, PIN_INPUT_PULLUP | MUX_MODE4) /* mcspi2_clk.gpio_178 */
196 OMAP3_CORE1_IOPAD(0x21dc, PIN_INPUT_PULLUP | MUX_MODE4) /* mcspi2_cs0.gpio_181 */
197 >;
198 };
199
200 pwm_pins: pinmux_pwm_pins {
201 pinctrl-single,pins = <
202 OMAP3_CORE1_IOPAD(0x20B8, PIN_OUTPUT | PIN_OFF_OUTPUT_LOW | MUX_MODE3) /* gpmc_ncs5.gpt_10_pwm_evt */
203 >;
204 };
205
206 led_pins: pinmux_led_pins {
207 pinctrl-single,pins = <
208 OMAP3_CORE1_IOPAD(0x21d8, PIN_OUTPUT | MUX_MODE4) /* gpio_179 */
209 OMAP3_CORE1_IOPAD(0x21da, PIN_OUTPUT | MUX_MODE4) /* gpio_180 */
210 >;
211 };
212
213 mmc1_pins: pinmux_mmc1_pins {
214 pinctrl-single,pins = <
215 OMAP3_CORE1_IOPAD(0x2144, PIN_OUTPUT | MUX_MODE0) /* sdmmc1_clk.sdmmc1_clk */
216 OMAP3_CORE1_IOPAD(0x2146, PIN_INPUT | MUX_MODE0) /* sdmmc1_cmd.sdmmc1_cmd */
217 OMAP3_CORE1_IOPAD(0x2148, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat0.sdmmc1_dat0 */
218 OMAP3_CORE1_IOPAD(0x214a, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat1.sdmmc1_dat1 */
219 OMAP3_CORE1_IOPAD(0x214c, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat2.sdmmc1_dat2 */
220 OMAP3_CORE1_IOPAD(0x214e, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat3.sdmmc1_dat3 */
221 >;
222 };
223
224 tsc2004_pins: pinmux_tsc2004_pins {
225 pinctrl-single,pins = <
226 OMAP3_CORE1_IOPAD(0x2186, PIN_INPUT | MUX_MODE4) /* mcbsp4_dr.gpio_153 */
227 >;
228 };
229
230 backlight_pins: pinmux_backlight_pins {
231 pinctrl-single,pins = <
232 OMAP3_CORE1_IOPAD(0x2188, PIN_OUTPUT | PIN_OFF_OUTPUT_LOW | MUX_MODE4) /* mcbsp4_dx.gpio_154 */
233 >;
234 };
235
236 isp_pins: pinmux_isp_pins {
237 pinctrl-single,pins = <
238 OMAP3_CORE1_IOPAD(0x210c, PIN_INPUT | MUX_MODE0) /* cam_hs.cam_hs */
239 OMAP3_CORE1_IOPAD(0x210e, PIN_INPUT | MUX_MODE0) /* cam_vs.cam_vs */
240 OMAP3_CORE1_IOPAD(0x2110, PIN_INPUT | MUX_MODE0) /* cam_xclka.cam_xclka */
241 OMAP3_CORE1_IOPAD(0x2112, PIN_INPUT | MUX_MODE0) /* cam_pclk.cam_pclk */
242
243 OMAP3_CORE1_IOPAD(0x2116, PIN_INPUT | MUX_MODE0) /* cam_d0.cam_d0 */
244 OMAP3_CORE1_IOPAD(0x2118, PIN_INPUT | MUX_MODE0) /* cam_d1.cam_d1 */
245 OMAP3_CORE1_IOPAD(0x211a, PIN_INPUT | MUX_MODE0) /* cam_d2.cam_d2 */
246 OMAP3_CORE1_IOPAD(0x211c, PIN_INPUT | MUX_MODE0) /* cam_d3.cam_d3 */
247 OMAP3_CORE1_IOPAD(0x211e, PIN_INPUT | MUX_MODE0) /* cam_d4.cam_d4 */
248 OMAP3_CORE1_IOPAD(0x2120, PIN_INPUT | MUX_MODE0) /* cam_d5.cam_d5 */
249 OMAP3_CORE1_IOPAD(0x2122, PIN_INPUT | MUX_MODE0) /* cam_d6.cam_d6 */
250 OMAP3_CORE1_IOPAD(0x2124, PIN_INPUT | MUX_MODE0) /* cam_d7.cam_d7 */
251 >;
252 };
253
254 panel_pwr_pins: pinmux_panel_pwr_pins {
255 pinctrl-single,pins = <
256 OMAP3_CORE1_IOPAD(0x218a, PIN_OUTPUT | PIN_OFF_OUTPUT_LOW | MUX_MODE4) /* mcbsp4_fs.gpio_155 */
257 >;
258 };
259
260 dss_dpi_pins1: pinmux_dss_dpi_pins1 {
261 pinctrl-single,pins = <
262 OMAP3_CORE1_IOPAD(0x20d4, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_pclk.dss_pclk */
263 OMAP3_CORE1_IOPAD(0x20d6, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_hsync.dss_hsync */
264 OMAP3_CORE1_IOPAD(0x20d8, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_vsync.dss_vsync */
265 OMAP3_CORE1_IOPAD(0x20da, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_acbias.dss_acbias */
266
267 OMAP3_CORE1_IOPAD(0x20e8, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data6.dss_data6 */
268 OMAP3_CORE1_IOPAD(0x20ea, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data7.dss_data7 */
269 OMAP3_CORE1_IOPAD(0x20ec, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data8.dss_data8 */
270 OMAP3_CORE1_IOPAD(0x20ee, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data9.dss_data9 */
271 OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data10.dss_data10 */
272 OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data11.dss_data11 */
273 OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data12.dss_data12 */
274 OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data13.dss_data13 */
275 OMAP3_CORE1_IOPAD(0x20f8, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data14.dss_data14 */
276 OMAP3_CORE1_IOPAD(0x20fa, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data15.dss_data15 */
277 OMAP3_CORE1_IOPAD(0x20fc, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data16.dss_data16 */
278 OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data17.dss_data17 */
279
280 OMAP3_CORE1_IOPAD(0x2100, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE3) /* dss_data18.dss_data0 */
281 OMAP3_CORE1_IOPAD(0x2102, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE3) /* dss_data19.dss_data1 */
282 OMAP3_CORE1_IOPAD(0x2104, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE3) /* dss_data20.dss_data2 */
283 OMAP3_CORE1_IOPAD(0x2106, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE3) /* dss_data21.dss_data3 */
284 OMAP3_CORE1_IOPAD(0x2108, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE3) /* dss_data22.dss_data4 */
285 OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE3) /* dss_data23.dss_data5 */
286 >;
287 };
288};
289
290&omap3_pmx_wkup {
291 gpio_key_pins_wkup: pinmux_gpio_key_pins_wkup {
292 pinctrl-single,pins = <
293 OMAP3_WKUP_IOPAD(0x2a0a, PIN_INPUT_PULLUP | MUX_MODE4) /* sys_boot0.gpio_2 */
294 OMAP3_WKUP_IOPAD(0x2a14, PIN_INPUT_PULLUP | MUX_MODE4) /* sys_boot5.gpio_7 */
295 >;
296 };
297
298 lan9221_pins: pinmux_lan9221_pins {
299 pinctrl-single,pins = <
300 OMAP3_WKUP_IOPAD(0x2a5a, PIN_INPUT | MUX_MODE4) /* reserved.gpio_129 */
301 >;
302 };
303
304 mmc1_cd: pinmux_mmc1_cd {
305 pinctrl-single,pins = <
306 OMAP3_WKUP_IOPAD(0x2a54, PIN_INPUT_PULLUP | MUX_MODE4) /* reserved.gpio_127 */
307 >;
308 };
309};
310
311&i2c2 {
312 mt9p031@48 {
313 compatible = "aptina,mt9p031";
314 reg = <0x48>;
315 clocks = <&isp 0>;
316 vaa-supply = <&vaux4>;
317 vdd-supply = <&vaux4>;
318 vdd_io-supply = <&vaux4>;
319 port {
320 mt9p031_out: endpoint {
321 input-clock-frequency = <24000000>;
322 pixel-clock-frequency = <72000000>;
323 remote-endpoint = <&ccdc_ep>;
324 };
325 };
326 };
327};
328
329&i2c3 {
330 touchscreen: tsc2004@48 {
331 compatible = "ti,tsc2004";
332 reg = <0x48>;
333 vio-supply = <&vaux1>;
334 pinctrl-names = "default";
335 pinctrl-0 = <&tsc2004_pins>;
336 interrupts-extended = <&gpio5 25 IRQ_TYPE_EDGE_RISING>; /* gpio 153 */
337
338 touchscreen-fuzz-x = <4>;
339 touchscreen-fuzz-y = <7>;
340 touchscreen-fuzz-pressure = <2>;
341 touchscreen-size-x = <4096>;
342 touchscreen-size-y = <4096>;
343 touchscreen-max-pressure = <2048>;
344
345 ti,x-plate-ohms = <280>;
346 ti,esd-recovery-timeout-ms = <8000>;
347 };
348};
349
350&mcspi1 {
351 at25@0 {
352 compatible = "atmel,at25";
353 reg = <0>;
354 spi-max-frequency = <5000000>;
355 spi-cpha;
356 spi-cpol;
357
358 pagesize = <64>;
359 size = <32768>;
360 address-width = <16>;
361 };
362};
363
364&isp {
365 pinctrl-names = "default";
366 pinctrl-0 = <&isp_pins>;
367 ports {
368 port@0 {
369 reg = <0>;
370 ccdc_ep: endpoint {
371 remote-endpoint = <&mt9p031_out>;
372 bus-width = <8>;
373 hsync-active = <1>;
374 vsync-active = <1>;
375 pclk-sample = <0>;
376 };
377 };
378 };
379};
380
381&uart1 {
382 interrupts-extended = <&intc 72 &omap3_pmx_core OMAP3_UART1_RX>;
383};
384
385/* Wired to the tps65950 on the SOM, only the USB connector is on the devkit */
386&usb_otg_hs {
387 pinctrl-names = "default";
388 pinctrl-0 = <&hsusb_otg_pins>;
389 interface-type = <0>;
390 usb-phy = <&usb2_phy>;
391 phys = <&usb2_phy>;
392 phy-names = "usb2-phy";
393 mode = <3>;
394 power = <50>;
395};
diff --git a/arch/arm/boot/dts/logicpd-torpedo-som.dtsi b/arch/arm/boot/dts/logicpd-torpedo-som.dtsi
index 6d89736c7b44..b50b796e15c7 100644
--- a/arch/arm/boot/dts/logicpd-torpedo-som.dtsi
+++ b/arch/arm/boot/dts/logicpd-torpedo-som.dtsi
@@ -30,17 +30,6 @@
30 linux,default-trigger = "none"; 30 linux,default-trigger = "none";
31 }; 31 };
32 }; 32 };
33
34 wl12xx_vmmc: wl12xx_vmmc {
35 compatible = "regulator-fixed";
36 regulator-name = "vwl1271";
37 regulator-min-microvolt = <1800000>;
38 regulator-max-microvolt = <1800000>;
39 gpio = <&gpio5 29 0>; /* gpio157 */
40 startup-delay-us = <70000>;
41 enable-active-high;
42 vin-supply = <&vmmc2>;
43 };
44}; 33};
45 34
46&gpmc { 35&gpmc {
@@ -73,33 +62,6 @@
73 gpmc,device-width = <2>; 62 gpmc,device-width = <2>;
74 #address-cells = <1>; 63 #address-cells = <1>;
75 #size-cells = <1>; 64 #size-cells = <1>;
76
77 /* u-boot uses mtdparts=omap2-nand.0:512k(x-loader),1920k(u-boot),128k(u-boot-env),4m(kernel),-(fs) */
78
79 x-loader@0 {
80 label = "x-loader";
81 reg = <0 0x80000>;
82 };
83
84 bootloaders@80000 {
85 label = "u-boot";
86 reg = <0x80000 0x1e0000>;
87 };
88
89 bootloaders_env@260000 {
90 label = "u-boot-env";
91 reg = <0x260000 0x20000>;
92 };
93
94 kernel@280000 {
95 label = "kernel";
96 reg = <0x280000 0x400000>;
97 };
98
99 filesystem@680000 {
100 label = "fs";
101 reg = <0x680000 0>; /* 0 = MTDPART_SIZ_FULL */
102 };
103 }; 65 };
104}; 66};
105 67
@@ -131,44 +93,7 @@
131 }; 93 };
132}; 94};
133 95
134/*
135 * Only found on the wireless SOM. For the SOM without wireless, the pins for
136 * MMC3 can be routed with jumpers to the second MMC slot on the devkit and
137 * gpio157 is not connected. So this should be OK to keep common for now,
138 * probably device tree overlays is the way to go with the various SOM and
139 * jumpering combinations for the long run.
140 */
141&mmc3 {
142 interrupts-extended = <&intc 94 &omap3_pmx_core2 0x46>;
143 pinctrl-0 = <&mmc3_pins &mmc3_core2_pins>;
144 pinctrl-names = "default";
145 vmmc-supply = <&wl12xx_vmmc>;
146 non-removable;
147 bus-width = <4>;
148 cap-power-off-card;
149 #address-cells = <1>;
150 #size-cells = <0>;
151 wlcore: wlcore@2 {
152 compatible = "ti,wl1283";
153 reg = <2>;
154 interrupt-parent = <&gpio5>;
155 interrupts = <24 IRQ_TYPE_LEVEL_HIGH>; /* gpio 152 */
156 ref-clock-frequency = <26000000>;
157 tcxo-clock-frequency = <26000000>;
158 };
159};
160
161&omap3_pmx_core { 96&omap3_pmx_core {
162 mmc3_pins: pinmux_mm3_pins {
163 pinctrl-single,pins = <
164 OMAP3_CORE1_IOPAD(0x2164, PIN_INPUT_PULLUP | MUX_MODE3) /* sdmmc2_dat4.sdmmc3_dat0 */
165 OMAP3_CORE1_IOPAD(0x2166, PIN_INPUT_PULLUP | MUX_MODE3) /* sdmmc2_dat5.sdmmc3_dat1 */
166 OMAP3_CORE1_IOPAD(0x2168, PIN_INPUT_PULLUP | MUX_MODE3) /* sdmmc2_dat6.sdmmc3_dat2 */
167 OMAP3_CORE1_IOPAD(0x216a, PIN_INPUT_PULLUP | MUX_MODE3) /* sdmmc2_dat6.sdmmc3_dat3 */
168 OMAP3_CORE1_IOPAD(0x2184, PIN_INPUT_PULLUP | MUX_MODE4) /* mcbsp4_clkx.gpio_152 */
169 OMAP3_CORE1_IOPAD(0x218e, PIN_OUTPUT | MUX_MODE4) /* mcbsp1_fsr.gpio_157 */
170 >;
171 };
172 mcbsp2_pins: pinmux_mcbsp2_pins { 97 mcbsp2_pins: pinmux_mcbsp2_pins {
173 pinctrl-single,pins = < 98 pinctrl-single,pins = <
174 OMAP3_CORE1_IOPAD(0x213c, PIN_INPUT | MUX_MODE0) /* mcbsp2_fsx */ 99 OMAP3_CORE1_IOPAD(0x213c, PIN_INPUT | MUX_MODE0) /* mcbsp2_fsx */
@@ -224,15 +149,6 @@
224 pinctrl-0 = <&mcspi1_pins>; 149 pinctrl-0 = <&mcspi1_pins>;
225}; 150};
226 151
227&omap3_pmx_core2 {
228 mmc3_core2_pins: pinmux_mmc3_core2_pins {
229 pinctrl-single,pins = <
230 OMAP3630_CORE2_IOPAD(0x25d8, PIN_INPUT_PULLUP | MUX_MODE2) /* etk_clk.sdmmc3_clk */
231 OMAP3630_CORE2_IOPAD(0x25da, PIN_INPUT_PULLUP | MUX_MODE2) /* etk_ctl.sdmmc3_cmd */
232 >;
233 };
234};
235
236#include "twl4030.dtsi" 152#include "twl4030.dtsi"
237#include "twl4030_omap3.dtsi" 153#include "twl4030_omap3.dtsi"
238 154
diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts
index 669c51c00c00..5362139d5312 100644
--- a/arch/arm/boot/dts/omap3-n900.dts
+++ b/arch/arm/boot/dts/omap3-n900.dts
@@ -558,7 +558,7 @@
558 tlv320aic3x: tlv320aic3x@18 { 558 tlv320aic3x: tlv320aic3x@18 {
559 compatible = "ti,tlv320aic3x"; 559 compatible = "ti,tlv320aic3x";
560 reg = <0x18>; 560 reg = <0x18>;
561 gpio-reset = <&gpio2 28 GPIO_ACTIVE_HIGH>; /* 60 */ 561 reset-gpios = <&gpio2 28 GPIO_ACTIVE_LOW>; /* 60 */
562 ai3x-gpio-func = < 562 ai3x-gpio-func = <
563 0 /* AIC3X_GPIO1_FUNC_DISABLED */ 563 0 /* AIC3X_GPIO1_FUNC_DISABLED */
564 5 /* AIC3X_GPIO2_FUNC_DIGITAL_MIC_INPUT */ 564 5 /* AIC3X_GPIO2_FUNC_DIGITAL_MIC_INPUT */
@@ -575,7 +575,7 @@
575 tlv320aic3x_aux: tlv320aic3x@19 { 575 tlv320aic3x_aux: tlv320aic3x@19 {
576 compatible = "ti,tlv320aic3x"; 576 compatible = "ti,tlv320aic3x";
577 reg = <0x19>; 577 reg = <0x19>;
578 gpio-reset = <&gpio2 28 GPIO_ACTIVE_HIGH>; /* 60 */ 578 reset-gpios = <&gpio2 28 GPIO_ACTIVE_LOW>; /* 60 */
579 579
580 AVDD-supply = <&vmmc2>; 580 AVDD-supply = <&vmmc2>;
581 DRVDD-supply = <&vmmc2>; 581 DRVDD-supply = <&vmmc2>;