diff options
| author | Avi Weiss <thnkslprpt@gmail.com> | 2026-10-11 06:54:59 +0300 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2026-10-12 19:22:55 +0100 |
| commit | 0936bbd35a247665c64886135835faa3c3f4f29f (patch) | |
| tree | 41c519e35f9761fd3ed53fb1fb8187d834101731 /scripts/basic/split-include.c | |
| parent | f6be9f558a83fe30a03bd3adae461c821a0cef8c (diff) | |
| download | linux-0936bbd35a247665c64886135835faa3c3f4f29f.tar.gz linux-0936bbd35a247665c64886135835faa3c3f4f29f.zip | |
ASoC: stm32: spdifrx: fix synchronization state check
The interrupt handler uses a logical AND to check whether SPDIFRX
was in the SYNC state before clearing errors. Since both SYNC (1)
and ENABLE (3) are nonzero, this also treats ENABLE as SYNC (and
any other non-zero value that might be added).
The logical && basically just converts this to check for != 0.
So errors occurring while SPDIFRX is enabled cause the driver
to retry synch instead of disconnecting the PCM stream.
Fix is to change the logical && to equality (==) and only retry
when exactly in sync state.
Fixes: 0c93c291321f2 ("ASoC: stm32: spdifrx: retry synchronization in sync state")
Signed-off-by: Avi Weiss <thnkslprpt@gmail.com>
Reviewed-by: Olivier Moysan <olivier.moysan@foss.st.com>
Link: https://patch.msgid.link/20261011035459.2289403-1-thnkslprpt@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'scripts/basic/split-include.c')
0 files changed, 0 insertions, 0 deletions
