ASoC: rt711-sdca: fix locking sequence
[ Upstream commitee28777164] The disable_irq_lock protects the 'disable_irq' value, we need to lock before testing it. Fixes:23adeb7056("ASoC: rt711-sdca: fix for JD event handling in ClockStop Mode0") Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Reviewed-by: Chao Song <chao.song@linux.intel.com> Link: https://msgid.link/r/20240325221817.206465-3-pierre-louis.bossart@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
eb028d1ebd
commit
044c34fe35
@@ -443,13 +443,13 @@ static int __maybe_unused rt711_sdca_dev_resume(struct device *dev)
|
||||
return 0;
|
||||
|
||||
if (!slave->unattach_request) {
|
||||
mutex_lock(&rt711->disable_irq_lock);
|
||||
if (rt711->disable_irq == true) {
|
||||
mutex_lock(&rt711->disable_irq_lock);
|
||||
sdw_write_no_pm(slave, SDW_SCP_SDCA_INTMASK1, SDW_SCP_SDCA_INTMASK_SDCA_0);
|
||||
sdw_write_no_pm(slave, SDW_SCP_SDCA_INTMASK2, SDW_SCP_SDCA_INTMASK_SDCA_8);
|
||||
rt711->disable_irq = false;
|
||||
mutex_unlock(&rt711->disable_irq_lock);
|
||||
}
|
||||
mutex_unlock(&rt711->disable_irq_lock);
|
||||
goto regmap_sync;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user