Skip to content

Commit b9846a3

Browse files
vijendarmukundabroonie
authored andcommitted
ASoC: SOF: amd: fix for false dsp interrupts
Before ACP firmware loading, DSP interrupts are not expected. Sometimes after reboot, it's observed that before ACP firmware is loaded false DSP interrupt is reported. Registering the interrupt handler before acp initialization causing false interrupts sometimes on reboot as ACP reset is not applied. Correct the sequence by invoking acp initialization sequence prior to registering interrupt handler. Fixes: 738a2b5 ("ASoC: SOF: amd: Add IPC support for ACP IP block") Signed-off-by: Vijendar Mukunda <[email protected]> Link: https://msgid.link/r/[email protected] Signed-off-by: Mark Brown <[email protected]>
1 parent 3f5eb32 commit b9846a3

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

sound/soc/sof/amd/acp.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -704,6 +704,10 @@ int amd_sof_acp_probe(struct snd_sof_dev *sdev)
704704
goto unregister_dev;
705705
}
706706

707+
ret = acp_init(sdev);
708+
if (ret < 0)
709+
goto free_smn_dev;
710+
707711
sdev->ipc_irq = pci->irq;
708712
ret = request_threaded_irq(sdev->ipc_irq, acp_irq_handler, acp_irq_thread,
709713
IRQF_SHARED, "AudioDSP", sdev);
@@ -713,10 +717,6 @@ int amd_sof_acp_probe(struct snd_sof_dev *sdev)
713717
goto free_smn_dev;
714718
}
715719

716-
ret = acp_init(sdev);
717-
if (ret < 0)
718-
goto free_ipc_irq;
719-
720720
/* scan SoundWire capabilities exposed by DSDT */
721721
ret = acp_sof_scan_sdw_devices(sdev, chip->sdw_acpi_dev_addr);
722722
if (ret < 0) {

0 commit comments

Comments
 (0)