OSDN Git Service

ASoC: SOF: Intel: BYT: mask BUSY or DONE interrupts in handler
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Tue, 26 May 2020 20:36:39 +0000 (15:36 -0500)
committerMark Brown <broonie@kernel.org>
Wed, 27 May 2020 13:06:58 +0000 (14:06 +0100)
commit3d3d1fb9ce34bc045b9d140a5f2ec531eff6a0fe
tree3d3b33d2b30f3efbbdba9b2e0697bc293115d410
parentc691f0c6e267da4207392b1082d011323c3f8606
ASoC: SOF: Intel: BYT: mask BUSY or DONE interrupts in handler

The DSP may send the same interrupt multiple times before it's handled
in the interrupt thread. Rather than masking it in the thread, mask it
in the handler directly.

This patch also removes useless checks that cannot happen, and masks
that are set don't need to be re-tested.

Suggested-by: Keyon Jie <yang.jie@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Tested-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
BugLink: https://github.com/thesofproject/linux/issues/1492
Link: https://lore.kernel.org/r/20200526203640.25980-8-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/intel/byt.c