On Thu, 11 Jun 2020 19:09:08 +0200, Lu, Brent wrote: > > > Hi Brent, > > > > Thanks for the patch. Is this fix for a specific issue you're seeing? > > If so, could you please give us some details about it? > > > > Thanks, > > Ranjani > > Hi Ranjani, > > It's reported to happen on GLK Chromebook 'Fleex' that sometimes it > cannot output the audio stream to external display. The kernel is > Chrome v4.14 branch. Following is the reproduce step provided by > ODM but I could reproduce it simply running aplay or cras_test_client > so I think it's not about the cable plug/unplug handling. > > What steps will reproduce the problem? > 1. Play YouTube video on Chromebook and connect it to external monitor with Type C to DP dongle > 2. Press monitor power button to turn off the monitor > 3. Press monitor power button again to turn on the monitor > 4. Continue to play YouTube video and check audio playback > 5. No sound comes out from built-in speaker of external monitor when turn on external monitor > > I added debug messages to print the RIRBWP register and realize that > response could come between the read of RIRBWP in the > snd_hdac_bus_update_rirb() function and the interrupt clear in the > hda_dsp_stream_interrupt() function. The response is not handled but > the interrupt is already cleared. It will cause timeout unless more > responses coming to RIRB. Now I noticed that the legacy driver already addressed it recently via commit 6d011d5057ff ALSA: hda: Clear RIRB status before reading WP We should have checked SOF at the same time, too... thanks, Takashi