All of lore.kernel.org
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Brian Harring" <ferringb@gmail.com>
Cc: linux-sound@vger.kernel.org
Subject: Re: [PATCH 2/2] ALSA: usb-audio: Add ES9219 speaker volume for ASRock X870E Taichi
Date: Sun, 08 Nov 2026 19:12:55 +0000	[thread overview]
Message-ID: <sashiko-outbox-203925@kernel.org> (raw)
In-Reply-To: <20261108-alc4082-taichi-v1-2-942558088157@gmail.com>

Thank you for your contribution! Sashiko AI review found 2 potential
issues to consider:
- [Medium] ALSA: usb-audio: premature private_value update in
  taichi_es9219_vol_put()
- [Low] ALSA: usb-audio: wrong feature unit ID in taichi_es9219 comment
--

commit 67dc6589a98098f31e87c384d4ca4f8074ecf8d0
Author: Brian Harring <ferringb@gmail.com>

ALSA: usb-audio: Add ES9219 speaker volume for ASRock X870E Taichi

This commit adds a Speaker Playback Volume mixer control for the ASRock
X870E Taichi and Taichi Lite onboard audio by accessing the ESS ES9219
DAC over the ALC4082 codec's I2C bridge.

> diff --git a/sound/usb/mixer_quirks.c b/sound/usb/mixer_quirks.c
> index 4c7d68311f204..075fb5847030f 100644
> --- a/sound/usb/mixer_quirks.c
> +++ b/sound/usb/mixer_quirks.c
> @@ -4656,6 +4656,159 @@ static int snd_xiisound_init_fu_pins(struct usb_mixer_interface *mixer)
>  	return 0;
>  }
>  
> +/*
> + * ASRock X870E Taichi (ALC4082): the rear line exposes only mute (feature
> + * unit 19), but there is an ESS ES9219 DAC behind it that is usable for
> + * volume control.
> + */

[Severity: Low]
This isn't a bug, but should this comment say feature unit 29 rather than
19?  In sound/usb/mixer_maps.c, alc408x_map maps unit 29 to "Speaker
Playback" for USB_ID(0x26ce, 0x0a0b).

[ ... ]

> +static int taichi_es9219_vol_put(struct snd_kcontrol *kctl,
> +				 struct snd_ctl_elem_value *ucontrol)
> +{
> +	struct usb_mixer_elem_list *list = snd_kcontrol_chip(kctl);
> +	long l = ucontrol->value.integer.value[0];
> +	long r = ucontrol->value.integer.value[1];
> +	unsigned long pv;
> +	int err;
> +
> +	if (l < 0 || l > TAICHI_ES9219_VOL_MAX ||
> +	    r < 0 || r > TAICHI_ES9219_VOL_MAX)
> +		return -EINVAL;
> +
> +	pv = l | (r << 8);
> +	if (pv == kctl->private_value)
> +		return 0;
> +
> +	kctl->private_value = pv;
> +	err = taichi_es9219_vol_update(list->mixer, pv);
> +	return err < 0 ? err : 1;
> +}

[Severity: Medium]
Should kctl->private_value be updated only after taichi_es9219_vol_update()
succeeds?

If taichi_es9219_vol_update() fails, kctl->private_value retains the
unwritten volume.  taichi_es9219_vol_get() then reports the wrong value to
userspace, and retrying the same volume in taichi_es9219_vol_put() hits the
pv == kctl->private_value check and returns 0 without writing to the DAC.

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20261108-alc4082-taichi-v1-0-942558088157@gmail.com?part=2

  reply	other threads:[~2026-11-08 19:12 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-11-08 18:58 [PATCH 0/2] Subject: [PATCH 0/2] ALSA: usb-audio: Mixer quirks for ASRock X870E Taichi Brian Harring
2026-11-08 18:58 ` Brian Harring via B4 Relay
2026-11-08 18:58 ` [PATCH 1/2] ALSA: usb-audio: Use ALC4080 mixer map " Brian Harring
2026-11-08 18:58   ` Brian Harring via B4 Relay
2026-11-08 18:58 ` [PATCH 2/2] ALSA: usb-audio: Add ES9219 speaker volume " Brian Harring
2026-11-08 18:58   ` Brian Harring via B4 Relay
2026-11-08 19:12   ` sashiko-bot [this message]
2026-11-12 16:55 ` [PATCH 0/2] Subject: [PATCH 0/2] ALSA: usb-audio: Mixer quirks " Takashi Iwai

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=sashiko-outbox-203925@kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=ferringb@gmail.com \
    --cc=linux-sound@vger.kernel.org \
    --cc=sashiko-reviews@lists.linux.dev \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.