mirror of https://gitee.com/openkylin/linux.git
ASoC: SOF: Intel: hda: remove unnecessary ROM IPC filter function
The HDA_DSP_IPC_PURGE_FW IPC from ROM is already handled in cl_dsp_init(), and as IPC IRQ is disabled at this stage, this IPC will be never received in the IRQ thread. The function hda_dsp_ipc_is_sof for filtering the ROM IPC can be removed safely. Signed-off-by: Amery Song <chao.song@intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> Reviewed-by: Keyon <yang.jie@intel.com> Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com> Link: https://lore.kernel.org/r/20200312200622.24477-5-pierre-louis.bossart@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
a6096f88a0
commit
9b65b2a80e
|
@ -125,12 +125,6 @@ void hda_dsp_ipc_get_reply(struct snd_sof_dev *sdev)
|
|||
|
||||
}
|
||||
|
||||
static bool hda_dsp_ipc_is_sof(uint32_t msg)
|
||||
{
|
||||
return (msg & (HDA_DSP_IPC_PURGE_FW | 0xf << 9)) != msg ||
|
||||
(msg & HDA_DSP_IPC_PURGE_FW) != HDA_DSP_IPC_PURGE_FW;
|
||||
}
|
||||
|
||||
/* IPC handler thread */
|
||||
irqreturn_t hda_dsp_ipc_irq_thread(int irq, void *context)
|
||||
{
|
||||
|
@ -176,11 +170,9 @@ irqreturn_t hda_dsp_ipc_irq_thread(int irq, void *context)
|
|||
*/
|
||||
spin_lock_irq(&sdev->ipc_lock);
|
||||
|
||||
/* handle immediate reply from DSP core - ignore ROM messages */
|
||||
if (hda_dsp_ipc_is_sof(msg)) {
|
||||
hda_dsp_ipc_get_reply(sdev);
|
||||
snd_sof_ipc_reply(sdev, msg);
|
||||
}
|
||||
/* handle immediate reply from DSP core */
|
||||
hda_dsp_ipc_get_reply(sdev);
|
||||
snd_sof_ipc_reply(sdev, msg);
|
||||
|
||||
/* wake up sleeper if we are loading code */
|
||||
if (sdev->code_loading) {
|
||||
|
|
Loading…
Reference in New Issue