[][Add mt79xx audio platform and machine driver]

[Description]
Add mt79xx audio platform and machine driver with wm8960 and si3218x

Patch reference: https://lore.kernel.org/alsa-devel/1573814926-15805-2-git-send-email-eason.yen@mediatek.com/T/

[Release-log]
N/A

Change-Id: I316c562e20d118899a38206cc1fd4c6e14bffdbd
Reviewed-on: https://gerrit.mediatek.inc/c/openwrt/feeds/mtk_openwrt_feeds/+/5397355
diff --git a/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7986a-emmc-rfb.dts b/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7986a-emmc-rfb.dts
index f5ec053..b4ae0b0 100644
--- a/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7986a-emmc-rfb.dts
+++ b/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7986a-emmc-rfb.dts
@@ -32,8 +32,8 @@
 		regulator-always-on;
 	};
 
-	sound {
-		compatible = "mediatek,mt7986-wm8960-machine";
+	sound_wm8960 {
+		compatible = "mediatek,mt79xx-wm8960-machine";
 		mediatek,platform = <&afe>;
 		audio-routing = "Headphone", "HP_L",
 				"Headphone", "HP_R",
@@ -42,6 +42,13 @@
 		mediatek,audio-codec = <&wm8960>;
 		status = "okay";
 	};
+
+	sound_si3218x {
+		compatible = "mediatek,mt79xx-si3218x-machine";
+		mediatek,platform = <&afe>;
+		mediatek,ext-codec = <&proslic_spi>;
+		status = "okay";
+	};
 };
 
 &pwm {
@@ -187,6 +194,18 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&spic_pins_g2>;
 	status = "okay";
+
+	proslic_spi: proslic_spi@0 {
+		compatible = "silabs,proslic_spi";
+		reg = <0>;
+		spi-max-frequency = <10000000>;
+		spi-cpha = <1>;
+		spi-cpol = <1>;
+		channel_count = <1>;
+		debug_level = <4>;       /* 1 = TRC, 2 = DBG, 4 = ERR */
+		reset_gpio = <&pio 7 0>;
+		ig,enable-spi = <1>;     /* 1: Enable, 0: Disable */
+	};
 };
 
 &mmc0 {