[Intel-gfx] [PATCH] drm: i915: Fix audio issue on BXT
Runyan, Arthur J
arthur.j.runyan at intel.com
Tue Jan 9 19:54:48 UTC 2018
Sorry, I've been out. I'm checking on this.
-----Original Message-----
From: Pandiyan, Dhinakaran
Sent: Thursday, 4 January, 2018 2:00 PM
To: Singh, Gaurav K <gaurav.k.singh at intel.com>
Cc: intel-gfx at lists.freedesktop.org; Vivi, Rodrigo <rodrigo.vivi at intel.com>; subransu.s.prusty at intel.com; Runyan, Arthur J <arthur.j.runyan at intel.com>
Subject: Re: [Intel-gfx] [PATCH] drm: i915: Fix audio issue on BXT
+Art
On Thu, 2018-01-04 at 22:13 +0530, Singh, Gaurav K wrote:
>
> On 1/4/2018 2:48 AM, Rodrigo Vivi wrote:
> > On Wed, Jan 03, 2018 at 08:31:10PM +0000, Pandiyan, Dhinakaran wrote:
> >> On Thu, 2018-01-04 at 00:48 +0530, Gaurav K Singh wrote:
> >>> From: Gaurav Singh <gaurav.k.singh at intel.com>
> >>>
> >>> On Apollolake, with stress test warm reboot, audio card
> >>> was not getting enumerated after reboot. This was a
> >> The problem looks similar to
> >> https://lists.freedesktop.org/archives/intel-gfx/2017-October/144495.html
> >>
> >> although the proposed solutions are vastly different. I have Cc'd some
> >> more people.
> >>
> >>> spurious issue happening on Apollolake. HW codec and
> >>> HD audio controller link was going out of sync for which
> >>> there was a fix in i915 driver but was not getting invoked
> >>> for BXT. Extending this fix to BXT as well.
> >>>
> >>> Tested on apollolake chromebook by stress test warm reboot
> >>> with 2500 iterations.
> >>>
> >>> Signed-off-by: Gaurav K Singh <gaurav.k.singh at intel.com>
> >>> ---
> >>> drivers/gpu/drm/i915/intel_audio.c | 2 +-
> >>> 1 file changed, 1 insertion(+), 1 deletion(-)
> >>>
> >>> diff --git a/drivers/gpu/drm/i915/intel_audio.c b/drivers/gpu/drm/i915/intel_audio.c
> >>> index f1502a0188eb..c71c04e1c3f6 100644
> >>> --- a/drivers/gpu/drm/i915/intel_audio.c
> >>> +++ b/drivers/gpu/drm/i915/intel_audio.c
> >>> @@ -729,7 +729,7 @@ static void i915_audio_component_codec_wake_override(struct device *kdev,
> >>> struct drm_i915_private *dev_priv = kdev_to_i915(kdev);
> >>> u32 tmp;
> >>>
> >>> - if (!IS_GEN9_BC(dev_priv))
> >>> + if (!IS_GEN9_BC(dev_priv) && !IS_BROXTON(dev_priv))
> >> IS_GEN9()? GLK might need this too.
> > I think this is applicable for all Gen9 platforms.
>
> > if GLK need there is the possibility of CNL also needing it...
> > So not sure where to stop.
> >
> > Also looking to the original patch that introduced this function,
> > commit '632f3ab95fe2 ("drm/i915/audio: add codec wakeup override
> > enabled/disable callback")'
> >
> > it tells that the reason was:
> > "In SKL, HDMI/DP codec and PCH HD Audio Controller are in different p$
> > wells, so it's necessary to reset display audio codecs when power we$
> > otherwise display audio codecs will disappear when resume from low p$
> > state."
> >
> > Is this the case here on BXT?
> Yes, its the same case with BXT.
> >
> > Another interesting thing I noticed on Spec when searching for this bit
> > was that this bit is related to an workaround on SKL/KBL/CFL... no mention
> > to BXT.
> >
> > "This workaround is needed for an HW issue in SKL and KBL in which HW codec
> > and HD audio controller link was going out of sync."
> Yes, in Bspec it has been mentioned only for SKL and KBL. But without
> this fix, sound card was not getting enumerated for BXT.
Art,
Can you please help us here? To summarize, the question is what
platforms need the AUD_CHICKENBIT_REG:15 bit to be set to avoid code
enumeration failures?
-DK
> >
> > Thanks,
> > Rodrigo.
> >
> >>
> >>> return;
> >>>
> >>> i915_audio_component_get_power(kdev);
> >> _______________________________________________
> >> Intel-gfx mailing list
> >> Intel-gfx at lists.freedesktop.org
> >> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
More information about the Intel-gfx
mailing list