1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
3 * Copyright (c) 2019 BayLibre, SAS
4 * Author: Neil Armstrong <narmstrong@baylibre.com>
7 #include "meson-g12b-odroid.dtsi"
14 dio2133: audio-amplifier-0 {
15 compatible = "simple-audio-amplifier";
16 enable-gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>;
17 VCC-supply = <&vcc_5v>;
18 sound-name-prefix = "U19";
22 hub_5v: regulator-hub_5v {
23 compatible = "regulator-fixed";
24 regulator-name = "HUB_5V";
25 regulator-min-microvolt = <5000000>;
26 regulator-max-microvolt = <5000000>;
27 vin-supply = <&vcc_5v>;
29 /* Connected to the Hub CHIPENABLE, LOW sets low power state */
30 gpio = <&gpio GPIOH_5 GPIO_ACTIVE_HIGH>;
35 compatible = "amlogic,axg-sound-card";
37 audio-widgets = "Line", "Lineout";
38 audio-aux-devs = <&tdmout_b>, <&tdmout_c>, <&tdmin_a>,
39 <&tdmin_b>, <&tdmin_c>, <&tdmin_lb>,
41 audio-routing = "TDMOUT_B IN 0", "FRDDR_A OUT 1",
42 "TDMOUT_B IN 1", "FRDDR_B OUT 1",
43 "TDMOUT_B IN 2", "FRDDR_C OUT 1",
44 "TDM_B Playback", "TDMOUT_B OUT",
45 "TDMOUT_C IN 0", "FRDDR_A OUT 2",
46 "TDMOUT_C IN 1", "FRDDR_B OUT 2",
47 "TDMOUT_C IN 2", "FRDDR_C OUT 2",
48 "TDM_C Playback", "TDMOUT_C OUT",
49 "TDMIN_A IN 4", "TDM_B Loopback",
50 "TDMIN_B IN 4", "TDM_B Loopback",
51 "TDMIN_C IN 4", "TDM_B Loopback",
52 "TDMIN_LB IN 1", "TDM_B Loopback",
53 "TDMIN_A IN 5", "TDM_C Loopback",
54 "TDMIN_B IN 5", "TDM_C Loopback",
55 "TDMIN_C IN 5", "TDM_C Loopback",
56 "TDMIN_LB IN 2", "TDM_C Loopback",
57 "TODDR_A IN 0", "TDMIN_A OUT",
58 "TODDR_B IN 0", "TDMIN_A OUT",
59 "TODDR_C IN 0", "TDMIN_A OUT",
60 "TODDR_A IN 1", "TDMIN_B OUT",
61 "TODDR_B IN 1", "TDMIN_B OUT",
62 "TODDR_C IN 1", "TDMIN_B OUT",
63 "TODDR_A IN 2", "TDMIN_C OUT",
64 "TODDR_B IN 2", "TDMIN_C OUT",
65 "TODDR_C IN 2", "TDMIN_C OUT",
66 "TODDR_A IN 6", "TDMIN_LB OUT",
67 "TODDR_B IN 6", "TDMIN_LB OUT",
68 "TODDR_C IN 6", "TDMIN_LB OUT",
69 "U19 INL", "ACODEC LOLP",
70 "U19 INR", "ACODEC LORP",
71 "Lineout", "U19 OUTL",
72 "Lineout", "U19 OUTR";
74 assigned-clocks = <&clkc CLKID_MPLL2>,
77 assigned-clock-parents = <0>, <0>, <0>;
78 assigned-clock-rates = <294912000>,
84 sound-dai = <&frddr_a>;
88 sound-dai = <&frddr_b>;
92 sound-dai = <&frddr_c>;
96 sound-dai = <&toddr_a>;
100 sound-dai = <&toddr_b>;
104 sound-dai = <&toddr_c>;
107 /* 8ch hdmi interface */
109 sound-dai = <&tdmif_b>;
111 dai-tdm-slot-tx-mask-0 = <1 1>;
112 dai-tdm-slot-tx-mask-1 = <1 1>;
113 dai-tdm-slot-tx-mask-2 = <1 1>;
114 dai-tdm-slot-tx-mask-3 = <1 1>;
118 sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
122 sound-dai = <&toacodec TOACODEC_IN_B>;
126 /* i2s jack output interface */
128 sound-dai = <&tdmif_c>;
130 dai-tdm-slot-tx-mask-0 = <1 1>;
134 sound-dai = <&tohdmitx TOHDMITX_I2S_IN_C>;
138 sound-dai = <&toacodec TOACODEC_IN_C>;
144 sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
147 sound-dai = <&hdmi_tx>;
153 sound-dai = <&toacodec TOACODEC_OUT>;
156 sound-dai = <&acodec>;
163 AVDD-supply = <&vddao_1v8>;
168 pinctrl-0 = <ð_pins>, <ð_rgmii_pins>;
169 pinctrl-names = "default";
172 phy-handle = <&external_phy>;
173 amlogic,tx-delay-ns = <2>;
177 external_phy: ethernet-phy@0 {
178 /* Realtek RTL8211F (0x001cc916) */
182 reset-assert-us = <10000>;
183 reset-deassert-us = <80000>;
184 reset-gpios = <&gpio GPIOZ_15 (GPIO_ACTIVE_LOW | GPIO_OPEN_DRAIN)>;
186 interrupt-parent = <&gpio_intc>;
187 /* MAC_INTR on GPIOZ_14 */
188 interrupts = <26 IRQ_TYPE_LEVEL_LOW>;
195 "", "", "", "", "", "", "", "",
196 "", "", "", "", "", "", "", "",
198 "", "", "", "", "", "", "", "",
201 "", "", "", "", "", "", "", "",
202 "", "", "", "", "", "", "", "",
204 "", "", "", "", "", "", "", "",
206 "PIN_44", /* GPIOA_0 */
207 "PIN_46", /* GPIOA_1 */
208 "PIN_45", /* GPIOA_2 */
209 "PIN_47", /* GPIOA_3 */
210 "PIN_26", /* GPIOA_4 */
211 "", "", "", "", "", "",
212 "PIN_42", /* GPIOA_11 */
213 "PIN_32", /* GPIOA_12 */
214 "PIN_7", /* GPIOA_13 */
215 "PIN_27", /* GPIOA_14 */
216 "PIN_28", /* GPIOA_15 */
218 "PIN_16", /* GPIOX_0 */
219 "PIN_18", /* GPIOX_1 */
220 "PIN_22", /* GPIOX_2 */
221 "PIN_11", /* GPIOX_3 */
222 "PIN_13", /* GPIOX_4 */
223 "PIN_33", /* GPIOX_5 */
224 "PIN_35", /* GPIOX_6 */
225 "PIN_15", /* GPIOX_7 */
226 "PIN_19", /* GPIOX_8 */
227 "PIN_21", /* GPIOX_9 */
228 "PIN_24", /* GPIOX_10 */
229 "PIN_23", /* GPIOX_11 */
230 "PIN_8", /* GPIOX_12 */
231 "PIN_10", /* GPIOX_13 */
232 "PIN_29", /* GPIOX_14 */
233 "PIN_31", /* GPIOX_15 */
234 "PIN_12", /* GPIOX_16 */
235 "PIN_3", /* GPIOX_17 */
236 "PIN_5", /* GPIOX_18 */
237 "PIN_36"; /* GPIOX_19 */
239 * WARNING: The USB Hub on the Odroid-N2 needs a reset signal
240 * to be turned high in order to be detected by the USB Controller
241 * This signal should be handled by a USB specific power sequence
242 * in order to reset the Hub when USB bus is powered down.
246 gpios = <GPIOH_4 GPIO_ACTIVE_HIGH>;
248 line-name = "usb-hub-reset";
254 pinctrl-0 = <&i2c3_sda_a_pins>, <&i2c3_sck_a_pins>;
255 pinctrl-names = "default";
258 compatible = "nxp,pcf8563";
266 pinctrl-0 = <&remote_input_ao_pins>;
267 pinctrl-names = "default";
268 linux,rc-map-name = "rc-odroid";
272 * EMMC_D4, EMMC_D5, EMMC_D6 and EMMC_D7 pins are shared between SPI NOR pins
273 * and eMMC Data 4 to 7 pins.
274 * Replace emmc_data_8b_pins to emmc_data_4b_pins from sd_emmc_c pinctrl-0,
275 * and change bus-width to 4 then spifc can be enabled.
276 * The SW1 slide should also be set to the correct position.
280 pinctrl-0 = <&nor_pins>;
281 pinctrl-names = "default";
284 #address-cells = <1>;
286 compatible = "mxicy,mx25u6435f", "jedec,spi-nor";
288 spi-max-frequency = <104000000>;
297 vbus-supply = <&usb_pwr_en>;
301 /* Enable the hub which is connected to this port */
302 phy-supply = <&hub_5v>;