]> git.ipfire.org Git - thirdparty/linux.git/commit
ALSA: aoa: i2sbus: clear stale prepared state
authorCássio Gabriel <cassiogabrielcontato@gmail.com>
Tue, 31 Mar 2026 21:14:04 +0000 (18:14 -0300)
committerTakashi Iwai <tiwai@suse.de>
Wed, 1 Apr 2026 07:58:37 +0000 (09:58 +0200)
commit5ed060d5491597490fb53ec69da3edc4b1e8c165
treeb7eab887a559db18ea2b9f8ec6f9ce598f88d8b4
parentd1888bf848ade6a9e71c7ba516fd215aa1bd8d65
ALSA: aoa: i2sbus: clear stale prepared state

The i2sbus PCM code uses pi->active to constrain the sibling stream to
an already prepared duplex format and rate in i2sbus_pcm_open().

That state is set from i2sbus_pcm_prepare(), but the current code only
clears it on close. As a result, the sibling stream can inherit stale
constraints after the prepared state has been torn down.

Clear pi->active when hw_params() or hw_free() tears down the prepared
state, and set it again only after prepare succeeds.

Replace the stale FIXME in the duplex constraint comment with a description
of the current driver behavior: i2sbus still programs a single shared
transport configuration for both directions, so mixed formats are not
supported in duplex mode.

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202604010125.AvkWBYKI-lkp@intel.com/
Fixes: f3d9478b2ce4 ("[ALSA] snd-aoa: add snd-aoa")
Cc: stable@vger.kernel.org
Signed-off-by: Cássio Gabriel <cassiogabrielcontato@gmail.com>
Link: https://patch.msgid.link/20260331-aoa-i2sbus-clear-stale-active-v2-1-3764ae2889a1@gmail.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/aoa/soundbus/i2sbus/pcm.c