Hi Uwe:
Thanks for your comments. I will address them in v2.
Best regards
Qianghua Wang
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Hello,
On Wed, Aug 12, 2026 at 02:59:42PM +0800, qianghua wang wrote:
> From: "qianghua.wang" <[email protected]>
huh, why is here a . in your real name and in the real From header there isn't?
> Add SoundWire SDCA driver for Senary SN624x multi-function codecs
> (jack, speaker amp, and DMIC). Extend the Senary MAINTAINERS entry for
> the new codec files only; Intel ACPI match tables remain under INTEL
> ASoC DRIVERS.
>
> Signed-off-by: qianghua.wang <[email protected]>
> ---
> MAINTAINERS | 3 +
> sound/soc/codecs/Kconfig | 12 +
> sound/soc/codecs/Makefile | 2 +
> sound/soc/codecs/sn624x-sdca-sdw.c | 1873 ++++++++++++++++++++++++++++
> sound/soc/codecs/sn624x-sdca.h | 144 +++
> 5 files changed, 2034 insertions(+)
> create mode 100644 sound/soc/codecs/sn624x-sdca-sdw.c
> create mode 100644 sound/soc/codecs/sn624x-sdca.h
>
> diff --git a/MAINTAINERS b/MAINTAINERS index
> a21c79f3e436..f18e0ed039e9 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -29837,9 +29837,12 @@ F: tools/testing/selftests/cgroup/test_zswap.c
>
> SENARYTECH AUDIO CODEC DRIVER
> M: bo liu <[email protected]>
> +M: qianghua.wang <[email protected]>
> S: Maintained
> T: git git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git
> F: sound/hda/codecs/senarytech.c
> +F: sound/soc/codecs/sn624x*
> +F: sound/soc/sdw_utils/soc_sdw_senary*
>
> THE REST
> M: Linus Torvalds <[email protected]>
> diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig index
> 4761ff4afb59..06e4a02f0c58 100644
> --- a/sound/soc/codecs/Kconfig
> +++ b/sound/soc/codecs/Kconfig
> @@ -238,6 +238,7 @@ config SND_SOC_ALL_CODECS
> imply SND_SOC_RT715_SDCA_SDW
> imply SND_SOC_RT721_SDCA_SDW
> imply SND_SOC_RT722_SDCA_SDW
> + imply SND_SOC_SN624X_SDCA_SDW
> imply SND_SOC_RT1308_SDW
> imply SND_SOC_RT1316_SDW
> imply SND_SOC_RT1318
> @@ -1968,6 +1969,17 @@ config SND_SOC_RT722_SDCA_SDW
> select REGMAP_SOUNDWIRE
> select REGMAP_SOUNDWIRE_MBQ
>
> +config SND_SOC_SN624X_SDCA_SDW
> + tristate "Senary SN624x SDCA Codec - SDW"
> + depends on SOUNDWIRE
> + select REGMAP_SOUNDWIRE
> + select REGMAP_SOUNDWIRE_MBQ
> + help
> + Enable support for Senary SN624x SDCA SoundWire codecs.
> + These multi-function devices provide headset jack, speaker
> + amplifier, and digital microphone endpoints on the SoundWire
> + bus.
> +
> config SND_SOC_RT715
> tristate
>
> diff --git a/sound/soc/codecs/Makefile b/sound/soc/codecs/Makefile
> index d2a689006d69..44b471d8b8c3 100644
> --- a/sound/soc/codecs/Makefile
> +++ b/sound/soc/codecs/Makefile
> @@ -285,6 +285,7 @@ snd-soc-rt715-y := rt715.o rt715-sdw.o
> snd-soc-rt715-sdca-y := rt715-sdca.o rt715-sdca-sdw.o
> snd-soc-rt721-sdca-y := rt721-sdca.o rt721-sdca-sdw.o
> snd-soc-rt722-sdca-y := rt722-sdca.o rt722-sdca-sdw.o
> +snd-soc-sn624x-sdca-y := sn624x-sdca-sdw.o
> snd-soc-rt9120-y := rt9120.o
> snd-soc-rt9123-y := rt9123.o
> snd-soc-rt9123p-y := rt9123p.o
> @@ -726,6 +727,7 @@ obj-$(CONFIG_SND_SOC_RT715) += snd-soc-rt715.o
> obj-$(CONFIG_SND_SOC_RT715_SDCA_SDW) += snd-soc-rt715-sdca.o
> obj-$(CONFIG_SND_SOC_RT721_SDCA_SDW) += snd-soc-rt721-sdca.o
> obj-$(CONFIG_SND_SOC_RT722_SDCA_SDW) += snd-soc-rt722-sdca.o
> +obj-$(CONFIG_SND_SOC_SN624X_SDCA_SDW) += snd-soc-sn624x-sdca.o
> obj-$(CONFIG_SND_SOC_RT9120) += snd-soc-rt9120.o
> obj-$(CONFIG_SND_SOC_RT9123) += snd-soc-rt9123.o
> obj-$(CONFIG_SND_SOC_RT9123P) += snd-soc-rt9123p.o
> diff --git a/sound/soc/codecs/sn624x-sdca-sdw.c
> b/sound/soc/codecs/sn624x-sdca-sdw.c
> new file mode 100644
> index 000000000000..5129e883cddc
> --- /dev/null
> +++ b/sound/soc/codecs/sn624x-sdca-sdw.c
> @@ -0,0 +1,1873 @@
> +// SPDX-License-Identifier: GPL-2.0-only // // sn624x-sdw-sdca.c --
> +SN624X SDCA ALSA SoC SoundWire audio driver // // Copyright(c) 2021
> +Realtek Semiconductor Corp.
> +// Copyright(c) 2025 Senary Semiconductor Corp.
> +//
> +
> +#include <linux/atomic.h>
> +#include <linux/bitops.h>
> +#include <linux/delay.h>
> +#include <linux/find.h>
> +#include <linux/device.h>
> +#include <linux/errno.h>
> +#include <linux/jiffies.h>
> +#include <linux/mod_devicetable.h>
> +#include <linux/module.h>
> +#include <linux/pm.h>
> +#include <linux/pm_runtime.h>
> +#include <linux/regmap.h>
> +#include <linux/soundwire/sdw.h>
> +#include <linux/soundwire/sdw_registers.h> #include
> +<linux/soundwire/sdw_type.h>
Please rely on linux/soundwire/sdw.h to provide sdw_device_id and drop including linux/mod_devicetable.h. mod_devicetable.h will go away soon.
> [...]
> +static const struct sdw_device_id sn624x_sdca_id[] = {
> + SDW_SLAVE_ENTRY_EXT(0x0496, 0x6242, 0x3, 0x1, 0),
> + SDW_SLAVE_ENTRY_EXT(0x0496, 0x6244, 0x3, 0x1, 0),
> + SDW_SLAVE_ENTRY_EXT(0x0496, 0x6247, 0x3, 0x1, 0),
> + {},
Please make this
{ }
(i.e. use a space between the braces and no trailing comma)
> +};
> +MODULE_DEVICE_TABLE(sdw, sn624x_sdca_id);
Best regards
Uwe
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.