OSDN Git Service

ASoC: SOF: amd: Fix for handling spurious interrupts from DSP
authorV sujith kumar Reddy <Vsujithkumar.Reddy@amd.com>
Fri, 3 Feb 2023 12:32:52 +0000 (18:02 +0530)
committerMark Brown <broonie@kernel.org>
Thu, 2 Feb 2023 15:37:28 +0000 (15:37 +0000)
commit2e7c6652f9b86c01cbd4e988057a746a3a461969
tree4b2a0b04e93c99251ef20f059f9cdb2ca08814cd
parent2036890282d56bcbf7f915ba9e04bf77967ab231
ASoC: SOF: amd: Fix for handling spurious interrupts from DSP

As interrupts are Level-triggered,unless and until we deassert the register
the interrupts are generated which causes spurious interrupts unhandled.

Now we deasserted the interrupt at top half which solved the below
"nobody cared" warning.

warning reported in dmesg:
irq 80: nobody cared (try booting with the "irqpoll" option)
CPU: 5 PID: 2735 Comm: irq/80-AudioDSP
Not tainted 5.15.86-15817-g4c19f3e06d49 #1 1bd3fd932cf58caacc95b0504d6ea1e3eab22289
Hardware name: Google Skyrim/Skyrim, BIOS Google_Skyrim.15303.0.0 01/03/2023
Call Trace:
<IRQ>
dump_stack_lvl+0x69/0x97
 __report_bad_irq+0x3a/0xae
note_interrupt+0x1a9/0x1e3
handle_irq_event_percpu+0x4b/0x6e
handle_irq_event+0x36/0x5b
handle_fasteoi_irq+0xae/0x171
 __common_interrupt+0x48/0xc4
</IRQ>

handlers:
acp_irq_handler [snd_sof_amd_acp] threaded [<000000007e089f34>] acp_irq_thread [snd_sof_amd_acp]
Disabling IRQ #80

Signed-off-by: V sujith kumar Reddy <Vsujithkumar.Reddy@amd.com>
Link: https://lore.kernel.org/r/20230203123254.1898794-1-Vsujithkumar.Reddy@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/amd/acp.c