ASoC: SOF: Intel: ipc4: Read the interrupt reason registers at the same time
authorPeter Ujfalusi <peter.ujfalusi@linux.intel.com>
Tue, 18 Oct 2022 12:40:06 +0000 (15:40 +0300)
committerMark Brown <broonie@kernel.org>
Tue, 18 Oct 2022 18:16:43 +0000 (19:16 +0100)
commitc8ed7ce242db83ca2c4e9eab557a88adbae5ef6a
tree4ef58b17cc03fd67ede3e43a059485476fe65c4c
parent2d91d5715f5f3b24456ede20dbbe967a1d2a0a3e
ASoC: SOF: Intel: ipc4: Read the interrupt reason registers at the same time

Read both registers as the first step in the interrupt handler to make
sure that we are handling the event which triggered the interrupt.

The delayed reading of the target request register might reflect incorrect
information about the reason why the interrupt was risen.

Note also that the IPC3 interrupt handler is implemented in this way also.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Link: https://lore.kernel.org/r/20221018124008.6846-3-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/intel/cnl.c
sound/soc/sof/intel/hda-ipc.c
sound/soc/sof/intel/mtl.c