File Index
Files and directories
Sign in
FILE

k3-j721e-common-proc-board-infotainment.dtso

File preview with syntax highlighting.

linux-6.19.14/arch/arm64/boot/dts/ti/k3-j721e-common-proc-board-infotainment.dtso PLAIN TEXT
  1// SPDX-License-Identifier: GPL-2.0-only OR MIT
  2/*
  3 * Infotainment Expansion Board for j721e-evm
  4 * User Guide: <https://www.ti.com/lit/ug/spruit0a/spruit0a.pdf>
  5 *
  6 * Copyright (C) 2024 Texas Instruments Incorporated - https://www.ti.com/
  7 */
  8
  9/dts-v1/;
 10/plugin/;
 11
 12#include <dt-bindings/gpio/gpio.h>
 13#include <dt-bindings/interrupt-controller/irq.h>
 14
 15#include "k3-pinctrl.h"
 16
 17&{/} {
 18	connector-hdmi {
 19		compatible = "hdmi-connector";
 20		label = "hdmi";
 21		type = "a";
 22		ddc-i2c-bus = <&main_i2c1>;
 23		/* P12 - HDMI_HPD */
 24		hpd-gpios = <&exp6 10 GPIO_ACTIVE_HIGH>;
 25
 26		port {
 27			hdmi_connector_in: endpoint {
 28				remote-endpoint = <&tfp410_out>;
 29			};
 30		};
 31	};
 32
 33	bridge-dvi {
 34		compatible = "ti,tfp410";
 35		/* P10 - HDMI_PDn */
 36		powerdown-gpios = <&exp6 8 GPIO_ACTIVE_LOW>;
 37		ti,deskew = <0>;
 38
 39		ports {
 40			#address-cells = <1>;
 41			#size-cells = <0>;
 42
 43			port@0 {
 44				reg = <0>;
 45
 46				tfp410_in: endpoint {
 47					remote-endpoint = <&dpi_out0>;
 48					pclk-sample = <1>;
 49				};
 50			};
 51
 52			port@1 {
 53				reg = <1>;
 54
 55				tfp410_out: endpoint {
 56					remote-endpoint =
 57						<&hdmi_connector_in>;
 58				};
 59			};
 60		};
 61	};
 62};
 63
 64&main_pmx0 {
 65	main_i2c1_exp6_pins_default: main-i2c1-exp6-default-pins {
 66		pinctrl-single,pins = <
 67			J721E_IOPAD(0x264, PIN_INPUT, 7) /* (T29) MMC2_DAT2.GPIO1_24 */
 68		>;
 69	};
 70
 71	dss_vout0_pins_default: dss-vout0-default-pins {
 72		pinctrl-single,pins = <
 73			J721E_IOPAD(0x58, PIN_OUTPUT, 10) /* (AE22) PRG1_PRU1_GPO0.VOUT0_DATA0 */
 74			J721E_IOPAD(0x5c, PIN_OUTPUT, 10) /* (AG23) PRG1_PRU1_GPO1.VOUT0_DATA1 */
 75			J721E_IOPAD(0x60, PIN_OUTPUT, 10) /* (AF23) PRG1_PRU1_GPO2.VOUT0_DATA2 */
 76			J721E_IOPAD(0x64, PIN_OUTPUT, 10) /* (AD23) PRG1_PRU1_GPO3.VOUT0_DATA3 */
 77			J721E_IOPAD(0x68, PIN_OUTPUT, 10) /* (AH24) PRG1_PRU1_GPO4.VOUT0_DATA4 */
 78			J721E_IOPAD(0x6c, PIN_OUTPUT, 10) /* (AG21) PRG1_PRU1_GPO5.VOUT0_DATA5 */
 79			J721E_IOPAD(0x70, PIN_OUTPUT, 10) /* (AE23) PRG1_PRU1_GPO6.VOUT0_DATA6 */
 80			J721E_IOPAD(0x74, PIN_OUTPUT, 10) /* (AC21) PRG1_PRU1_GPO7.VOUT0_DATA7 */
 81			J721E_IOPAD(0x78, PIN_OUTPUT, 10) /* (Y23)  PRG1_PRU1_GPO8.VOUT0_DATA8 */
 82			J721E_IOPAD(0x7c, PIN_OUTPUT, 10) /* (AF21) PRG1_PRU1_GPO9.VOUT0_DATA9 */
 83			J721E_IOPAD(0x80, PIN_OUTPUT, 10) /* (AB23) PRG1_PRU1_GPO10.VOUT0_DATA10 */
 84			J721E_IOPAD(0x84, PIN_OUTPUT, 10) /* (AJ25) PRG1_PRU1_GPO11.VOUT0_DATA11 */
 85			J721E_IOPAD(0x88, PIN_OUTPUT, 10) /* (AH25) PRG1_PRU1_GPO12.VOUT0_DATA12 */
 86			J721E_IOPAD(0x8c, PIN_OUTPUT, 10) /* (AG25) PRG1_PRU1_GPO13.VOUT0_DATA13 */
 87			J721E_IOPAD(0x90, PIN_OUTPUT, 10) /* (AH26) PRG1_PRU1_GPO14.VOUT0_DATA14 */
 88			J721E_IOPAD(0x94, PIN_OUTPUT, 10) /* (AJ27) PRG1_PRU1_GPO15.VOUT0_DATA15 */
 89			J721E_IOPAD(0x30, PIN_OUTPUT, 10) /* (AF24) PRG1_PRU0_GPO11.VOUT0_DATA16 */
 90			J721E_IOPAD(0x34, PIN_OUTPUT, 10) /* (AJ24) PRG1_PRU0_GPO12.VOUT0_DATA17 */
 91			J721E_IOPAD(0x38, PIN_OUTPUT, 10) /* (AG24) PRG1_PRU0_GPO13.VOUT0_DATA18 */
 92			J721E_IOPAD(0x3c, PIN_OUTPUT, 10) /* (AD24) PRG1_PRU0_GPO14.VOUT0_DATA19 */
 93			J721E_IOPAD(0x40, PIN_OUTPUT, 10) /* (AC24) PRG1_PRU0_GPO15.VOUT0_DATA20 */
 94			J721E_IOPAD(0x44, PIN_OUTPUT, 10) /* (AE24) PRG1_PRU0_GPO16.VOUT0_DATA21 */
 95			J721E_IOPAD(0x24, PIN_OUTPUT, 10) /* (AJ20) PRG1_PRU0_GPO8.VOUT0_DATA22 */
 96			J721E_IOPAD(0x28, PIN_OUTPUT, 10) /* (AG20) PRG1_PRU0_GPO9.VOUT0_DATA23 */
 97			J721E_IOPAD(0x9c, PIN_OUTPUT, 10) /* (AC22) PRG1_PRU1_GPO17.VOUT0_DE */
 98			J721E_IOPAD(0x98, PIN_OUTPUT, 10) /* (AJ26) PRG1_PRU1_GPO16.VOUT0_HSYNC */
 99			J721E_IOPAD(0xa4, PIN_OUTPUT, 10) /* (AH22) PRG1_PRU1_GPO19.VOUT0_PCLK */
100			J721E_IOPAD(0xa0, PIN_OUTPUT, 10) /* (AJ22) PRG1_PRU1_GPO18.VOUT0_VSYNC */
101		>;
102	};
103};
104
105&exp1 {
106	p14-hog {
107		/* P14 - VINOUT_MUX_SEL0 */
108		gpio-hog;
109		gpios = <12 GPIO_ACTIVE_HIGH>;
110		output-low;
111		line-name = "VINOUT_MUX_SEL0";
112	};
113
114	p15-hog {
115		/* P15 - VINOUT_MUX_SEL1 */
116		gpio-hog;
117		gpios = <13 GPIO_ACTIVE_HIGH>;
118		output-high;
119		line-name = "VINOUT_MUX_SEL1";
120	};
121};
122
123&main_i2c1 {
124	/* i2c1 is used for DVI DDC, so we need to use 100kHz */
125	clock-frequency = <100000>;
126	#address-cells = <1>;
127	#size-cells = <0>;
128
129	exp6: gpio@21 {
130		compatible = "ti,tca6416";
131		reg = <0x21>;
132		gpio-controller;
133		#gpio-cells = <2>;
134		pinctrl-names = "default";
135		pinctrl-0 = <&main_i2c1_exp6_pins_default>;
136		interrupt-parent = <&main_gpio1>;
137		interrupts = <24 IRQ_TYPE_EDGE_FALLING>;
138		interrupt-controller;
139		#interrupt-cells = <2>;
140
141		p11-hog {
142			/* P11 - HDMI_DDC_OE */
143			gpio-hog;
144			gpios = <9 GPIO_ACTIVE_HIGH>;
145			output-high;
146			line-name = "HDMI_DDC_OE";
147		};
148	};
149};
150
151&dss {
152	pinctrl-names = "default";
153	pinctrl-0 = <&dss_vout0_pins_default>;
154
155	ports {
156		#address-cells = <1>;
157		#size-cells = <0>;
158
159		port@0 {
160			reg = <0>;
161			dpi0_out: endpoint {
162				remote-endpoint = <&dp0_in>;
163			};
164		};
165
166		port@1 {
167			reg = <1>;
168			dpi_out0: endpoint {
169				remote-endpoint = <&tfp410_in>;
170			};
171		};
172	};
173};
~/ Read-only file preview.