xref: /freebsd/sys/contrib/device-tree/src/arm64/amlogic/meson-g12b-odroid-n2l.dts (revision b2d2a78ad80ec68d4a17f5aef97d21686cb1e29b)
1cb7aa33aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2cb7aa33aSEmmanuel Vadot/*
3cb7aa33aSEmmanuel Vadot * Copyright (c) 2022 Dongjin Kim <tobetter@gmail.com>
4cb7aa33aSEmmanuel Vadot */
5cb7aa33aSEmmanuel Vadot
6cb7aa33aSEmmanuel Vadot/dts-v1/;
7cb7aa33aSEmmanuel Vadot
8cb7aa33aSEmmanuel Vadot/* The Amlogic S922X Rev. C supports the same OPPs as the A311D variant */
9cb7aa33aSEmmanuel Vadot#include "meson-g12b-a311d.dtsi"
10cb7aa33aSEmmanuel Vadot#include "meson-g12b-odroid.dtsi"
11cb7aa33aSEmmanuel Vadot
12cb7aa33aSEmmanuel Vadot/ {
13cb7aa33aSEmmanuel Vadot	compatible = "hardkernel,odroid-n2l", "amlogic,s922x", "amlogic,g12b";
14cb7aa33aSEmmanuel Vadot	model = "Hardkernel ODROID-N2L";
15cb7aa33aSEmmanuel Vadot
16cb7aa33aSEmmanuel Vadot	sound {
17cb7aa33aSEmmanuel Vadot		compatible = "amlogic,axg-sound-card";
18cb7aa33aSEmmanuel Vadot		model = "ODROID-N2L";
19cb7aa33aSEmmanuel Vadot		audio-aux-devs = <&tdmout_b>, <&tdmin_a>, <&tdmin_b>,
20cb7aa33aSEmmanuel Vadot				 <&tdmin_c>, <&tdmin_lb>;
21cb7aa33aSEmmanuel Vadot		audio-routing = "TDMOUT_B IN 0", "FRDDR_A OUT 1",
22cb7aa33aSEmmanuel Vadot				"TDMOUT_B IN 1", "FRDDR_B OUT 1",
23cb7aa33aSEmmanuel Vadot				"TDMOUT_B IN 2", "FRDDR_C OUT 1",
24cb7aa33aSEmmanuel Vadot				"TDM_B Playback", "TDMOUT_B OUT",
25cb7aa33aSEmmanuel Vadot				"TDMIN_A IN 4", "TDM_B Loopback",
26cb7aa33aSEmmanuel Vadot				"TDMIN_B IN 4", "TDM_B Loopback",
27cb7aa33aSEmmanuel Vadot				"TDMIN_C IN 4", "TDM_B Loopback",
28cb7aa33aSEmmanuel Vadot				"TDMIN_LB IN 1", "TDM_B Loopback",
29cb7aa33aSEmmanuel Vadot				"TODDR_A IN 0", "TDMIN_A OUT",
30cb7aa33aSEmmanuel Vadot				"TODDR_B IN 0", "TDMIN_A OUT",
31cb7aa33aSEmmanuel Vadot				"TODDR_C IN 0", "TDMIN_A OUT",
32cb7aa33aSEmmanuel Vadot				"TODDR_A IN 1", "TDMIN_B OUT",
33cb7aa33aSEmmanuel Vadot				"TODDR_B IN 1", "TDMIN_B OUT",
34cb7aa33aSEmmanuel Vadot				"TODDR_C IN 1", "TDMIN_B OUT",
35cb7aa33aSEmmanuel Vadot				"TODDR_A IN 2", "TDMIN_C OUT",
36cb7aa33aSEmmanuel Vadot				"TODDR_B IN 2", "TDMIN_C OUT",
37cb7aa33aSEmmanuel Vadot				"TODDR_C IN 2", "TDMIN_C OUT",
38cb7aa33aSEmmanuel Vadot				"TODDR_A IN 6", "TDMIN_LB OUT",
39cb7aa33aSEmmanuel Vadot				"TODDR_B IN 6", "TDMIN_LB OUT",
40cb7aa33aSEmmanuel Vadot				"TODDR_C IN 6", "TDMIN_LB OUT";
41cb7aa33aSEmmanuel Vadot
42*b2d2a78aSEmmanuel Vadot		clocks = <&clkc CLKID_MPLL2>,
43*b2d2a78aSEmmanuel Vadot			 <&clkc CLKID_MPLL0>,
44*b2d2a78aSEmmanuel Vadot			 <&clkc CLKID_MPLL1>;
45*b2d2a78aSEmmanuel Vadot
46cb7aa33aSEmmanuel Vadot		assigned-clocks = <&clkc CLKID_MPLL2>,
47cb7aa33aSEmmanuel Vadot				  <&clkc CLKID_MPLL0>,
48cb7aa33aSEmmanuel Vadot				  <&clkc CLKID_MPLL1>;
49cb7aa33aSEmmanuel Vadot		assigned-clock-parents = <0>, <0>, <0>;
50cb7aa33aSEmmanuel Vadot		assigned-clock-rates = <294912000>,
51cb7aa33aSEmmanuel Vadot				       <270950400>,
52cb7aa33aSEmmanuel Vadot				       <393216000>;
53cb7aa33aSEmmanuel Vadot
54cb7aa33aSEmmanuel Vadot		dai-link-0 {
55cb7aa33aSEmmanuel Vadot			sound-dai = <&frddr_a>;
56cb7aa33aSEmmanuel Vadot		};
57cb7aa33aSEmmanuel Vadot
58cb7aa33aSEmmanuel Vadot		dai-link-1 {
59cb7aa33aSEmmanuel Vadot			sound-dai = <&frddr_b>;
60cb7aa33aSEmmanuel Vadot		};
61cb7aa33aSEmmanuel Vadot
62cb7aa33aSEmmanuel Vadot		dai-link-2 {
63cb7aa33aSEmmanuel Vadot			sound-dai = <&frddr_c>;
64cb7aa33aSEmmanuel Vadot		};
65cb7aa33aSEmmanuel Vadot
66cb7aa33aSEmmanuel Vadot		dai-link-3 {
67cb7aa33aSEmmanuel Vadot			sound-dai = <&toddr_a>;
68cb7aa33aSEmmanuel Vadot		};
69cb7aa33aSEmmanuel Vadot
70cb7aa33aSEmmanuel Vadot		dai-link-4 {
71cb7aa33aSEmmanuel Vadot			sound-dai = <&toddr_b>;
72cb7aa33aSEmmanuel Vadot		};
73cb7aa33aSEmmanuel Vadot
74cb7aa33aSEmmanuel Vadot		dai-link-5 {
75cb7aa33aSEmmanuel Vadot			sound-dai = <&toddr_c>;
76cb7aa33aSEmmanuel Vadot		};
77cb7aa33aSEmmanuel Vadot
78cb7aa33aSEmmanuel Vadot		/* 8ch hdmi interface */
79cb7aa33aSEmmanuel Vadot		dai-link-6 {
80cb7aa33aSEmmanuel Vadot			sound-dai = <&tdmif_b>;
81cb7aa33aSEmmanuel Vadot			dai-format = "i2s";
82cb7aa33aSEmmanuel Vadot			dai-tdm-slot-tx-mask-0 = <1 1>;
83cb7aa33aSEmmanuel Vadot			dai-tdm-slot-tx-mask-1 = <1 1>;
84cb7aa33aSEmmanuel Vadot			dai-tdm-slot-tx-mask-2 = <1 1>;
85cb7aa33aSEmmanuel Vadot			dai-tdm-slot-tx-mask-3 = <1 1>;
86cb7aa33aSEmmanuel Vadot			mclk-fs = <256>;
87cb7aa33aSEmmanuel Vadot
88cb7aa33aSEmmanuel Vadot			codec {
89cb7aa33aSEmmanuel Vadot				sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
90cb7aa33aSEmmanuel Vadot			};
91cb7aa33aSEmmanuel Vadot		};
92cb7aa33aSEmmanuel Vadot
93cb7aa33aSEmmanuel Vadot		/* hdmi glue */
94cb7aa33aSEmmanuel Vadot		dai-link-7 {
95cb7aa33aSEmmanuel Vadot			sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
96cb7aa33aSEmmanuel Vadot
97cb7aa33aSEmmanuel Vadot			codec {
98cb7aa33aSEmmanuel Vadot				sound-dai = <&hdmi_tx>;
99cb7aa33aSEmmanuel Vadot			};
100cb7aa33aSEmmanuel Vadot		};
101cb7aa33aSEmmanuel Vadot	};
102cb7aa33aSEmmanuel Vadot};
103cb7aa33aSEmmanuel Vadot
104cb7aa33aSEmmanuel Vadot&eth_phy {
105cb7aa33aSEmmanuel Vadot	status = "disabled";
106cb7aa33aSEmmanuel Vadot};
107cb7aa33aSEmmanuel Vadot
108cb7aa33aSEmmanuel Vadot&vddcpu_a {
109cb7aa33aSEmmanuel Vadot	regulator-min-microvolt = <680000>;
110cb7aa33aSEmmanuel Vadot	regulator-max-microvolt = <1040000>;
111cb7aa33aSEmmanuel Vadot
112cb7aa33aSEmmanuel Vadot	pwms = <&pwm_ab 0 1500 0>;
113cb7aa33aSEmmanuel Vadot};
114cb7aa33aSEmmanuel Vadot
115cb7aa33aSEmmanuel Vadot&vddcpu_b {
116cb7aa33aSEmmanuel Vadot	regulator-min-microvolt = <680000>;
117cb7aa33aSEmmanuel Vadot	regulator-max-microvolt = <1040000>;
118cb7aa33aSEmmanuel Vadot
119cb7aa33aSEmmanuel Vadot	pwms = <&pwm_AO_cd 1 1500 0>;
120cb7aa33aSEmmanuel Vadot};
121cb7aa33aSEmmanuel Vadot
122cb7aa33aSEmmanuel Vadot&usb2_phy0 {
123cb7aa33aSEmmanuel Vadot	phy-supply = <&usb_pwr_en>;
124cb7aa33aSEmmanuel Vadot};
125cb7aa33aSEmmanuel Vadot
126cb7aa33aSEmmanuel Vadot&usb2_phy1 {
127cb7aa33aSEmmanuel Vadot	phy-supply = <&usb_pwr_en>;
128cb7aa33aSEmmanuel Vadot};
129