mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Takashi Iwai <tiwai@suse.de>
To: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Cc: "Lu, Brent" <brent.lu@intel.com>,
	"alsa-devel@alsa-project.org" <alsa-devel@alsa-project.org>,
	Pierre-Louis Bossart DRIVERS 
	<pierre-louis.bossart@linux.intel.com>,
	"authored:2/16=12%,added_lines:21/248=8%,removed_lines:5/84=6%,),Liam
	" "Girdwood DRIVERS )" <lgirdwood@gmail.com>,
	"commit_signer:6/16=38%,authored:6/16=38%,added_lines:123/248=50%
	 ,removed_lines:36/84=43%,Kai " "Vehmanen DRIVERS )" 
	<kai.vehmanen@linux.intel.com>,
	"Daniel Baluta DRIVERS )" <daniel.baluta@nxp.com>,
	Mark Brown <broonie@kernel.org>, Jaroslav Kysela <perex@perex.cz>,
	Takashi Iwai <tiwai@suse.com>,
	"Rojewski, Cezary" <cezary.rojewski@intel.com>,
	Zhu Yingjiang <yingjiang.zhu@linux.intel.com>,
	Keyon Jie <yang.jie@linux.intel.com>,
	Bard Liao <yung-chuan.liao@linux.intel.com>,
	"sound-open-firmware@alsa-project.orgDRIVERS" 
	<sound-open-firmware@alsa-project.orgDRIVERS>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] ASoC: SOF: Intel: hda: unsolicited RIRB response
Date: Thu, 11 Jun 2020 22:14:39 +0200	[thread overview]
Message-ID: <s5hzh99cqc0.wl-tiwai@suse.de> (raw)
In-Reply-To: <ccccab4d074878cd8fc3b3c4313025e54f78b65a.camel@linux.intel.com>

On Thu, 11 Jun 2020 20:12:53 +0200,
Ranjani Sridharan wrote:
> 
> On Thu, 2020-06-11 at 19:59 +0200, Takashi Iwai wrote:
> > 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. But the legacy driver but doesnt remove the loop. The
> loop added in the SOF driver was based on the legacy driver and
> specifically to handle missed stream interrupts. Is there any harm in
> keeping the loop?

A loop there might be safer to keep, indeed.  That's basically for a
difference kind of race, and it can still happen theoretically.

Though, SOF is with the threaded interrupt, and it's interesting how
the behavior differs.  I can imagine that, if a thread irq is running
while a new IRQ is re-triggered, the hard irq handler won't queue it
again.  But I might be wrong here, need some checks.


Takashi

  reply	other threads:[~2020-06-11 20:14 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1591883073-17190-1-git-send-email-brent.lu@intel.com>
     [not found] ` <b7e0b822a9deea506acaa40e0e31cc9f488bb446.camel@linux.intel.com>
2020-06-11 17:09   ` Lu, Brent
2020-06-11 17:59     ` Takashi Iwai
2020-06-11 18:12       ` Ranjani Sridharan
2020-06-11 20:14         ` Takashi Iwai [this message]
2020-06-11 20:36           ` Pierre-Louis Bossart
2020-06-11 23:33             ` Lu, Brent
2020-06-12  6:15       ` Lu, Brent
2020-06-11 18:01     ` Pierre-Louis Bossart

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=s5hzh99cqc0.wl-tiwai@suse.de \
    --to=tiwai@suse.de \
    --cc=alsa-devel@alsa-project.org \
    --cc=brent.lu@intel.com \
    --cc=broonie@kernel.org \
    --cc=cezary.rojewski@intel.com \
    --cc=daniel.baluta@nxp.com \
    --cc=kai.vehmanen@linux.intel.com \
    --cc=lgirdwood@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=perex@perex.cz \
    --cc=pierre-louis.bossart@linux.intel.com \
    --cc=ranjani.sridharan@linux.intel.com \
    --cc=sound-open-firmware@alsa-project.orgDRIVERS \
    --cc=tiwai@suse.com \
    --cc=yang.jie@linux.intel.com \
    --cc=yingjiang.zhu@linux.intel.com \
    --cc=yung-chuan.liao@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®