aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/linux/reset/ssh:/git@git.zx2c4.com
diff options
context:
space:
mode:
authorShengjiu Wang <shengjiu.wang@nxp.com>2026-05-12 14:52:52 +0800
committerMark Brown <broonie@kernel.org>2026-05-18 17:37:16 +0100
commitfd3b95866d86844ae747fce9b3438d73ed5f1e7a (patch)
treedbe61510a894b84b1c2abd0a395f18fd98d6c760 /include/linux/reset/ssh:/git@git.zx2c4.com
parentASoC: amd: acp: Add DMI quirk for ASUS Zenbook S16 UM5606GA (diff)
ASoC: fsl_sai: Eliminate possible interrupt storm during probe
When the SAI peripheral is left in a running state by the bootloader, the driver can experience an interrupt storm during probe that prevents successful initialization. This occurs because the current code registers the IRQ handler before resetting the hardware to a known state. The issue manifests as: - Continuous interrupts firing immediately after devm_request_irq() - Driver probe failure or system hang - Error messages about unhandled interrupts This is particularly problematic on systems where U-Boot or other bootloaders enable SAI for boot-time audio feedback or diagnostics and don't properly disable it before handing control to Linux. Fix this by reordering the probe sequence: 1. Add fsl_sai_reset_hw() to clear TCSR/RCSR control registers, which disables the transmitter/receiver and all interrupt sources 2. Move devm_request_irq() to after hardware initialization This ensures the SAI is in a clean reset state before the interrupt handler can be invoked, preventing the storm while maintaining proper error handling and cleanup paths. Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com> Link: https://patch.msgid.link/20260512065252.75859-1-shengjiu.wang@nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'include/linux/reset/ssh:/git@git.zx2c4.com')
0 files changed, 0 insertions, 0 deletions