[PATCH] ALSA: hda/cs8409: Set PMSG_ON earlier inside cs8409 driver

Takashi Iwai tiwai at suse.de
Mon Nov 29 09:36:29 CET 2021


On Sun, 28 Nov 2021 12:55:58 +0100,
Vitaly Rodionov wrote:
> 
> From: Stefan Binding <sbinding at opensource.cirrus.com>
> 
> For cs8409, it is required to run Jack Detect on resume.
> Jack Detect on cs8409+cs42l42 requires an interrupt from
> cs42l42 to be sent to cs8409 which is propogated to the driver
> via an unsolicited event.
> However, the hda_codec drops unsolicited events if the power_state
> is not set to PMSG_ON. Which is set at the end of the resume call.
> This means there is a race condition between setting power_state
> to PMSG_ON and receiving the interrupt.
> To solve this, we can add an API to set the power_state earlier
> and call that before we start Jack Detect.
> This does not cause issues, since we know inside our driver that
> we are already initialized, and ready to handle the unsolicited
> events.
> 
> Signed-off-by: Stefan Binding <sbinding at opensource.cirrus.com>
> Signed-off-by: Vitaly Rodionov <vitalyr at opensource.cirrus.com>

Applied now with a minor coding style fix (and addition of
Cc-to-stable).


thanks,

Takashi


More information about the Alsa-devel mailing list