Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 /*
0003  * Copyright (c) 2019 BayLibre, SAS
0004  * Author: Neil Armstrong <narmstrong@baylibre.com>
0005  * Copyright (c) 2019 Christian Hewitt <christianshewitt@gmail.com>
0006  */
0007 
0008 /dts-v1/;
0009 
0010 #include "meson-g12b-w400.dtsi"
0011 #include <dt-bindings/sound/meson-g12a-tohdmitx.h>
0012 
0013 / {
0014         compatible = "ugoos,am6", "amlogic,s922x", "amlogic,g12b";
0015         model = "Ugoos AM6";
0016 
0017         spdif_dit: audio-codec-1 {
0018                 #sound-dai-cells = <0>;
0019                 compatible = "linux,spdif-dit";
0020                 status = "okay";
0021                 sound-name-prefix = "DIT";
0022         };
0023 
0024         sound {
0025                 compatible = "amlogic,axg-sound-card";
0026                 model = "UGOOS-AM6";
0027                 audio-aux-devs = <&tdmout_b>;
0028                 audio-routing = "TDMOUT_B IN 0", "FRDDR_A OUT 1",
0029                                 "TDMOUT_B IN 1", "FRDDR_B OUT 1",
0030                                 "TDMOUT_B IN 2", "FRDDR_C OUT 1",
0031                                 "TDM_B Playback", "TDMOUT_B OUT",
0032                                 "SPDIFOUT IN 0", "FRDDR_A OUT 3",
0033                                 "SPDIFOUT IN 1", "FRDDR_B OUT 3",
0034                                 "SPDIFOUT IN 2", "FRDDR_C OUT 3";
0035 
0036                 assigned-clocks = <&clkc CLKID_MPLL2>,
0037                                   <&clkc CLKID_MPLL0>,
0038                                   <&clkc CLKID_MPLL1>;
0039                 assigned-clock-parents = <0>, <0>, <0>;
0040                 assigned-clock-rates = <294912000>,
0041                                        <270950400>,
0042                                        <393216000>;
0043                 status = "okay";
0044 
0045                 dai-link-0 {
0046                         sound-dai = <&frddr_a>;
0047                 };
0048 
0049                 dai-link-1 {
0050                         sound-dai = <&frddr_b>;
0051                 };
0052 
0053                 dai-link-2 {
0054                         sound-dai = <&frddr_c>;
0055                 };
0056 
0057                 /* 8ch hdmi interface */
0058                 dai-link-3 {
0059                         sound-dai = <&tdmif_b>;
0060                         dai-format = "i2s";
0061                         dai-tdm-slot-tx-mask-0 = <1 1>;
0062                         dai-tdm-slot-tx-mask-1 = <1 1>;
0063                         dai-tdm-slot-tx-mask-2 = <1 1>;
0064                         dai-tdm-slot-tx-mask-3 = <1 1>;
0065                         mclk-fs = <256>;
0066 
0067                         codec {
0068                                 sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
0069                         };
0070                 };
0071 
0072                 /* spdif hdmi or toslink interface */
0073                 dai-link-4 {
0074                         sound-dai = <&spdifout>;
0075 
0076                         codec-0 {
0077                                 sound-dai = <&spdif_dit>;
0078                         };
0079 
0080                         codec-1 {
0081                                 sound-dai = <&tohdmitx TOHDMITX_SPDIF_IN_A>;
0082                         };
0083                 };
0084 
0085                 /* spdif hdmi interface */
0086                 dai-link-5 {
0087                         sound-dai = <&spdifout_b>;
0088 
0089                         codec {
0090                                 sound-dai = <&tohdmitx TOHDMITX_SPDIF_IN_B>;
0091                         };
0092                 };
0093 
0094                 /* hdmi glue */
0095                 dai-link-6 {
0096                         sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
0097 
0098                         codec {
0099                                 sound-dai = <&hdmi_tx>;
0100                         };
0101                 };
0102         };
0103 };
0104 
0105 &arb {
0106         status = "okay";
0107 };
0108 
0109 &clkc_audio {
0110         status = "okay";
0111 };
0112 
0113 &frddr_a {
0114         status = "okay";
0115 };
0116 
0117 &frddr_b {
0118         status = "okay";
0119 };
0120 
0121 &frddr_c {
0122         status = "okay";
0123 };
0124 
0125 &ir {
0126         linux,rc-map-name = "rc-khadas";
0127 };
0128 
0129 &spdifout {
0130         pinctrl-0 = <&spdif_out_h_pins>;
0131         pinctrl-names = "default";
0132         status = "okay";
0133 };
0134 
0135 &spdifout_b {
0136         status = "okay";
0137 };
0138 
0139 &tdmif_b {
0140         status = "okay";
0141 };
0142 
0143 &tdmout_b {
0144         status = "okay";
0145 };
0146 
0147 &tohdmitx {
0148         status = "okay";
0149 };
0150 
0151 &uart_A {
0152         status = "okay";
0153         pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
0154         pinctrl-names = "default";
0155         uart-has-rtscts;
0156 
0157         bluetooth {
0158                 compatible = "brcm,bcm43438-bt";
0159                 shutdown-gpios = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>;
0160                 max-speed = <2000000>;
0161                 clocks = <&wifi32k>;
0162         clock-names = "lpo";
0163         };
0164 };
0165 
0166 &uart_AO {
0167         status = "okay";
0168         pinctrl-0 = <&uart_ao_a_pins>;
0169         pinctrl-names = "default";
0170 };
0171 
0172 &usb {
0173         status = "okay";
0174         dr_mode = "host";
0175         vbus-supply = <&usb_pwr_en>;
0176 };
0177 
0178 &usb2_phy0 {
0179         phy-supply = <&usb1_pow>;
0180 };
0181 
0182 &usb2_phy1 {
0183         phy-supply = <&usb1_pow>;
0184 };