1cb7aa33aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2cb7aa33aSEmmanuel Vadot/* 3cb7aa33aSEmmanuel Vadot * Copyright (c) 2021 BayLibre SAS 4cb7aa33aSEmmanuel Vadot * Author: Neil Armstrong <narmstrong@baylibre.com> 5cb7aa33aSEmmanuel Vadot */ 6cb7aa33aSEmmanuel Vadot 7cb7aa33aSEmmanuel Vadot/dts-v1/; 8cb7aa33aSEmmanuel Vadot 9cb7aa33aSEmmanuel Vadot#include "meson-sm1-bananapi.dtsi" 10cb7aa33aSEmmanuel Vadot#include <dt-bindings/sound/meson-g12a-tohdmitx.h> 11cb7aa33aSEmmanuel Vadot 12cb7aa33aSEmmanuel Vadot/ { 13cb7aa33aSEmmanuel Vadot compatible = "bananapi,bpi-m2-pro", "amlogic,sm1"; 14cb7aa33aSEmmanuel Vadot model = "Banana Pi BPI-M2-PRO"; 15cb7aa33aSEmmanuel Vadot 16cb7aa33aSEmmanuel Vadot sound { 17cb7aa33aSEmmanuel Vadot compatible = "amlogic,axg-sound-card"; 18cb7aa33aSEmmanuel Vadot model = "BPI-M2-PRO"; 19cb7aa33aSEmmanuel Vadot audio-aux-devs = <&tdmout_b>; 20cb7aa33aSEmmanuel Vadot audio-routing = "TDMOUT_B IN 0", "FRDDR_A OUT 1", 21cb7aa33aSEmmanuel Vadot "TDMOUT_B IN 1", "FRDDR_B OUT 1", 22cb7aa33aSEmmanuel Vadot "TDMOUT_B IN 2", "FRDDR_C OUT 1", 23cb7aa33aSEmmanuel Vadot "TDM_B Playback", "TDMOUT_B OUT"; 24cb7aa33aSEmmanuel Vadot 25*b2d2a78aSEmmanuel Vadot clocks = <&clkc CLKID_MPLL2>, 26*b2d2a78aSEmmanuel Vadot <&clkc CLKID_MPLL0>, 27*b2d2a78aSEmmanuel Vadot <&clkc CLKID_MPLL1>; 28*b2d2a78aSEmmanuel Vadot 29cb7aa33aSEmmanuel Vadot assigned-clocks = <&clkc CLKID_MPLL2>, 30cb7aa33aSEmmanuel Vadot <&clkc CLKID_MPLL0>, 31cb7aa33aSEmmanuel Vadot <&clkc CLKID_MPLL1>; 32cb7aa33aSEmmanuel Vadot assigned-clock-parents = <0>, <0>, <0>; 33cb7aa33aSEmmanuel Vadot assigned-clock-rates = <294912000>, 34cb7aa33aSEmmanuel Vadot <270950400>, 35cb7aa33aSEmmanuel Vadot <393216000>; 36cb7aa33aSEmmanuel Vadot 37cb7aa33aSEmmanuel Vadot dai-link-0 { 38cb7aa33aSEmmanuel Vadot sound-dai = <&frddr_a>; 39cb7aa33aSEmmanuel Vadot }; 40cb7aa33aSEmmanuel Vadot 41cb7aa33aSEmmanuel Vadot dai-link-1 { 42cb7aa33aSEmmanuel Vadot sound-dai = <&frddr_b>; 43cb7aa33aSEmmanuel Vadot }; 44cb7aa33aSEmmanuel Vadot 45cb7aa33aSEmmanuel Vadot dai-link-2 { 46cb7aa33aSEmmanuel Vadot sound-dai = <&frddr_c>; 47cb7aa33aSEmmanuel Vadot }; 48cb7aa33aSEmmanuel Vadot 49cb7aa33aSEmmanuel Vadot /* 8ch hdmi interface */ 50cb7aa33aSEmmanuel Vadot dai-link-3 { 51cb7aa33aSEmmanuel Vadot sound-dai = <&tdmif_b>; 52cb7aa33aSEmmanuel Vadot dai-format = "i2s"; 53cb7aa33aSEmmanuel Vadot dai-tdm-slot-tx-mask-0 = <1 1>; 54cb7aa33aSEmmanuel Vadot dai-tdm-slot-tx-mask-1 = <1 1>; 55cb7aa33aSEmmanuel Vadot dai-tdm-slot-tx-mask-2 = <1 1>; 56cb7aa33aSEmmanuel Vadot dai-tdm-slot-tx-mask-3 = <1 1>; 57cb7aa33aSEmmanuel Vadot mclk-fs = <256>; 58cb7aa33aSEmmanuel Vadot 59cb7aa33aSEmmanuel Vadot codec { 60cb7aa33aSEmmanuel Vadot sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>; 61cb7aa33aSEmmanuel Vadot }; 62cb7aa33aSEmmanuel Vadot }; 63cb7aa33aSEmmanuel Vadot 64cb7aa33aSEmmanuel Vadot /* hdmi glue */ 65cb7aa33aSEmmanuel Vadot dai-link-4 { 66cb7aa33aSEmmanuel Vadot sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>; 67cb7aa33aSEmmanuel Vadot 68cb7aa33aSEmmanuel Vadot codec { 69cb7aa33aSEmmanuel Vadot sound-dai = <&hdmi_tx>; 70cb7aa33aSEmmanuel Vadot }; 71cb7aa33aSEmmanuel Vadot }; 72cb7aa33aSEmmanuel Vadot }; 73cb7aa33aSEmmanuel Vadot}; 74cb7aa33aSEmmanuel Vadot 75cb7aa33aSEmmanuel Vadot&clkc_audio { 76cb7aa33aSEmmanuel Vadot status = "okay"; 77cb7aa33aSEmmanuel Vadot}; 78cb7aa33aSEmmanuel Vadot 79cb7aa33aSEmmanuel Vadot&frddr_a { 80cb7aa33aSEmmanuel Vadot status = "okay"; 81cb7aa33aSEmmanuel Vadot}; 82cb7aa33aSEmmanuel Vadot 83cb7aa33aSEmmanuel Vadot&frddr_b { 84cb7aa33aSEmmanuel Vadot status = "okay"; 85cb7aa33aSEmmanuel Vadot}; 86cb7aa33aSEmmanuel Vadot 87cb7aa33aSEmmanuel Vadot&frddr_c { 88cb7aa33aSEmmanuel Vadot status = "okay"; 89cb7aa33aSEmmanuel Vadot}; 90cb7aa33aSEmmanuel Vadot 91cb7aa33aSEmmanuel Vadot&tdmif_b { 92cb7aa33aSEmmanuel Vadot status = "okay"; 93cb7aa33aSEmmanuel Vadot}; 94cb7aa33aSEmmanuel Vadot 95cb7aa33aSEmmanuel Vadot&tdmout_b { 96cb7aa33aSEmmanuel Vadot status = "okay"; 97cb7aa33aSEmmanuel Vadot}; 98cb7aa33aSEmmanuel Vadot 99cb7aa33aSEmmanuel Vadot&tohdmitx { 100cb7aa33aSEmmanuel Vadot status = "okay"; 101cb7aa33aSEmmanuel Vadot}; 102