xref: /freebsd-src/sys/contrib/device-tree/src/arm/ti/omap/omap3-evm-common.dtsi (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Common support for omap3 EVM boards
4*f126890aSEmmanuel Vadot */
5*f126890aSEmmanuel Vadot
6*f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h>
7*f126890aSEmmanuel Vadot#include "omap-gpmc-smsc911x.dtsi"
8*f126890aSEmmanuel Vadot
9*f126890aSEmmanuel Vadot/ {
10*f126890aSEmmanuel Vadot	cpus {
11*f126890aSEmmanuel Vadot		cpu@0 {
12*f126890aSEmmanuel Vadot			cpu0-supply = <&vcc>;
13*f126890aSEmmanuel Vadot		};
14*f126890aSEmmanuel Vadot	};
15*f126890aSEmmanuel Vadot
16*f126890aSEmmanuel Vadot	/* HS USB Port 2 Power */
17*f126890aSEmmanuel Vadot	hsusb2_power: hsusb2_power_reg {
18*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
19*f126890aSEmmanuel Vadot		regulator-name = "hsusb2_vbus";
20*f126890aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
21*f126890aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
22*f126890aSEmmanuel Vadot		gpio = <&gpio1 22 GPIO_ACTIVE_HIGH>; /* gpio_22 */
23*f126890aSEmmanuel Vadot		startup-delay-us = <70000>;
24*f126890aSEmmanuel Vadot		enable-active-high;
25*f126890aSEmmanuel Vadot	};
26*f126890aSEmmanuel Vadot
27*f126890aSEmmanuel Vadot	/* HS USB Host PHY on PORT 2 */
28*f126890aSEmmanuel Vadot	hsusb2_phy: hsusb2-phy-pins {
29*f126890aSEmmanuel Vadot		compatible = "usb-nop-xceiv";
30*f126890aSEmmanuel Vadot		reset-gpios = <&gpio1 21 GPIO_ACTIVE_LOW>; /* gpio_21 */
31*f126890aSEmmanuel Vadot		vcc-supply = <&hsusb2_power>;
32*f126890aSEmmanuel Vadot		#phy-cells = <0>;
33*f126890aSEmmanuel Vadot	};
34*f126890aSEmmanuel Vadot
35*f126890aSEmmanuel Vadot	leds {
36*f126890aSEmmanuel Vadot		compatible = "gpio-leds";
37*f126890aSEmmanuel Vadot		ledb {
38*f126890aSEmmanuel Vadot			label = "omap3evm::ledb";
39*f126890aSEmmanuel Vadot			gpios = <&twl_gpio 19 GPIO_ACTIVE_HIGH>; /* LEDB */
40*f126890aSEmmanuel Vadot			linux,default-trigger = "default-on";
41*f126890aSEmmanuel Vadot		};
42*f126890aSEmmanuel Vadot	};
43*f126890aSEmmanuel Vadot
44*f126890aSEmmanuel Vadot	wl12xx_vmmc: wl12xx_vmmc {
45*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
46*f126890aSEmmanuel Vadot		regulator-name = "vwl1271";
47*f126890aSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
48*f126890aSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
49*f126890aSEmmanuel Vadot		gpio = <&gpio5 22 GPIO_ACTIVE_HIGH>;	/* gpio150 */
50*f126890aSEmmanuel Vadot		startup-delay-us = <70000>;
51*f126890aSEmmanuel Vadot		enable-active-high;
52*f126890aSEmmanuel Vadot		vin-supply = <&vmmc2>;
53*f126890aSEmmanuel Vadot	};
54*f126890aSEmmanuel Vadot};
55*f126890aSEmmanuel Vadot
56*f126890aSEmmanuel Vadot&i2c1 {
57*f126890aSEmmanuel Vadot	clock-frequency = <2600000>;
58*f126890aSEmmanuel Vadot
59*f126890aSEmmanuel Vadot	twl: twl@48 {
60*f126890aSEmmanuel Vadot		reg = <0x48>;
61*f126890aSEmmanuel Vadot		interrupts = <7>; /* SYS_NIRQ cascaded to intc */
62*f126890aSEmmanuel Vadot		interrupt-parent = <&intc>;
63*f126890aSEmmanuel Vadot	};
64*f126890aSEmmanuel Vadot};
65*f126890aSEmmanuel Vadot
66*f126890aSEmmanuel Vadot#include "twl4030.dtsi"
67*f126890aSEmmanuel Vadot#include "twl4030_omap3.dtsi"
68*f126890aSEmmanuel Vadot#include "omap3-panel-sharp-ls037v7dw01.dtsi"
69*f126890aSEmmanuel Vadot
70*f126890aSEmmanuel Vadot&backlight0 {
71*f126890aSEmmanuel Vadot	gpios = <&twl_gpio 18 GPIO_ACTIVE_LOW>;
72*f126890aSEmmanuel Vadot};
73*f126890aSEmmanuel Vadot
74*f126890aSEmmanuel Vadot&twl {
75*f126890aSEmmanuel Vadot	twl_power: power {
76*f126890aSEmmanuel Vadot		compatible = "ti,twl4030-power-omap3-evm", "ti,twl4030-power-idle";
77*f126890aSEmmanuel Vadot		ti,use_poweroff;
78*f126890aSEmmanuel Vadot	};
79*f126890aSEmmanuel Vadot};
80*f126890aSEmmanuel Vadot
81*f126890aSEmmanuel Vadot&i2c2 {
82*f126890aSEmmanuel Vadot	clock-frequency = <400000>;
83*f126890aSEmmanuel Vadot};
84*f126890aSEmmanuel Vadot
85*f126890aSEmmanuel Vadot&i2c3 {
86*f126890aSEmmanuel Vadot	clock-frequency = <400000>;
87*f126890aSEmmanuel Vadot
88*f126890aSEmmanuel Vadot	/*
89*f126890aSEmmanuel Vadot	 * TVP5146 Video decoder-in for analog input support.
90*f126890aSEmmanuel Vadot	 */
91*f126890aSEmmanuel Vadot	tvp5146@5c {
92*f126890aSEmmanuel Vadot		compatible = "ti,tvp5146m2";
93*f126890aSEmmanuel Vadot		reg = <0x5c>;
94*f126890aSEmmanuel Vadot	};
95*f126890aSEmmanuel Vadot};
96*f126890aSEmmanuel Vadot
97*f126890aSEmmanuel Vadot&lcd_3v3 {
98*f126890aSEmmanuel Vadot	gpio = <&gpio5 25 GPIO_ACTIVE_LOW>;	/* gpio153 */
99*f126890aSEmmanuel Vadot};
100*f126890aSEmmanuel Vadot
101*f126890aSEmmanuel Vadot&lcd0 {
102*f126890aSEmmanuel Vadot	enable-gpios = <&gpio5 24 GPIO_ACTIVE_HIGH>;	/* gpio152, lcd INI */
103*f126890aSEmmanuel Vadot	reset-gpios = <&gpio5 27 GPIO_ACTIVE_HIGH>;	/* gpio155, lcd RESB */
104*f126890aSEmmanuel Vadot	mode-gpios = <&gpio5 26 GPIO_ACTIVE_HIGH	/* gpio154, lcd MO */
105*f126890aSEmmanuel Vadot		      &gpio1 2 GPIO_ACTIVE_HIGH		/* gpio2, lcd LR */
106*f126890aSEmmanuel Vadot		      &gpio1 3 GPIO_ACTIVE_HIGH>;	/* gpio3, lcd UD */
107*f126890aSEmmanuel Vadot};
108*f126890aSEmmanuel Vadot
109*f126890aSEmmanuel Vadot&mcspi1 {
110*f126890aSEmmanuel Vadot	tsc2046@0 {
111*f126890aSEmmanuel Vadot		interrupt-parent = <&gpio6>;
112*f126890aSEmmanuel Vadot		interrupts = <15 0>;		/* gpio175 */
113*f126890aSEmmanuel Vadot		pendown-gpio = <&gpio6 15 GPIO_ACTIVE_HIGH>;
114*f126890aSEmmanuel Vadot	};
115*f126890aSEmmanuel Vadot};
116*f126890aSEmmanuel Vadot
117*f126890aSEmmanuel Vadot&mmc1 {
118*f126890aSEmmanuel Vadot	interrupts-extended = <&intc 83 &omap3_pmx_core 0x11a>;
119*f126890aSEmmanuel Vadot	vmmc-supply = <&vmmc1>;
120*f126890aSEmmanuel Vadot	vqmmc-supply = <&vsim>;
121*f126890aSEmmanuel Vadot	bus-width = <8>;
122*f126890aSEmmanuel Vadot};
123*f126890aSEmmanuel Vadot
124*f126890aSEmmanuel Vadot&mmc2 {
125*f126890aSEmmanuel Vadot	interrupts-extended = <&intc 86 &omap3_pmx_core 0x12e>;
126*f126890aSEmmanuel Vadot	vmmc-supply = <&wl12xx_vmmc>;
127*f126890aSEmmanuel Vadot	non-removable;
128*f126890aSEmmanuel Vadot	bus-width = <4>;
129*f126890aSEmmanuel Vadot	cap-power-off-card;
130*f126890aSEmmanuel Vadot
131*f126890aSEmmanuel Vadot	#address-cells = <1>;
132*f126890aSEmmanuel Vadot	#size-cells = <0>;
133*f126890aSEmmanuel Vadot	wlcore: wlcore@2 {
134*f126890aSEmmanuel Vadot		compatible = "ti,wl1271";
135*f126890aSEmmanuel Vadot		reg = <2>;
136*f126890aSEmmanuel Vadot		/* gpio_149 with uart1_rts pad as wakeirq */
137*f126890aSEmmanuel Vadot		interrupts-extended = <&gpio5 21 IRQ_TYPE_EDGE_RISING>,
138*f126890aSEmmanuel Vadot				      <&omap3_pmx_core 0x14e>;
139*f126890aSEmmanuel Vadot		interrupt-names = "irq", "wakeup";
140*f126890aSEmmanuel Vadot		ref-clock-frequency = <38400000>;
141*f126890aSEmmanuel Vadot	};
142*f126890aSEmmanuel Vadot};
143*f126890aSEmmanuel Vadot
144*f126890aSEmmanuel Vadot&twl_gpio {
145*f126890aSEmmanuel Vadot	ti,use-leds;
146*f126890aSEmmanuel Vadot};
147*f126890aSEmmanuel Vadot
148*f126890aSEmmanuel Vadot&twl_keypad {
149*f126890aSEmmanuel Vadot	linux,keymap = <
150*f126890aSEmmanuel Vadot			MATRIX_KEY(2, 2, KEY_1)
151*f126890aSEmmanuel Vadot			MATRIX_KEY(1, 1, KEY_2)
152*f126890aSEmmanuel Vadot			MATRIX_KEY(0, 0, KEY_3)
153*f126890aSEmmanuel Vadot			MATRIX_KEY(3, 2, KEY_4)
154*f126890aSEmmanuel Vadot			MATRIX_KEY(2, 1, KEY_5)
155*f126890aSEmmanuel Vadot			MATRIX_KEY(1, 0, KEY_6)
156*f126890aSEmmanuel Vadot			MATRIX_KEY(1, 3, KEY_7)
157*f126890aSEmmanuel Vadot			MATRIX_KEY(3, 1, KEY_8)
158*f126890aSEmmanuel Vadot			MATRIX_KEY(2, 0, KEY_9)
159*f126890aSEmmanuel Vadot			MATRIX_KEY(2, 3, KEY_KPASTERISK)
160*f126890aSEmmanuel Vadot			MATRIX_KEY(0, 2, KEY_0)
161*f126890aSEmmanuel Vadot			MATRIX_KEY(3, 0, KEY_KPDOT)
162*f126890aSEmmanuel Vadot			/* s4 not wired */
163*f126890aSEmmanuel Vadot			MATRIX_KEY(1, 2, KEY_BACKSPACE)
164*f126890aSEmmanuel Vadot			MATRIX_KEY(0, 1, KEY_ENTER)
165*f126890aSEmmanuel Vadot			>;
166*f126890aSEmmanuel Vadot};
167*f126890aSEmmanuel Vadot
168*f126890aSEmmanuel Vadot&usbhshost {
169*f126890aSEmmanuel Vadot	port2-mode = "ehci-phy";
170*f126890aSEmmanuel Vadot};
171*f126890aSEmmanuel Vadot
172*f126890aSEmmanuel Vadot&usbhsehci {
173*f126890aSEmmanuel Vadot	phys = <0 &hsusb2_phy>;
174*f126890aSEmmanuel Vadot};
175*f126890aSEmmanuel Vadot
176*f126890aSEmmanuel Vadot&usb_otg_hs {
177*f126890aSEmmanuel Vadot	interface-type = <0>;
178*f126890aSEmmanuel Vadot	usb-phy = <&usb2_phy>;
179*f126890aSEmmanuel Vadot	phys = <&usb2_phy>;
180*f126890aSEmmanuel Vadot	phy-names = "usb2-phy";
181*f126890aSEmmanuel Vadot	mode = <3>;
182*f126890aSEmmanuel Vadot	power = <50>;
183*f126890aSEmmanuel Vadot};
184*f126890aSEmmanuel Vadot
185*f126890aSEmmanuel Vadot&gpmc {
186*f126890aSEmmanuel Vadot	ethernet@gpmc {
187*f126890aSEmmanuel Vadot		interrupt-parent = <&gpio6>;
188*f126890aSEmmanuel Vadot		interrupts = <16 8>;
189*f126890aSEmmanuel Vadot		reg = <5 0 0xff>;
190*f126890aSEmmanuel Vadot	};
191*f126890aSEmmanuel Vadot};
192*f126890aSEmmanuel Vadot
193*f126890aSEmmanuel Vadot&vaux2 {
194*f126890aSEmmanuel Vadot	regulator-name = "usb_1v8";
195*f126890aSEmmanuel Vadot	regulator-min-microvolt = <1800000>;
196*f126890aSEmmanuel Vadot	regulator-max-microvolt = <1800000>;
197*f126890aSEmmanuel Vadot	regulator-always-on;
198*f126890aSEmmanuel Vadot};
199