On Thu, 23 Apr 2020 07:23:52 +0200, Hui Wang wrote: > > > On 2020/4/23 上午4:46, Takashi Iwai wrote: > > On Wed, 22 Apr 2020 22:37:44 +0200, > > Takashi Iwai wrote: > >> HD-audio codec driver applies a tricky procedure to forcibly perform > >> the runtime resume by mimicking the usage count even if the device has > >> been runtime-suspended beforehand. This was needed to assure to > >> trigger the jack detection update after the system resume. > >> > >> And recently we also applied the similar logic to the HD-audio > >> controller side. However this seems leading to some inconsistency, > >> and eventually PCI controller gets screwed up. > >> > >> This patch is an attempt to fix and clean up those behavior: instead > >> of the tricky runtime resume procedure, the existing jackpoll work is > >> scheduled when such a forced codec resume is required. The jackpoll > >> work will power up the codec, and this alone should suffice for the > >> jack status update in usual cases. If the extra polling is requested > >> (by checking codec->jackpoll_interval), the manual update is invoked > >> after that, and the codec is powered down again. > >> > >> Also, we filter the spurious wake up of the codec from the controller > >> runtime resume by checking codec->relaxed_resume flag. If this flag > >> is set, basically we don't need to wake up explicitly, but it's > >> supposed to be done via the audio component notifier. > >> > >> Fixes: c4c8dd6ef807 ("ALSA: hda: Skip controller resume if not needed") > >> Signed-off-by: Takashi Iwai <tiwai@xxxxxxx> > > Note that this patch discards the previous forced resume logic > > introduced in commit b5a236c175b0 > > ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec > > > > So, Hui, could you check whether it still works for such a device? > > Or at least tests with a few known working devices are helpful. > > I tested the patch on the machine which has the detection issue of > "ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec", > the new patch worked well. The headphone could be detected after > s3/s4. > > And I don't have other machines at the moment since I worked at home > recently, so only tested this patch on one machine, it worked well. OK, thanks! Takashi