From: <qianghua.wang@senarytech.com>
To: "'Mark Brown'" <broonie@kernel.org>
Cc: <linux-sound@vger.kernel.org>, <pierre-louis.bossart@linux.dev>,
<yung-chuan.liao@linux.intel.com>,
<liam.r.girdwood@linux.intel.com>,
<peter.ujfalusi@linux.intel.com>, <kai.vehmanen@linux.intel.com>,
<cezary.rojewski@intel.com>, <bo.liu@senarytech.com>
Subject: [PATCH 1/3] ASoC: codecs: add SN624x SDCA SoundWire driver
Date: Thu, 13 Aug 2026 10:11:50 +0800 [thread overview]
Message-ID: <005a01dd2ac9$1a9ddf90$4fd99eb0$@senarytech.com> (raw)
In-Reply-To: <2d46a294-b7e9-4be4-bbec-a44b056d9776@sirena.org.uk>
Hi Mark Brown:
Thanks for your comments. I will address them in v2.
Best regards
Qianghua Wang
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Re: [PATCH 1/3] ASoC: codecs: add SN624x SDCA SoundWire driver
On Wed, Aug 12, 2026 at 02:59:42PM +0800, qianghua wang wrote:
> 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.
This changelog describes the series, not this patch which only adds the CODEC driver.
> @@ -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
Please keep this, the Makefile and the Kconfig lexically sorted.
> +config SND_SOC_SN624X_SDCA_SDW
> + tristate "Senary SN624x SDCA Codec - SDW"
> + depends on SOUNDWIRE
> + select REGMAP_SOUNDWIRE
> + select REGMAP_SOUNDWIRE_MBQ
> + help
This also depends on SDCA.
> +/*
> + * Trace helper: load with trace=1 or:
> + * echo 1 > /sys/module/snd_soc_sn624x_sdca/parameters/trace
> + * For finer logs without trace=1, enable dynamic_debug on this file.
> + */
> +static bool sn624x_trace;
> +module_param_named(trace, sn624x_trace, bool, 0644);
> +MODULE_PARM_DESC(trace,
> + "extra dev_dbg for probe, jack, SDW status (default
> +off)");
You probably want to look at tracepoints and trace_printk() here, these are much more flexible features and can be easily tweaked at runtime.
In general it's probably better to skip all these module parameters for upstream, they all look like debugging stuff which should hopefully not be needed.
> +static void sn624x_log_power_mode_once(struct device *dev,
> + struct sn624x_sdca_priv *sn624x) {
> + unsigned int pm;
> + int ret;
> +
> + if (!sn624x || !sn624x->regmap)
> + return;
> + if (atomic_xchg(&sn624x_power_mode_logged, 1) != 0)
> + return;
There doesn't seem to be any way to set this? Also consider printk_once().
> +static int sn624x_sdca_pcm_hw_params(struct snd_pcm_substream *substream,
> + struct snd_pcm_hw_params *params,
> + struct snd_soc_dai *dai)
> +{
> + stream_config.frame_rate = params_rate(params);
> + stream_config.ch_count = ch;
Do we need to configure SDCA clocking as well?
> +static int sn624x_sdca_dev_system_suspend(struct device *dev) {
> + struct sn624x_sdca_priv *sn624x = dev_get_drvdata(dev);
> +
> + if (!sn624x->first_hw_init)
> + return 0;
> +
> + cancel_delayed_work_sync(&sn624x->jack_detect_work);
> +
> + mutex_lock(&sn624x->disable_irq_lock);
> + sn624x->disable_irq = true;
> + sn624x_sdca_jack_irq_mask(sn624x);
> + mutex_unlock(&sn624x->disable_irq_lock);
> +
> + return sn624x_sdca_dev_suspend(dev); }
I'd expect the work to be cancelled after disabling the interrupt, otherwise the interrupt could schedule more work between the cancellation and the disable.
next prev parent reply other threads:[~2026-08-13 2:17 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-12 6:59 [PATCH 0/3] ASoC: add Senary SN624x SoundWire SDCA support qianghua wang
2026-08-12 6:59 ` [PATCH 1/3] ASoC: codecs: add SN624x SDCA SoundWire driver qianghua wang
2026-08-12 8:27 ` Uwe Kleine-König
2026-08-12 8:59 ` reply " qianghua.wang
2026-08-12 18:37 ` Mark Brown
2026-08-13 2:11 ` qianghua.wang [this message]
2026-08-12 6:59 ` [PATCH 2/3] ASoC: sdw_utils: add Senary SN624x helpers and codec_info qianghua wang
2026-08-12 6:59 ` [PATCH 3/3] ASoC: Intel: soc-acpi: add SN624x entries for PTL qianghua wang
2026-08-12 18:05 ` [PATCH 0/3] ASoC: add Senary SN624x SoundWire SDCA support Mark Brown
2026-08-13 1:59 ` qianghua.wang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='005a01dd2ac9$1a9ddf90$4fd99eb0$@senarytech.com' \
--to=qianghua.wang@senarytech.com \
--cc=bo.liu@senarytech.com \
--cc=broonie@kernel.org \
--cc=cezary.rojewski@intel.com \
--cc=kai.vehmanen@linux.intel.com \
--cc=liam.r.girdwood@linux.intel.com \
--cc=linux-sound@vger.kernel.org \
--cc=peter.ujfalusi@linux.intel.com \
--cc=pierre-louis.bossart@linux.dev \
--cc=yung-chuan.liao@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox