xref: /linux/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dts (revision 55d0969c451159cff86949b38c39171cab962069)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2016 Endless Computers, Inc.
4 * Author: Carlo Caione <carlo@endlessm.com>
5 */
6
7/dts-v1/;
8
9#include "meson-gxl-s905x-p212.dtsi"
10#include <dt-bindings/sound/meson-aiu.h>
11
12/ {
13	compatible = "amlogic,p212", "amlogic,s905x", "amlogic,meson-gxl";
14	model = "Amlogic Meson GXL (S905X) P212 Development Board";
15
16	dio2133: analog-amplifier {
17		compatible = "simple-audio-amplifier";
18		sound-name-prefix = "AU2";
19		VCC-supply = <&hdmi_5v>;
20		enable-gpios = <&gpio GPIOH_5 GPIO_ACTIVE_HIGH>;
21	};
22
23	cvbs-connector {
24		compatible = "composite-video-connector";
25
26		port {
27			cvbs_connector_in: endpoint {
28				remote-endpoint = <&cvbs_vdac_out>;
29			};
30		};
31	};
32
33	hdmi-connector {
34		compatible = "hdmi-connector";
35		type = "a";
36
37		port {
38			hdmi_connector_in: endpoint {
39				remote-endpoint = <&hdmi_tx_tmds_out>;
40			};
41		};
42	};
43
44	sound {
45		compatible = "amlogic,gx-sound-card";
46		model = "S905X-P212";
47		audio-aux-devs = <&dio2133>;
48		audio-widgets = "Line", "Lineout";
49		audio-routing = "AU2 INL", "ACODEC LOLN",
50				"AU2 INR", "ACODEC LORN",
51				"Lineout", "AU2 OUTL",
52				"Lineout", "AU2 OUTR";
53		clocks = <&clkc CLKID_MPLL0>,
54			 <&clkc CLKID_MPLL1>,
55			 <&clkc CLKID_MPLL2>;
56
57		assigned-clocks = <&clkc CLKID_MPLL0>,
58				  <&clkc CLKID_MPLL1>,
59				  <&clkc CLKID_MPLL2>;
60		assigned-clock-parents = <0>, <0>, <0>;
61		assigned-clock-rates = <294912000>,
62				       <270950400>,
63				       <393216000>;
64		dai-link-0 {
65			sound-dai = <&aiu AIU_CPU CPU_I2S_FIFO>;
66		};
67
68		dai-link-1 {
69			sound-dai = <&aiu AIU_CPU CPU_I2S_ENCODER>;
70			dai-format = "i2s";
71			mclk-fs = <256>;
72
73			codec-0 {
74				sound-dai = <&aiu AIU_HDMI CTRL_I2S>;
75			};
76
77			codec-1 {
78				sound-dai = <&aiu AIU_ACODEC CTRL_I2S>;
79			};
80		};
81
82		dai-link-2 {
83			sound-dai = <&aiu AIU_HDMI CTRL_OUT>;
84
85			codec-0 {
86				sound-dai = <&hdmi_tx>;
87			};
88		};
89
90		dai-link-3 {
91			sound-dai = <&aiu AIU_ACODEC CTRL_OUT>;
92
93			codec-0 {
94				sound-dai = <&acodec>;
95			};
96		};
97	};
98};
99
100&acodec {
101	AVDD-supply = <&vddio_ao18>;
102	status = "okay";
103};
104
105&aiu {
106	status = "okay";
107};
108
109&cec_AO {
110	status = "okay";
111	pinctrl-0 = <&ao_cec_pins>;
112	pinctrl-names = "default";
113	hdmi-phandle = <&hdmi_tx>;
114};
115
116&cvbs_vdac_port {
117	cvbs_vdac_out: endpoint {
118		remote-endpoint = <&cvbs_connector_in>;
119	};
120};
121
122&hdmi_tx {
123	status = "okay";
124	pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
125	pinctrl-names = "default";
126	hdmi-supply = <&hdmi_5v>;
127};
128
129&hdmi_tx_tmds_port {
130	hdmi_tx_tmds_out: endpoint {
131		remote-endpoint = <&hdmi_connector_in>;
132	};
133};
134
135/* This UART is brought out to the DB9 connector */
136&uart_AO {
137	status = "okay";
138};
139