Linux Audio

Check our new training course

Real-Time Linux with PREEMPT_RT training

Feb 18-20, 2025
Register
Loading...
Note: File does not exist in v4.17.
  1/*
  2 * Copyright (C) 2013 Marek Belisko <marek@goldelico.com>
  3 *
  4 * Based on omap3-beagle-xm.dts
  5 *
  6 * This program is free software; you can redistribute it and/or modify
  7 * it under the terms of the GNU General Public License version 2 as
  8 * published by the Free Software Foundation.
  9 */
 10/dts-v1/;
 11
 12#include "omap36xx.dtsi"
 13
 14/ {
 15	model = "OMAP3 GTA04";
 16	compatible = "ti,omap3-gta04", "ti,omap36xx", "ti,omap3";
 17
 18	cpus {
 19		cpu@0 {
 20			cpu0-supply = <&vcc>;
 21		};
 22	};
 23
 24	memory {
 25		device_type = "memory";
 26		reg = <0x80000000 0x20000000>; /* 512 MB */
 27	};
 28
 29	gpio-keys {
 30		compatible = "gpio-keys";
 31
 32		aux-button {
 33			label = "aux";
 34			linux,code = <169>;
 35			gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
 36			gpio-key,wakeup;
 37		};
 38	};
 39
 40	sound {
 41		compatible = "ti,omap-twl4030";
 42		ti,model = "gta04";
 43
 44		ti,mcbsp = <&mcbsp2>;
 45		ti,codec = <&twl_audio>;
 46	};
 47};
 48
 49&omap3_pmx_core {
 50	uart1_pins: pinmux_uart1_pins {
 51		pinctrl-single,pins = <
 52			0x152 (PIN_INPUT | MUX_MODE0)		/* uart1_rx.uart1_rx */
 53			0x14c (PIN_OUTPUT |MUX_MODE0)		/* uart1_tx.uart1_tx */
 54		>;
 55	};
 56
 57	uart2_pins: pinmux_uart2_pins {
 58		pinctrl-single,pins = <
 59			0x14a (PIN_INPUT | MUX_MODE0)		/* uart2_rx.uart2_rx */
 60			0x148 (PIN_OUTPUT | MUX_MODE0)		/* uart2_tx.uart2_tx */
 61		>;
 62	};
 63
 64	uart3_pins: pinmux_uart3_pins {
 65		pinctrl-single,pins = <
 66			0x16e (PIN_INPUT | MUX_MODE0)		/* uart3_rx.uart3_rx */
 67			0x170 (PIN_OUTPUT | MUX_MODE0)		/* uart3_tx.uart3_tx */
 68		>;
 69	};
 70
 71	mmc1_pins: pinmux_mmc1_pins {
 72		pinctrl-single,pins = <
 73			0x114 (PIN_INPUT_PULLUP | MUX_MODE0)	/* sdmmc1_clk.sdmmc1_clk */
 74			0x116 (PIN_INPUT_PULLUP | MUX_MODE0)	/* sdmmc1_cmd.sdmmc1_cmd */
 75			0x118 (PIN_INPUT_PULLUP | MUX_MODE0) 	/* sdmmc1_dat0.sdmmc1_dat0 */
 76			0x11a (PIN_INPUT_PULLUP | MUX_MODE0)	/* sdmmc1_dat1.sdmmc1_dat1 */
 77			0x11c (PIN_INPUT_PULLUP | MUX_MODE0)	/* sdmmc1_dat2.sdmmc1_dat2 */
 78			0x11e (PIN_INPUT_PULLUP | MUX_MODE0)	/* sdmmc1_dat3.sdmmc1_dat3 */
 79		>;
 80	};
 81};
 82
 83&i2c1 {
 84	clock-frequency = <2600000>;
 85
 86	twl: twl@48 {
 87		reg = <0x48>;
 88		interrupts = <7>; /* SYS_NIRQ cascaded to intc */
 89		interrupt-parent = <&intc>;
 90	};
 91
 92	twl_audio: audio {
 93		compatible = "ti,twl4030-audio";
 94		codec {
 95		};
 96	};
 97};
 98
 99#include "twl4030.dtsi"
100#include "twl4030_omap3.dtsi"
101
102&i2c2 {
103	clock-frequency = <400000>;
104
105	/* pressure sensor */
106	bmp085@77 {
107		compatible = "bosch,bmp085";
108		reg = <0x77>;
109		interrupt-parent = <&gpio4>;
110		interrupts = <17 IRQ_TYPE_EDGE_RISING>;
111	};
112
113	/* accelerometer */
114	bma180@41 {
115		compatible = "bosch,bma180";
116		reg = <0x41>;
117		interrupt-parent = <&gpio3>;
118		interrupts = <19 IRQ_TYPE_LEVEL_HIGH>;
119	};
120
121	/* leds */
122	tca6507@45 {
123		compatible = "ti,tca6507";
124		#address-cells = <1>;
125		#size-cells = <0>;
126		reg = <0x45>;
127
128		gta04_led0: red_aux@0 {
129			label = "gta04:red:aux";
130			reg = <0x0>;
131		};
132
133		gta04_led1: green_aux@1 {
134			label = "gta04:green:aux";
135			reg = <0x1>;
136		};
137
138		gta04_led3: red_power@3 {
139			label = "gta04:red:power";
140			reg = <0x3>;
141			linux,default-trigger = "default-on";
142		};
143
144		gta04_led4: green_power@4 {
145			label = "gta04:green:power";
146			reg = <0x4>;
147		};
148	};
149
150	/* compass aka magnetometer */
151	hmc5843@1e {
152		compatible = "honeywell,hmc5843";
153		reg = <0x1e>;
154	};
155
156	/* touchscreen */
157	tsc2007@48 {
158		compatible = "ti,tsc2007";
159		reg = <0x48>;
160		interrupt-parent = <&gpio6>;
161		interrupts = <0 IRQ_TYPE_EDGE_FALLING>;
162		gpios = <&gpio6 0 GPIO_ACTIVE_LOW>;
163		ti,x-plate-ohms = <600>;
164	};
165};
166
167&i2c3 {
168	clock-frequency = <100000>;
169};
170
171&usb_otg_hs {
172	interface-type = <0>;
173	usb-phy = <&usb2_phy>;
174	phys = <&usb2_phy>;
175	phy-names = "usb2-phy";
176	mode = <3>;
177	power = <50>;
178};
179
180&mmc1 {
181	pinctrl-names = "default";
182	pinctrl-0 = <&mmc1_pins>;
183	vmmc-supply = <&vmmc1>;
184	bus-width = <4>;
185	ti,non-removable;
186};
187
188&mmc2 {
189	vmmc-supply = <&vaux4>;
190	bus-width = <4>;
191	ti,non-removable;
192};
193
194&mmc3 {
195	status = "disabled";
196};
197
198&uart1 {
199	pinctrl-names = "default";
200	pinctrl-0 = <&uart1_pins>;
201};
202
203&uart2 {
204	pinctrl-names = "default";
205	pinctrl-0 = <&uart2_pins>;
206};
207
208&uart3 {
209	pinctrl-names = "default";
210	pinctrl-0 = <&uart3_pins>;
211};
212
213&charger {
214	bb_uvolt = <3200000>;
215	bb_uamp = <150>;
216};
217
218&vaux4 {
219	regulator-min-microvolt = <2800000>;
220	regulator-max-microvolt = <3150000>;
221};