Linux Audio

Check our new training course

Loading...
Note: File does not exist in v6.8.
  1/*
  2 * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com/
  3 *
  4 * This program is free software; you can redistribute it and/or modify
  5 * it under the terms of the GNU General Public License version 2 as
  6 * published by the Free Software Foundation.
  7 */
  8/dts-v1/;
  9
 10#include "dra76x.dtsi"
 11#include "dra7-evm-common.dtsi"
 12#include "dra76x-mmc-iodelay.dtsi"
 13#include <dt-bindings/net/ti-dp83867.h>
 14
 15/ {
 16	model = "TI DRA762 EVM";
 17	compatible = "ti,dra76-evm", "ti,dra762", "ti,dra7";
 18
 19	memory@0 {
 20		device_type = "memory";
 21		reg = <0x0 0x80000000 0x0 0x80000000>;
 22	};
 23
 24	vsys_12v0: fixedregulator-vsys12v0 {
 25		/* main supply */
 26		compatible = "regulator-fixed";
 27		regulator-name = "vsys_12v0";
 28		regulator-min-microvolt = <12000000>;
 29		regulator-max-microvolt = <12000000>;
 30		regulator-always-on;
 31		regulator-boot-on;
 32	};
 33
 34	vsys_5v0: fixedregulator-vsys5v0 {
 35		/* Output of Cntlr B of TPS43351-Q1 on dra76-evm */
 36		compatible = "regulator-fixed";
 37		regulator-name = "vsys_5v0";
 38		regulator-min-microvolt = <5000000>;
 39		regulator-max-microvolt = <5000000>;
 40		vin-supply = <&vsys_12v0>;
 41		regulator-always-on;
 42		regulator-boot-on;
 43	};
 44
 45	vsys_3v3: fixedregulator-vsys3v3 {
 46		/* Output of Cntlr A of TPS43351-Q1 on dra76-evm */
 47		compatible = "regulator-fixed";
 48		regulator-name = "vsys_3v3";
 49		regulator-min-microvolt = <3300000>;
 50		regulator-max-microvolt = <3300000>;
 51		vin-supply = <&vsys_12v0>;
 52		regulator-always-on;
 53		regulator-boot-on;
 54	};
 55
 56	vio_3v3: fixedregulator-vio_3v3 {
 57		compatible = "regulator-fixed";
 58		regulator-name = "vio_3v3";
 59		regulator-min-microvolt = <3300000>;
 60		regulator-max-microvolt = <3300000>;
 61		vin-supply = <&vsys_3v3>;
 62		regulator-always-on;
 63		regulator-boot-on;
 64	};
 65
 66	vio_3v3_sd: fixedregulator-sd {
 67		compatible = "regulator-fixed";
 68		regulator-name = "vio_3v3_sd";
 69		regulator-min-microvolt = <3300000>;
 70		regulator-max-microvolt = <3300000>;
 71		vin-supply = <&vio_3v3>;
 72		enable-active-high;
 73		gpio = <&gpio4 21 GPIO_ACTIVE_HIGH>;
 74	};
 75
 76	vio_1v8: fixedregulator-vio_1v8 {
 77		compatible = "regulator-fixed";
 78		regulator-name = "vio_1v8";
 79		regulator-min-microvolt = <1800000>;
 80		regulator-max-microvolt = <1800000>;
 81		vin-supply = <&smps5_reg>;
 82	};
 83
 84	vtt_fixed: fixedregulator-vtt {
 85		compatible = "regulator-fixed";
 86		regulator-name = "vtt_fixed";
 87		regulator-min-microvolt = <1350000>;
 88		regulator-max-microvolt = <1350000>;
 89		vin-supply = <&vsys_3v3>;
 90		regulator-always-on;
 91		regulator-boot-on;
 92	};
 93
 94	aic_dvdd: fixedregulator-aic_dvdd {
 95		/* TPS77018DBVT */
 96		compatible = "regulator-fixed";
 97		regulator-name = "aic_dvdd";
 98		vin-supply = <&vio_3v3>;
 99		regulator-min-microvolt = <1800000>;
100		regulator-max-microvolt = <1800000>;
101	};
102};
103
104&i2c1 {
105	status = "okay";
106	clock-frequency = <400000>;
107
108	tps65917: tps65917@58 {
109		compatible = "ti,tps65917";
110		reg = <0x58>;
111		ti,system-power-controller;
112		ti,palmas-override-powerhold;
113		interrupt-controller;
114		#interrupt-cells = <2>;
115
116		tps65917_pmic {
117			compatible = "ti,tps65917-pmic";
118
119			smps12-in-supply = <&vsys_3v3>;
120			smps3-in-supply = <&vsys_3v3>;
121			smps4-in-supply = <&vsys_3v3>;
122			smps5-in-supply = <&vsys_3v3>;
123			ldo1-in-supply = <&vsys_3v3>;
124			ldo2-in-supply = <&vsys_3v3>;
125			ldo3-in-supply = <&vsys_5v0>;
126			ldo4-in-supply = <&vsys_5v0>;
127			ldo5-in-supply = <&vsys_3v3>;
128
129			tps65917_regulators: regulators {
130				smps12_reg: smps12 {
131					/* VDD_DSPEVE */
132					regulator-name = "smps12";
133					regulator-min-microvolt = <850000>;
134					regulator-max-microvolt = <1250000>;
135					regulator-always-on;
136					regulator-boot-on;
137				};
138
139				smps3_reg: smps3 {
140					/* VDD_CORE */
141					regulator-name = "smps3";
142					regulator-min-microvolt = <850000>;
143					regulator-max-microvolt = <1250000>;
144					regulator-boot-on;
145					regulator-always-on;
146				};
147
148				smps4_reg: smps4 {
149					/* VDD_IVA */
150					regulator-name = "smps4";
151					regulator-min-microvolt = <850000>;
152					regulator-max-microvolt = <1250000>;
153					regulator-always-on;
154					regulator-boot-on;
155				};
156
157				smps5_reg: smps5 {
158					/* VDDS1V8 */
159					regulator-name = "smps5";
160					regulator-min-microvolt = <1800000>;
161					regulator-max-microvolt = <1800000>;
162					regulator-boot-on;
163					regulator-always-on;
164				};
165
166				ldo1_reg: ldo1 {
167					/* LDO1_OUT --> VDA_PHY1_1V8  */
168					regulator-name = "ldo1";
169					regulator-min-microvolt = <1800000>;
170					regulator-max-microvolt = <1800000>;
171					regulator-always-on;
172					regulator-boot-on;
173					regulator-allow-bypass;
174				};
175
176				ldo2_reg: ldo2 {
177					/* LDO2_OUT --> VDA_PHY2_1V8 */
178					regulator-name = "ldo2";
179					regulator-min-microvolt = <1800000>;
180					regulator-max-microvolt = <1800000>;
181					regulator-allow-bypass;
182					regulator-always-on;
183				};
184
185				ldo3_reg: ldo3 {
186					/* VDA_USB_3V3 */
187					regulator-name = "ldo3";
188					regulator-min-microvolt = <3300000>;
189					regulator-max-microvolt = <3300000>;
190					regulator-boot-on;
191					regulator-always-on;
192				};
193
194				ldo5_reg: ldo5 {
195					/* VDDA_1V8_PLL */
196					regulator-name = "ldo5";
197					regulator-min-microvolt = <1800000>;
198					regulator-max-microvolt = <1800000>;
199					regulator-always-on;
200					regulator-boot-on;
201				};
202
203				ldo4_reg: ldo4 {
204					/* VDD_SDIO_DV */
205					regulator-name = "ldo4";
206					regulator-min-microvolt = <1800000>;
207					regulator-max-microvolt = <3300000>;
208					regulator-boot-on;
209					regulator-always-on;
210				};
211			};
212		};
213
214		tps65917_power_button {
215			compatible = "ti,palmas-pwrbutton";
216			interrupt-parent = <&tps65917>;
217			interrupts = <1 IRQ_TYPE_NONE>;
218			wakeup-source;
219			ti,palmas-long-press-seconds = <6>;
220		};
221	};
222
223	lp87565: lp87565@60 {
224		compatible = "ti,lp87565-q1";
225		reg = <0x60>;
226
227		buck10-in-supply =<&vsys_3v3>;
228		buck23-in-supply =<&vsys_3v3>;
229
230		regulators: regulators {
231			buck10_reg: buck10 {
232				/*VDD_MPU*/
233				regulator-name = "buck10";
234				regulator-min-microvolt = <850000>;
235				regulator-max-microvolt = <1250000>;
236				regulator-always-on;
237				regulator-boot-on;
238			};
239
240			buck23_reg: buck23 {
241				/* VDD_GPU*/
242				regulator-name = "buck23";
243				regulator-min-microvolt = <850000>;
244				regulator-max-microvolt = <1250000>;
245				regulator-boot-on;
246				regulator-always-on;
247			};
248		};
249	};
250
251	pcf_lcd: pcf8757@20 {
252		compatible = "ti,pcf8575", "nxp,pcf8575";
253		reg = <0x20>;
254		gpio-controller;
255		#gpio-cells = <2>;
256		interrupt-controller;
257		#interrupt-cells = <2>;
258		interrupt-parent = <&gpio1>;
259		interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
260	};
261
262	pcf_gpio_21: pcf8757@21 {
263		compatible = "ti,pcf8575", "nxp,pcf8575";
264		reg = <0x21>;
265		gpio-controller;
266		#gpio-cells = <2>;
267		interrupt-parent = <&gpio1>;
268		interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
269		interrupt-controller;
270		#interrupt-cells = <2>;
271	};
272
273	pcf_hdmi: pcf8575@26 {
274		compatible = "ti,pcf8575", "nxp,pcf8575";
275		reg = <0x26>;
276		gpio-controller;
277		#gpio-cells = <2>;
278		p1 {
279			/* vin6_sel_s0: high: VIN6, low: audio */
280			gpio-hog;
281			gpios = <1 GPIO_ACTIVE_HIGH>;
282			output-low;
283			line-name = "vin6_sel_s0";
284		};
285	};
286
287	tlv320aic3106: tlv320aic3106@19 {
288		#sound-dai-cells = <0>;
289		compatible = "ti,tlv320aic3106";
290		reg = <0x19>;
291		adc-settle-ms = <40>;
292		ai3x-micbias-vg = <1>;		/* 2.0V */
293		status = "okay";
294
295		/* Regulators */
296		AVDD-supply = <&vio_3v3>;
297		IOVDD-supply = <&vio_3v3>;
298		DRVDD-supply = <&vio_3v3>;
299		DVDD-supply = <&aic_dvdd>;
300	};
301};
302
303&cpu0 {
304	vdd-supply = <&buck10_reg>;
305};
306
307&mmc1 {
308	status = "okay";
309	vmmc-supply = <&vio_3v3_sd>;
310	vmmc_aux-supply = <&ldo4_reg>;
311	bus-width = <4>;
312	/*
313	 * SDCD signal is not being used here - using the fact that GPIO mode
314	 * is always hardwired.
315	 */
316	cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>;
317	pinctrl-names = "default", "hs";
318	pinctrl-0 = <&mmc1_pins_default>;
319	pinctrl-1 = <&mmc1_pins_hs>;
320};
321
322&mmc2 {
323	status = "okay";
324	vmmc-supply = <&vio_1v8>;
325	vqmmc-supply = <&vio_1v8>;
326	bus-width = <8>;
327	pinctrl-names = "default", "hs", "ddr_1_8v", "hs200_1_8v";
328	pinctrl-0 = <&mmc2_pins_default>;
329	pinctrl-1 = <&mmc2_pins_default>;
330	pinctrl-2 = <&mmc2_pins_default>;
331	pinctrl-3 = <&mmc2_pins_hs200 &mmc2_iodelay_hs200_conf>;
332};
333
334/* No RTC on this device */
335&rtc {
336	status = "disabled";
337};
338
339&mac {
340	status = "okay";
341
342	dual_emac;
343};
344
345&cpsw_emac0 {
346	phy_id = <&davinci_mdio>, <2>;
347	phy-mode = "rgmii-id";
348	dual_emac_res_vlan = <1>;
349};
350
351&cpsw_emac1 {
352	phy_id = <&davinci_mdio>, <3>;
353	phy-mode = "rgmii-id";
354	dual_emac_res_vlan = <2>;
355};
356
357&davinci_mdio {
358	dp83867_0: ethernet-phy@2 {
359		reg = <2>;
360		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
361		ti,tx-internal-delay = <DP83867_RGMIIDCTL_250_PS>;
362		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_8_B_NIB>;
363		ti,min-output-impedance;
364		ti,dp83867-rxctrl-strap-quirk;
365	};
366
367	dp83867_1: ethernet-phy@3 {
368		reg = <3>;
369		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
370		ti,tx-internal-delay = <DP83867_RGMIIDCTL_250_PS>;
371		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_8_B_NIB>;
372		ti,min-output-impedance;
373		ti,dp83867-rxctrl-strap-quirk;
374	};
375};
376
377&usb2_phy1 {
378	phy-supply = <&ldo3_reg>;
379};
380
381&usb2_phy2 {
382	phy-supply = <&ldo3_reg>;
383};
384
385&qspi {
386	spi-max-frequency = <96000000>;
387	m25p80@0 {
388		spi-max-frequency = <96000000>;
389	};
390};
391
392&pcie2_phy {
393	status = "okay";
394};
395
396&pcie1_rc {
397	num-lanes = <2>;
398	phys = <&pcie1_phy>, <&pcie2_phy>;
399	phy-names = "pcie-phy0", "pcie-phy1";
400};
401
402&pcie1_ep {
403	num-lanes = <2>;
404	phys = <&pcie1_phy>, <&pcie2_phy>;
405	phy-names = "pcie-phy0", "pcie-phy1";
406};