xref: /linux/scripts/dtc/include-prefixes/arm/ti/omap/logicpd-torpedo-som.dtsi (revision c771600c6af14749609b49565ffb4cac2959710d)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-only
2724ba675SRob Herring
3724ba675SRob Herring#include <dt-bindings/input/input.h>
4724ba675SRob Herring
5724ba675SRob Herring/ {
6724ba675SRob Herring	chosen {
7724ba675SRob Herring		stdout-path = &uart1;
8724ba675SRob Herring	};
9724ba675SRob Herring
10724ba675SRob Herring	cpus {
11724ba675SRob Herring		cpu@0 {
12724ba675SRob Herring			cpu0-supply = <&vcc>;
13724ba675SRob Herring		};
14724ba675SRob Herring	};
15724ba675SRob Herring
16724ba675SRob Herring	memory@80000000 {
17724ba675SRob Herring		device_type = "memory";
18724ba675SRob Herring		reg = <0x80000000 0>;
19724ba675SRob Herring	};
20724ba675SRob Herring
21724ba675SRob Herring	leds {
22724ba675SRob Herring		compatible = "gpio-leds";
23724ba675SRob Herring		led-user0 {
24724ba675SRob Herring			label = "user0";
25724ba675SRob Herring			gpios = <&twl_gpio 18 GPIO_ACTIVE_LOW>;	/* LEDA */
26724ba675SRob Herring			linux,default-trigger = "none";
27724ba675SRob Herring		};
28724ba675SRob Herring	};
29724ba675SRob Herring
30724ba675SRob Herring	/* fixed 26MHz oscillator */
31724ba675SRob Herring	hfclk_26m: oscillator {
32724ba675SRob Herring		#clock-cells = <0>;
33724ba675SRob Herring		compatible = "fixed-clock";
34724ba675SRob Herring		clock-frequency = <26000000>;
35724ba675SRob Herring	};
36724ba675SRob Herring};
37724ba675SRob Herring
38724ba675SRob Herring/* The Torpedo doesn't route the USB host pins */
39724ba675SRob Herring&usbhshost {
40724ba675SRob Herring	status = "disabled";
41724ba675SRob Herring};
42724ba675SRob Herring
43724ba675SRob Herring&gpmc {
44724ba675SRob Herring	ranges = <0 0 0x30000000 0x1000000>;	/* CS0: 16MB for NAND */
45724ba675SRob Herring
46724ba675SRob Herring	nand@0,0 {
47724ba675SRob Herring		compatible = "ti,omap2-nand";
48724ba675SRob Herring		reg = <0 0 4>; /* CS0, offset 0, IO size 4 */
49724ba675SRob Herring		interrupt-parent = <&gpmc>;
50724ba675SRob Herring		interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */
51724ba675SRob Herring			     <1 IRQ_TYPE_NONE>;	/* termcount */
52724ba675SRob Herring		nand-bus-width = <16>;
53724ba675SRob Herring		ti,nand-ecc-opt = "bch8";
54724ba675SRob Herring		rb-gpios = <&gpmc 0 GPIO_ACTIVE_HIGH>; /* gpmc_wait0 */
55724ba675SRob Herring		gpmc,sync-clk-ps = <0>;
56724ba675SRob Herring		gpmc,cs-on-ns = <0>;
57724ba675SRob Herring		gpmc,cs-rd-off-ns = <44>;
58724ba675SRob Herring		gpmc,cs-wr-off-ns = <44>;
59724ba675SRob Herring		gpmc,adv-on-ns = <6>;
60724ba675SRob Herring		gpmc,adv-rd-off-ns = <34>;
61724ba675SRob Herring		gpmc,adv-wr-off-ns = <44>;
62724ba675SRob Herring		gpmc,we-off-ns = <40>;
63724ba675SRob Herring		gpmc,oe-off-ns = <54>;
64724ba675SRob Herring		gpmc,access-ns = <64>;
65724ba675SRob Herring		gpmc,rd-cycle-ns = <82>;
66724ba675SRob Herring		gpmc,wr-cycle-ns = <82>;
67724ba675SRob Herring		gpmc,wr-access-ns = <40>;
68724ba675SRob Herring		gpmc,wr-data-mux-bus-ns = <0>;
69724ba675SRob Herring		gpmc,device-width = <2>;
70724ba675SRob Herring		#address-cells = <1>;
71724ba675SRob Herring		#size-cells = <1>;
72724ba675SRob Herring	};
73724ba675SRob Herring};
74724ba675SRob Herring
75724ba675SRob Herring&i2c1 {
76724ba675SRob Herring	pinctrl-names = "default";
77724ba675SRob Herring	pinctrl-0 = <&i2c1_pins>;
78724ba675SRob Herring	clock-frequency = <2600000>;
79724ba675SRob Herring
80724ba675SRob Herring	twl: twl@48 {
81724ba675SRob Herring		reg = <0x48>;
82724ba675SRob Herring		interrupts = <7>; /* SYS_NIRQ cascaded to intc */
83724ba675SRob Herring		interrupt-parent = <&intc>;
84724ba675SRob Herring		clocks = <&hfclk_26m>;
85724ba675SRob Herring		clock-names = "fck";
86724ba675SRob Herring
87724ba675SRob Herring		twl_audio: audio {
88724ba675SRob Herring			compatible = "ti,twl4030-audio";
89724ba675SRob Herring			codec {
90724ba675SRob Herring			};
91724ba675SRob Herring		};
92724ba675SRob Herring	};
93724ba675SRob Herring};
94724ba675SRob Herring
95724ba675SRob Herring&i2c2 {
96724ba675SRob Herring	pinctrl-names = "default";
97724ba675SRob Herring	pinctrl-0 = <&i2c2_pins>;
98724ba675SRob Herring	clock-frequency = <400000>;
99724ba675SRob Herring};
100724ba675SRob Herring
101724ba675SRob Herring&i2c3 {
102724ba675SRob Herring	pinctrl-names = "default";
103724ba675SRob Herring	pinctrl-0 = <&i2c3_pins>;
104724ba675SRob Herring	clock-frequency = <400000>;
105*47048d5bSRob Herring (Arm)	eeprom@50 {
106724ba675SRob Herring		compatible = "atmel,24c64";
107724ba675SRob Herring		readonly;
108724ba675SRob Herring		reg = <0x50>;
109724ba675SRob Herring	};
110724ba675SRob Herring};
111724ba675SRob Herring
112724ba675SRob Herring&omap3_pmx_core {
113724ba675SRob Herring	mcbsp2_pins: mcbsp2-pins {
114724ba675SRob Herring		pinctrl-single,pins = <
115724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x213c, PIN_INPUT | MUX_MODE0)        /* mcbsp2_fsx */
116724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x213e, PIN_INPUT | MUX_MODE0)        /* mcbsp2_clkx */
117724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x2140, PIN_INPUT | MUX_MODE0)        /* mcbsp2_dr */
118724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x2142, PIN_OUTPUT | MUX_MODE0)       /* mcbsp2_dx */
119724ba675SRob Herring		>;
120724ba675SRob Herring	};
121724ba675SRob Herring	uart2_pins: uart2-pins {
122724ba675SRob Herring		pinctrl-single,pins = <
123724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x2174, PIN_INPUT | MUX_MODE0)	/* uart2_cts.uart2_cts */
124724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x2176, PIN_OUTPUT | MUX_MODE0)	/* uart2_rts .uart2_rts*/
125724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x2178, PIN_OUTPUT | MUX_MODE0)	/* uart2_tx.uart2_tx */
126724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x217a, PIN_INPUT | MUX_MODE0)	/* uart2_rx.uart2_rx */
127724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x2198, PIN_OUTPUT | MUX_MODE4)	/* GPIO_162,BT_EN */
128724ba675SRob Herring		>;
129724ba675SRob Herring	};
130724ba675SRob Herring	mcspi1_pins: mcspi1-pins {
131724ba675SRob Herring		pinctrl-single,pins = <
132724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21c8, PIN_INPUT | MUX_MODE0)        /* mcspi1_clk.mcspi1_clk */
133724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21ca, PIN_OUTPUT | MUX_MODE0)       /* mcspi1_simo.mcspi1_simo */
134724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21cc, PIN_INPUT_PULLUP | MUX_MODE0) /* mcspi1_somi.mcspi1_somi */
135724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21ce, PIN_OUTPUT | MUX_MODE0)       /* mcspi1_cs0.mcspi1_cs0 */
136724ba675SRob Herring		>;
137724ba675SRob Herring	};
138724ba675SRob Herring	hsusb_otg_pins: hsusb-otg-pins {
139724ba675SRob Herring		pinctrl-single,pins = <
140724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21a2, PIN_INPUT | MUX_MODE0)	/* hsusb0_clk.hsusb0_clk */
141724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21a4, PIN_OUTPUT | MUX_MODE0)	/* hsusb0_stp.hsusb0_stp */
142724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21a6, PIN_INPUT | MUX_MODE0)	/* hsusb0_dir.hsusb0_dir */
143724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21a8, PIN_INPUT | MUX_MODE0)	/* hsusb0_nxt.hsusb0_nxt */
144724ba675SRob Herring
145724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21aa, PIN_INPUT | MUX_MODE0)	/* hsusb0_data0.hsusb0_data0 */
146724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21ac, PIN_INPUT | MUX_MODE0)	/* hsusb0_data1.hsusb0_data1 */
147724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21ae, PIN_INPUT | MUX_MODE0)	/* hsusb0_data2.hsusb0_data2 */
148724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21b0, PIN_INPUT | MUX_MODE0)	/* hsusb0_data3.hsusb0_data3 */
149724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21b2, PIN_INPUT | MUX_MODE0)	/* hsusb0_data4.hsusb0_data4 */
150724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21b4, PIN_INPUT | MUX_MODE0)	/* hsusb0_data5.hsusb0_data5 */
151724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21b6, PIN_INPUT | MUX_MODE0)	/* hsusb0_data6.hsusb0_data6 */
152724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21b8, PIN_INPUT | MUX_MODE0)	/* hsusb0_data7.hsusb0_data7 */
153724ba675SRob Herring		>;
154724ba675SRob Herring	};
155724ba675SRob Herring	i2c1_pins: i2c1-pins {
156724ba675SRob Herring		pinctrl-single,pins = <
157724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21ba, PIN_INPUT | MUX_MODE0)        /* i2c1_scl.i2c1_scl */
158724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21bc, PIN_INPUT | MUX_MODE0)        /* i2c1_sda.i2c1_sda */
159724ba675SRob Herring		>;
160724ba675SRob Herring	};
161724ba675SRob Herring	i2c2_pins: i2c2-pins {
162724ba675SRob Herring		pinctrl-single,pins = <
163724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21be, PIN_INPUT | MUX_MODE0)	/* i2c2_scl */
164724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21c0, PIN_INPUT | MUX_MODE0)	/* i2c2_sda */
165724ba675SRob Herring		>;
166724ba675SRob Herring	};
167724ba675SRob Herring	i2c3_pins: i2c3-pins {
168724ba675SRob Herring		pinctrl-single,pins = <
169724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21c2, PIN_INPUT | MUX_MODE0)	/* i2c3_scl */
170724ba675SRob Herring			OMAP3_CORE1_IOPAD(0x21c4, PIN_INPUT | MUX_MODE0)	/* i2c3_sda */
171724ba675SRob Herring		>;
172724ba675SRob Herring	};
173724ba675SRob Herring};
174724ba675SRob Herring
175724ba675SRob Herring&uart2 {
176724ba675SRob Herring	interrupts-extended = <&intc 73 &omap3_pmx_core OMAP3_UART2_RX>;
177724ba675SRob Herring	pinctrl-names = "default";
178724ba675SRob Herring	pinctrl-0 = <&uart2_pins>;
179724ba675SRob Herring};
180724ba675SRob Herring
181724ba675SRob Herring&mcspi1 {
182724ba675SRob Herring	pinctrl-names = "default";
183724ba675SRob Herring	pinctrl-0 = <&mcspi1_pins>;
184724ba675SRob Herring};
185724ba675SRob Herring
186724ba675SRob Herring#include "twl4030.dtsi"
187724ba675SRob Herring#include "twl4030_omap3.dtsi"
188724ba675SRob Herring
189724ba675SRob Herring&twl {
190724ba675SRob Herring	twl_power: power {
191724ba675SRob Herring		compatible = "ti,twl4030-power-idle-osc-off", "ti,twl4030-power-idle";
192724ba675SRob Herring		ti,use_poweroff;
193724ba675SRob Herring	};
194724ba675SRob Herring};
195724ba675SRob Herring
196724ba675SRob Herring&twl_gpio {
197724ba675SRob Herring	ti,use-leds;
198724ba675SRob Herring};
199724ba675SRob Herring
200724ba675SRob Herring&twl_keypad {
201724ba675SRob Herring	status = "disabled";
202724ba675SRob Herring};
203