summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Marangi2025-12-04 22:14:30 +0000
committerChristian Marangi2025-12-04 22:16:13 +0000
commit7b55651e61334f9a7f347519842df44058e79e59 (patch)
treebf93f2209b63461b2b99f55d21446640eb17d907
parent8f1914053b24f56c101057390a0a83707864cf71 (diff)
downloadstintel-7b55651e61334f9a7f347519842df44058e79e59.tar.gz
airoha: enable I2S sound driver and add nodes for eMMC RFB board
Enable I2S sound driver and add nodes for eMMC RFB board since it's the one that always have the I2C codec and can use the sound card. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
-rw-r--r--target/linux/airoha/an7581/config-6.125
-rw-r--r--target/linux/airoha/dts/an7581-evb-emmc.dts18
-rw-r--r--target/linux/airoha/dts/an7581.dtsi17
3 files changed, 40 insertions, 0 deletions
diff --git a/target/linux/airoha/an7581/config-6.12 b/target/linux/airoha/an7581/config-6.12
index 77bd649276..da40adadaf 100644
--- a/target/linux/airoha/an7581/config-6.12
+++ b/target/linux/airoha/an7581/config-6.12
@@ -357,9 +357,14 @@ CONFIG_SERIAL_OF_PLATFORM=y
CONFIG_SGL_ALLOC=y
CONFIG_SKB_EXTENSIONS=y
CONFIG_SMP=y
+CONFIG_SND=y
+CONFIG_SND_SOC=y
+CONFIG_SND_SOC_AN7581=y
+CONFIG_SND_SOC_AN7581_WM8960=y
CONFIG_SOCK_RX_QUEUE_MAPPING=y
CONFIG_SOC_BUS=y
CONFIG_SOFTIRQ_ON_OWN_STACK=y
+CONFIG_SOUND=y
CONFIG_SPARSEMEM=y
CONFIG_SPARSEMEM_EXTREME=y
CONFIG_SPARSEMEM_VMEMMAP=y
diff --git a/target/linux/airoha/dts/an7581-evb-emmc.dts b/target/linux/airoha/dts/an7581-evb-emmc.dts
index 25d9b87af0..ee800b6131 100644
--- a/target/linux/airoha/dts/an7581-evb-emmc.dts
+++ b/target/linux/airoha/dts/an7581-evb-emmc.dts
@@ -28,6 +28,19 @@
};
};
+&sound {
+ audio-routing = "Headphone", "HP_L",
+ "Headphone", "HP_R",
+ "LINPUT1", "AMIC",
+ "RINPUT1", "AMIC";
+
+ status = "okay";
+
+ codec {
+ sound-dai = <&wm8960>;
+ };
+};
+
&en7581_pinctrl {
gpio-ranges = <&en7581_pinctrl 0 13 47>;
@@ -160,6 +173,11 @@
&i2c0 {
status = "okay";
+
+ wm8960: codec@1a {
+ compatible = "wlf,wm8960";
+ reg = <0x1a>;
+ };
};
&pcie0 {
diff --git a/target/linux/airoha/dts/an7581.dtsi b/target/linux/airoha/dts/an7581.dtsi
index e50048ac94..786044f254 100644
--- a/target/linux/airoha/dts/an7581.dtsi
+++ b/target/linux/airoha/dts/an7581.dtsi
@@ -360,6 +360,16 @@
regulator-always-on;
};
+ sound: sound {
+ compatible = "airoha,an7581-wm8960-sound";
+
+ status = "disabled";
+
+ platform {
+ sound-dai = <&afe>;
+ };
+ };
+
soc {
compatible = "simple-bus";
#address-cells = <2>;
@@ -419,6 +429,13 @@
status = "disabled";
};
+ afe: afe@1fbe2200 {
+ compatible = "airoha,an7581-afe";
+ reg = <0x0 0x1fbe2200 0x0 0x9000>;
+
+ interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
uart4: serial@1fbf0600 {
compatible = "airoha,en7523-uart";
reg = <0x0 0x1fbf0600 0x0 0x30>;