xref: /linux/scripts/dtc/include-prefixes/arm/ti/omap/am335x-bone-hdmi-00a0.dtso (revision e65f4718a577fcc84d40431f022985898b6dbf2e)
1*2c4059f5SKory Maincent (TI)// SPDX-License-Identifier: GPL-2.0-only
2*2c4059f5SKory Maincent (TI)/*
3*2c4059f5SKory Maincent (TI) * 2017 Copyright (c) Seeed Technology Inc.  All right reserved.
4*2c4059f5SKory Maincent (TI) * Author: Baozhu Zuo <zuobaozhu@gmail.com>
5*2c4059f5SKory Maincent (TI) * Copyright (c) Bootlin 2026
6*2c4059f5SKory Maincent (TI) *
7*2c4059f5SKory Maincent (TI) * This device tree overlay is compatible with the BeagleBone Black, Green
8*2c4059f5SKory Maincent (TI) * and their subversions.
9*2c4059f5SKory Maincent (TI) */
10*2c4059f5SKory Maincent (TI)
11*2c4059f5SKory Maincent (TI)/dts-v1/;
12*2c4059f5SKory Maincent (TI)/plugin/;
13*2c4059f5SKory Maincent (TI)
14*2c4059f5SKory Maincent (TI)#include <dt-bindings/pinctrl/am33xx.h>
15*2c4059f5SKory Maincent (TI)#include <dt-bindings/interrupt-controller/irq.h>
16*2c4059f5SKory Maincent (TI)
17*2c4059f5SKory Maincent (TI)&{/} {
18*2c4059f5SKory Maincent (TI)	hdmi0: connector-hdmi {
19*2c4059f5SKory Maincent (TI)		compatible = "hdmi-connector";
20*2c4059f5SKory Maincent (TI)		label = "hdmi";
21*2c4059f5SKory Maincent (TI)		type = "a";
22*2c4059f5SKory Maincent (TI)		port {
23*2c4059f5SKory Maincent (TI)			hdmi_connector_in: endpoint {
24*2c4059f5SKory Maincent (TI)				remote-endpoint = <&it66121_out>;
25*2c4059f5SKory Maincent (TI)			};
26*2c4059f5SKory Maincent (TI)		};
27*2c4059f5SKory Maincent (TI)	};
28*2c4059f5SKory Maincent (TI)
29*2c4059f5SKory Maincent (TI)	clk_mcasp0_fixed: clk-mcasp0-fixed {
30*2c4059f5SKory Maincent (TI)		#clock-cells = <0>;
31*2c4059f5SKory Maincent (TI)		compatible = "fixed-clock";
32*2c4059f5SKory Maincent (TI)		clock-frequency = <24576000>;
33*2c4059f5SKory Maincent (TI)	};
34*2c4059f5SKory Maincent (TI)
35*2c4059f5SKory Maincent (TI)	clk_mcasp0: clk-mcasp0 {
36*2c4059f5SKory Maincent (TI)		#clock-cells = <0>;
37*2c4059f5SKory Maincent (TI)		compatible = "gpio-gate-clock";
38*2c4059f5SKory Maincent (TI)		clocks = <&clk_mcasp0_fixed>;
39*2c4059f5SKory Maincent (TI)		enable-gpios = <&gpio1 27 0>;
40*2c4059f5SKory Maincent (TI)	};
41*2c4059f5SKory Maincent (TI)
42*2c4059f5SKory Maincent (TI)	sound {
43*2c4059f5SKory Maincent (TI)		compatible = "simple-audio-card";
44*2c4059f5SKory Maincent (TI)		simple-audio-card,name = "TI BeagleBone Green HDMI cape";
45*2c4059f5SKory Maincent (TI)		simple-audio-card,format = "i2s";
46*2c4059f5SKory Maincent (TI)		simple-audio-card,bitclock-master = <&sound_master>;
47*2c4059f5SKory Maincent (TI)		simple-audio-card,frame-master = <&sound_master>;
48*2c4059f5SKory Maincent (TI)
49*2c4059f5SKory Maincent (TI)		sound_master: simple-audio-card,cpu {
50*2c4059f5SKory Maincent (TI)			sound-dai = <&mcasp0>;
51*2c4059f5SKory Maincent (TI)			clocks = <&clk_mcasp0>;
52*2c4059f5SKory Maincent (TI)		};
53*2c4059f5SKory Maincent (TI)
54*2c4059f5SKory Maincent (TI)		simple-audio-card,codec {
55*2c4059f5SKory Maincent (TI)			sound-dai = <&it66121>;
56*2c4059f5SKory Maincent (TI)		};
57*2c4059f5SKory Maincent (TI)	};
58*2c4059f5SKory Maincent (TI)};
59*2c4059f5SKory Maincent (TI)
60*2c4059f5SKory Maincent (TI)&am33xx_pinmux {
61*2c4059f5SKory Maincent (TI)	bb_lcd_pins: pinmux-bb-lcd-pins {
62*2c4059f5SKory Maincent (TI)		pinctrl-single,pins = <
63*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_DATA0, PIN_OUTPUT, MUX_MODE0)
64*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_DATA1, PIN_OUTPUT, MUX_MODE0)
65*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_DATA2, PIN_OUTPUT, MUX_MODE0)
66*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_DATA3, PIN_OUTPUT, MUX_MODE0)
67*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_DATA4, PIN_OUTPUT, MUX_MODE0)
68*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_DATA5, PIN_OUTPUT, MUX_MODE0)
69*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_DATA6, PIN_OUTPUT, MUX_MODE0)
70*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_DATA7, PIN_OUTPUT, MUX_MODE0)
71*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_DATA8, PIN_OUTPUT, MUX_MODE0)
72*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_DATA9, PIN_OUTPUT, MUX_MODE0)
73*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_DATA10, PIN_OUTPUT, MUX_MODE0)
74*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_DATA11, PIN_OUTPUT, MUX_MODE0)
75*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_DATA12, PIN_OUTPUT, MUX_MODE0)
76*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_DATA13, PIN_OUTPUT, MUX_MODE0)
77*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_DATA14, PIN_OUTPUT, MUX_MODE0)
78*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_DATA15, PIN_OUTPUT, MUX_MODE0)
79*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_VSYNC, PIN_OUTPUT, MUX_MODE0)
80*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_HSYNC, PIN_OUTPUT, MUX_MODE0)
81*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_PCLK, PIN_OUTPUT, MUX_MODE0)
82*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_LCD_AC_BIAS_EN, PIN_OUTPUT, MUX_MODE0)
83*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_GPMC_ADVN_ALE, PIN_OUTPUT_PULLDOWN, MUX_MODE7)
84*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_GPMC_OEN_REN, PIN_OUTPUT_PULLDOWN, MUX_MODE7)
85*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_GPMC_WEN, PIN_INPUT, MUX_MODE7)
86*2c4059f5SKory Maincent (TI)		>;
87*2c4059f5SKory Maincent (TI)	};
88*2c4059f5SKory Maincent (TI)	mcasp0_pins: mcasp0-pins {
89*2c4059f5SKory Maincent (TI)		pinctrl-single,pins = <
90*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_MCASP0_AHCLKX, PIN_INPUT_PULLUP, MUX_MODE0)
91*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_MCASP0_AHCLKR, PIN_OUTPUT_PULLDOWN, MUX_MODE2)
92*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_MCASP0_FSX, PIN_OUTPUT_PULLUP, MUX_MODE0)
93*2c4059f5SKory Maincent (TI)			AM33XX_PADCONF(AM335X_PIN_MCASP0_ACLKX, PIN_OUTPUT_PULLDOWN, MUX_MODE0)
94*2c4059f5SKory Maincent (TI)		>;
95*2c4059f5SKory Maincent (TI)	};
96*2c4059f5SKory Maincent (TI)};
97*2c4059f5SKory Maincent (TI)
98*2c4059f5SKory Maincent (TI)&i2c2 {
99*2c4059f5SKory Maincent (TI)	status = "okay";
100*2c4059f5SKory Maincent (TI)	#address-cells = <1>;
101*2c4059f5SKory Maincent (TI)	#size-cells = <0>;
102*2c4059f5SKory Maincent (TI)
103*2c4059f5SKory Maincent (TI)	it66121: it66121 {
104*2c4059f5SKory Maincent (TI)		compatible = "ite,it66121";
105*2c4059f5SKory Maincent (TI)		reg = <0x4d>;
106*2c4059f5SKory Maincent (TI)		pinctrl-names = "default";
107*2c4059f5SKory Maincent (TI)		pinctrl-0 = <&bb_lcd_pins>;
108*2c4059f5SKory Maincent (TI)
109*2c4059f5SKory Maincent (TI)		#sound-dai-cells = <0>;
110*2c4059f5SKory Maincent (TI)
111*2c4059f5SKory Maincent (TI)		interrupt-parent = <&gpio2>;
112*2c4059f5SKory Maincent (TI)		interrupts = <4 IRQ_TYPE_EDGE_RISING>;
113*2c4059f5SKory Maincent (TI)		ports {
114*2c4059f5SKory Maincent (TI)			#address-cells = <1>;
115*2c4059f5SKory Maincent (TI)			#size-cells = <0>;
116*2c4059f5SKory Maincent (TI)
117*2c4059f5SKory Maincent (TI)			port@0 {
118*2c4059f5SKory Maincent (TI)				reg = <0>;
119*2c4059f5SKory Maincent (TI)				it66121_in: endpoint {
120*2c4059f5SKory Maincent (TI)					bus-width = <24>;
121*2c4059f5SKory Maincent (TI)					remote-endpoint = <&lcdc_0>;
122*2c4059f5SKory Maincent (TI)				};
123*2c4059f5SKory Maincent (TI)			};
124*2c4059f5SKory Maincent (TI)
125*2c4059f5SKory Maincent (TI)			port@1 {
126*2c4059f5SKory Maincent (TI)				reg = <1>;
127*2c4059f5SKory Maincent (TI)				it66121_out: endpoint {
128*2c4059f5SKory Maincent (TI)					remote-endpoint = <&hdmi_connector_in>;
129*2c4059f5SKory Maincent (TI)				};
130*2c4059f5SKory Maincent (TI)			};
131*2c4059f5SKory Maincent (TI)		};
132*2c4059f5SKory Maincent (TI)	};
133*2c4059f5SKory Maincent (TI)};
134*2c4059f5SKory Maincent (TI)
135*2c4059f5SKory Maincent (TI)&lcdc {
136*2c4059f5SKory Maincent (TI)	status = "okay";
137*2c4059f5SKory Maincent (TI)	blue-and-red-wiring = "straight";
138*2c4059f5SKory Maincent (TI)	port {
139*2c4059f5SKory Maincent (TI)		lcdc_0: endpoint@0 {
140*2c4059f5SKory Maincent (TI)			remote-endpoint = <&it66121_in>;
141*2c4059f5SKory Maincent (TI)		};
142*2c4059f5SKory Maincent (TI)	};
143*2c4059f5SKory Maincent (TI)};
144*2c4059f5SKory Maincent (TI)
145*2c4059f5SKory Maincent (TI)
146*2c4059f5SKory Maincent (TI)&mcasp0 {
147*2c4059f5SKory Maincent (TI)	status = "okay";
148*2c4059f5SKory Maincent (TI)	#sound-dai-cells = <0>;
149*2c4059f5SKory Maincent (TI)	pinctrl-names = "default";
150*2c4059f5SKory Maincent (TI)	pinctrl-0 = <&mcasp0_pins>;
151*2c4059f5SKory Maincent (TI)	op-mode = <0>;
152*2c4059f5SKory Maincent (TI)	tdm-slots = <2>;
153*2c4059f5SKory Maincent (TI)	serial-dir = < 0 0 1 0 >;
154*2c4059f5SKory Maincent (TI)	tx-num-evt = <32>;
155*2c4059f5SKory Maincent (TI)	rx-num-evt = <32>;
156*2c4059f5SKory Maincent (TI)};
157*2c4059f5SKory Maincent (TI)
158