From: Christian Marangi Date: Thu, 4 Dec 2025 22:14:30 +0000 (+0100) Subject: airoha: enable I2S sound driver and add nodes for eMMC RFB board X-Git-Tag: v25.12.0-rc1~135 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7b55651e61334f9a7f347519842df44058e79e59;p=thirdparty%2Fopenwrt.git 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 --- diff --git a/target/linux/airoha/an7581/config-6.12 b/target/linux/airoha/an7581/config-6.12 index 77bd6492764..da40adadaff 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 25d9b87af0f..ee800b61314 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 e50048ac94a..786044f254a 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 = ; + }; + uart4: serial@1fbf0600 { compatible = "airoha,en7523-uart"; reg = <0x0 0x1fbf0600 0x0 0x30>;