Message ID | 1523194588-25725-1-git-send-email-gaurav.k.singh@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Sun, 08 Apr 2018, Gaurav K Singh <gaurav.k.singh@intel.com> wrote: > On Geminilake, sometimes audio card is not getting > detected after reboot. This is a spurious issue happening on > Geminilake. 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 GLK. Extending this fix to GLK as well. > > Tested by Du,Wenkai on GLK board. > > Signed-off-by: Gaurav K Singh <gaurav.k.singh@intel.com> > --- > drivers/gpu/drm/i915/intel_audio.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/intel_audio.c b/drivers/gpu/drm/i915/intel_audio.c > index 656f6c931341..73b1e0b96f88 100644 > --- a/drivers/gpu/drm/i915/intel_audio.c > +++ b/drivers/gpu/drm/i915/intel_audio.c > @@ -729,7 +729,8 @@ 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) && !IS_BROXTON(dev_priv)) > + if (!IS_GEN9_BC(dev_priv) && !IS_BROXTON(dev_priv) && > + !IS_GEMINILAKE(dev_priv)) That could be written as if (!IS_GEN9_BC(dev_priv) && !IS_GEN9_LP(dev_priv)) which in turn could just be written as if (!IS_GEN9(dev_priv)) ...but since GLK has gen 10 display, so I'm wondering if the same issue will be present in gen 10 too, and whether this should just become if (INTEL_GEN(dev_priv) < 9) BR, Jani. > return; > > i915_audio_component_get_power(kdev);
On Mon, Apr 09, 2018 at 05:07:31PM +0300, Jani Nikula wrote: > On Sun, 08 Apr 2018, Gaurav K Singh <gaurav.k.singh@intel.com> wrote: > > On Geminilake, sometimes audio card is not getting > > detected after reboot. This is a spurious issue happening on > > Geminilake. 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 GLK. Extending this fix to GLK as well. > > > > Tested by Du,Wenkai on GLK board. > > > > Signed-off-by: Gaurav K Singh <gaurav.k.singh@intel.com> > > --- > > drivers/gpu/drm/i915/intel_audio.c | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/gpu/drm/i915/intel_audio.c b/drivers/gpu/drm/i915/intel_audio.c > > index 656f6c931341..73b1e0b96f88 100644 > > --- a/drivers/gpu/drm/i915/intel_audio.c > > +++ b/drivers/gpu/drm/i915/intel_audio.c > > @@ -729,7 +729,8 @@ 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) && !IS_BROXTON(dev_priv)) > > + if (!IS_GEN9_BC(dev_priv) && !IS_BROXTON(dev_priv) && > > + !IS_GEMINILAKE(dev_priv)) > > That could be written as > > if (!IS_GEN9_BC(dev_priv) && !IS_GEN9_LP(dev_priv)) > > which in turn could just be written as > > if (!IS_GEN9(dev_priv)) > > ...but since GLK has gen 10 display, so I'm wondering if the same issue > will be present in gen 10 too, and whether this should just become > > if (INTEL_GEN(dev_priv) < 9) +1. I opened here to exactly add same comment. > > BR, > Jani. > > > > > return; > > > > i915_audio_component_get_power(kdev); > > -- > Jani Nikula, Intel Open Source Technology Center > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/intel-gfx
On 4/9/2018 12:10 PM, Rodrigo Vivi wrote: > On Mon, Apr 09, 2018 at 05:07:31PM +0300, Jani Nikula wrote: >> On Sun, 08 Apr 2018, Gaurav K Singh <gaurav.k.singh@intel.com> wrote: >>> On Geminilake, sometimes audio card is not getting >>> detected after reboot. This is a spurious issue happening on >>> Geminilake. 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 GLK. Extending this fix to GLK as well. >>> >>> Tested by Du,Wenkai on GLK board. >>> >>> Signed-off-by: Gaurav K Singh <gaurav.k.singh@intel.com> >>> --- >>> drivers/gpu/drm/i915/intel_audio.c | 3 ++- >>> 1 file changed, 2 insertions(+), 1 deletion(-) >>> >>> diff --git a/drivers/gpu/drm/i915/intel_audio.c b/drivers/gpu/drm/i915/intel_audio.c >>> index 656f6c931341..73b1e0b96f88 100644 >>> --- a/drivers/gpu/drm/i915/intel_audio.c >>> +++ b/drivers/gpu/drm/i915/intel_audio.c >>> @@ -729,7 +729,8 @@ 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) && !IS_BROXTON(dev_priv)) >>> + if (!IS_GEN9_BC(dev_priv) && !IS_BROXTON(dev_priv) && >>> + !IS_GEMINILAKE(dev_priv)) >> That could be written as >> >> if (!IS_GEN9_BC(dev_priv) && !IS_GEN9_LP(dev_priv)) >> >> which in turn could just be written as >> >> if (!IS_GEN9(dev_priv)) >> >> ...but since GLK has gen 10 display, so I'm wondering if the same issue >> will be present in gen 10 too, and whether this should just become >> >> if (INTEL_GEN(dev_priv) < 9) > +1. I opened here to exactly add same comment. I am checking with DINQ and without this patch for GLK it can enumerate HDA codec. Ofcourse after cdclk fix. > >> BR, >> Jani. >> >> >> >>> return; >>> >>> i915_audio_component_get_power(kdev); >> -- >> Jani Nikula, Intel Open Source Technology Center >> _______________________________________________ >> Intel-gfx mailing list >> Intel-gfx@lists.freedesktop.org >> https://lists.freedesktop.org/mailman/listinfo/intel-gfx > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/intel-gfx
On 4/9/2018 4:20 PM, Pandiyan, Dhinakaran wrote: > > > On Mon, 2018-04-09 at 12:18 -0700, Kumar, Abhay wrote: >> On 4/9/2018 12:10 PM, Rodrigo Vivi wrote: >>> On Mon, Apr 09, 2018 at 05:07:31PM +0300, Jani Nikula wrote: >>>> On Sun, 08 Apr 2018, Gaurav K Singh <gaurav.k.singh@intel.com> wrote: >>>>> On Geminilake, sometimes audio card is not getting >>>>> detected after reboot. This is a spurious issue happening on >>>>> Geminilake. 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 GLK. Extending this fix to GLK as well. >>>>> >>>>> Tested by Du,Wenkai on GLK board. >>>>> >>>>> Signed-off-by: Gaurav K Singh <gaurav.k.singh@intel.com> >>>>> --- >>>>> drivers/gpu/drm/i915/intel_audio.c | 3 ++- >>>>> 1 file changed, 2 insertions(+), 1 deletion(-) >>>>> >>>>> diff --git a/drivers/gpu/drm/i915/intel_audio.c b/drivers/gpu/drm/i915/intel_audio.c >>>>> index 656f6c931341..73b1e0b96f88 100644 >>>>> --- a/drivers/gpu/drm/i915/intel_audio.c >>>>> +++ b/drivers/gpu/drm/i915/intel_audio.c >>>>> @@ -729,7 +729,8 @@ 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) && !IS_BROXTON(dev_priv)) >>>>> + if (!IS_GEN9_BC(dev_priv) && !IS_BROXTON(dev_priv) && >>>>> + !IS_GEMINILAKE(dev_priv)) >>>> That could be written as >>>> >>>> if (!IS_GEN9_BC(dev_priv) && !IS_GEN9_LP(dev_priv)) >>>> >>>> which in turn could just be written as >>>> >>>> if (!IS_GEN9(dev_priv)) >>>> >>>> ...but since GLK has gen 10 display, so I'm wondering if the same issue >>>> will be present in gen 10 too, and whether this should just become >>>> >>>> if (INTEL_GEN(dev_priv) < 9) >>> +1. I opened here to exactly add same comment. >> I am checking with DINQ and without this patch for GLK it can enumerate >> HDA codec. Ofcourse after cdclk fix. > How about the other way around? i.e., does codec enumeration work this > patch but without the cdclk change? Nop. with DINQ we need to have cdclk change to make Codec detection work. With or without this patch. > > > >>>> BR, >>>> Jani. >>>> >>>> >>>> >>>>> return; >>>>> >>>>> i915_audio_component_get_power(kdev); >>>> -- >>>> Jani Nikula, Intel Open Source Technology Center >>>> _______________________________________________ >>>> Intel-gfx mailing list >>>> Intel-gfx@lists.freedesktop.org >>>> https://lists.freedesktop.org/mailman/listinfo/intel-gfx >>> _______________________________________________ >>> Intel-gfx mailing list >>> Intel-gfx@lists.freedesktop.org >>> https://lists.freedesktop.org/mailman/listinfo/intel-gfx >> _______________________________________________ >> Intel-gfx mailing list >> Intel-gfx@lists.freedesktop.org >> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
On Mon, 2018-04-09 at 12:18 -0700, Kumar, Abhay wrote: > > On 4/9/2018 12:10 PM, Rodrigo Vivi wrote: > > On Mon, Apr 09, 2018 at 05:07:31PM +0300, Jani Nikula wrote: > >> On Sun, 08 Apr 2018, Gaurav K Singh <gaurav.k.singh@intel.com> wrote: > >>> On Geminilake, sometimes audio card is not getting > >>> detected after reboot. This is a spurious issue happening on > >>> Geminilake. 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 GLK. Extending this fix to GLK as well. > >>> > >>> Tested by Du,Wenkai on GLK board. > >>> > >>> Signed-off-by: Gaurav K Singh <gaurav.k.singh@intel.com> > >>> --- > >>> drivers/gpu/drm/i915/intel_audio.c | 3 ++- > >>> 1 file changed, 2 insertions(+), 1 deletion(-) > >>> > >>> diff --git a/drivers/gpu/drm/i915/intel_audio.c b/drivers/gpu/drm/i915/intel_audio.c > >>> index 656f6c931341..73b1e0b96f88 100644 > >>> --- a/drivers/gpu/drm/i915/intel_audio.c > >>> +++ b/drivers/gpu/drm/i915/intel_audio.c > >>> @@ -729,7 +729,8 @@ 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) && !IS_BROXTON(dev_priv)) > >>> + if (!IS_GEN9_BC(dev_priv) && !IS_BROXTON(dev_priv) && > >>> + !IS_GEMINILAKE(dev_priv)) > >> That could be written as > >> > >> if (!IS_GEN9_BC(dev_priv) && !IS_GEN9_LP(dev_priv)) > >> > >> which in turn could just be written as > >> > >> if (!IS_GEN9(dev_priv)) > >> > >> ...but since GLK has gen 10 display, so I'm wondering if the same issue > >> will be present in gen 10 too, and whether this should just become > >> > >> if (INTEL_GEN(dev_priv) < 9) > > +1. I opened here to exactly add same comment. > I am checking with DINQ and without this patch for GLK it can enumerate > HDA codec. Ofcourse after cdclk fix. How about the other way around? i.e., does codec enumeration work this patch but without the cdclk change? > > > >> BR, > >> Jani. > >> > >> > >> > >>> return; > >>> > >>> i915_audio_component_get_power(kdev); > >> -- > >> Jani Nikula, Intel Open Source Technology Center > >> _______________________________________________ > >> Intel-gfx mailing list > >> Intel-gfx@lists.freedesktop.org > >> https://lists.freedesktop.org/mailman/listinfo/intel-gfx > > _______________________________________________ > > Intel-gfx mailing list > > Intel-gfx@lists.freedesktop.org > > https://lists.freedesktop.org/mailman/listinfo/intel-gfx > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/intel-gfx
On Mon, 09 Apr 2018, "Kumar, Abhay" <abhay.kumar@intel.com> wrote: > On 4/9/2018 4:20 PM, Pandiyan, Dhinakaran wrote: >> >> >> On Mon, 2018-04-09 at 12:18 -0700, Kumar, Abhay wrote: >>> On 4/9/2018 12:10 PM, Rodrigo Vivi wrote: >>>> On Mon, Apr 09, 2018 at 05:07:31PM +0300, Jani Nikula wrote: >>>>> On Sun, 08 Apr 2018, Gaurav K Singh <gaurav.k.singh@intel.com> wrote: >>>>>> On Geminilake, sometimes audio card is not getting >>>>>> detected after reboot. This is a spurious issue happening on >>>>>> Geminilake. 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 GLK. Extending this fix to GLK as well. >>>>>> >>>>>> Tested by Du,Wenkai on GLK board. >>>>>> >>>>>> Signed-off-by: Gaurav K Singh <gaurav.k.singh@intel.com> >>>>>> --- >>>>>> drivers/gpu/drm/i915/intel_audio.c | 3 ++- >>>>>> 1 file changed, 2 insertions(+), 1 deletion(-) >>>>>> >>>>>> diff --git a/drivers/gpu/drm/i915/intel_audio.c b/drivers/gpu/drm/i915/intel_audio.c >>>>>> index 656f6c931341..73b1e0b96f88 100644 >>>>>> --- a/drivers/gpu/drm/i915/intel_audio.c >>>>>> +++ b/drivers/gpu/drm/i915/intel_audio.c >>>>>> @@ -729,7 +729,8 @@ 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) && !IS_BROXTON(dev_priv)) >>>>>> + if (!IS_GEN9_BC(dev_priv) && !IS_BROXTON(dev_priv) && >>>>>> + !IS_GEMINILAKE(dev_priv)) >>>>> That could be written as >>>>> >>>>> if (!IS_GEN9_BC(dev_priv) && !IS_GEN9_LP(dev_priv)) >>>>> >>>>> which in turn could just be written as >>>>> >>>>> if (!IS_GEN9(dev_priv)) >>>>> >>>>> ...but since GLK has gen 10 display, so I'm wondering if the same issue >>>>> will be present in gen 10 too, and whether this should just become >>>>> >>>>> if (INTEL_GEN(dev_priv) < 9) >>>> +1. I opened here to exactly add same comment. >>> I am checking with DINQ and without this patch for GLK it can enumerate >>> HDA codec. Ofcourse after cdclk fix. >> How about the other way around? i.e., does codec enumeration work this >> patch but without the cdclk change? > Nop. with DINQ we need to have cdclk change to make Codec detection > work. With or without this patch. Basically what you're saying is that this patch is not needed? Gaurav, can you check with the CDCLK patch [1] if that fixes the issue for you? BR, Jani. PS. The CDCLK patch is not enough to fix the issue completely (probe without display outputs will still choose a low CDCLK) but that's work in progress. [1] http://patchwork.freedesktop.org/patch/msgid/1508968932-32208-1-git-send-email-abhay.kumar@intel.com > >> >> >> >>>>> BR, >>>>> Jani. >>>>> >>>>> >>>>> >>>>>> return; >>>>>> >>>>>> i915_audio_component_get_power(kdev); >>>>> -- >>>>> Jani Nikula, Intel Open Source Technology Center >>>>> _______________________________________________ >>>>> Intel-gfx mailing list >>>>> Intel-gfx@lists.freedesktop.org >>>>> https://lists.freedesktop.org/mailman/listinfo/intel-gfx >>>> _______________________________________________ >>>> Intel-gfx mailing list >>>> Intel-gfx@lists.freedesktop.org >>>> https://lists.freedesktop.org/mailman/listinfo/intel-gfx >>> _______________________________________________ >>> Intel-gfx mailing list >>> Intel-gfx@lists.freedesktop.org >>> https://lists.freedesktop.org/mailman/listinfo/intel-gfx >
On 4/10/2018 4:32 PM, Jani Nikula wrote: > On Mon, 09 Apr 2018, "Kumar, Abhay" <abhay.kumar@intel.com> wrote: >> On 4/9/2018 4:20 PM, Pandiyan, Dhinakaran wrote: >>> >>> On Mon, 2018-04-09 at 12:18 -0700, Kumar, Abhay wrote: >>>> On 4/9/2018 12:10 PM, Rodrigo Vivi wrote: >>>>> On Mon, Apr 09, 2018 at 05:07:31PM +0300, Jani Nikula wrote: >>>>>> On Sun, 08 Apr 2018, Gaurav K Singh <gaurav.k.singh@intel.com> wrote: >>>>>>> On Geminilake, sometimes audio card is not getting >>>>>>> detected after reboot. This is a spurious issue happening on >>>>>>> Geminilake. 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 GLK. Extending this fix to GLK as well. >>>>>>> >>>>>>> Tested by Du,Wenkai on GLK board. >>>>>>> >>>>>>> Signed-off-by: Gaurav K Singh <gaurav.k.singh@intel.com> >>>>>>> --- >>>>>>> drivers/gpu/drm/i915/intel_audio.c | 3 ++- >>>>>>> 1 file changed, 2 insertions(+), 1 deletion(-) >>>>>>> >>>>>>> diff --git a/drivers/gpu/drm/i915/intel_audio.c b/drivers/gpu/drm/i915/intel_audio.c >>>>>>> index 656f6c931341..73b1e0b96f88 100644 >>>>>>> --- a/drivers/gpu/drm/i915/intel_audio.c >>>>>>> +++ b/drivers/gpu/drm/i915/intel_audio.c >>>>>>> @@ -729,7 +729,8 @@ 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) && !IS_BROXTON(dev_priv)) >>>>>>> + if (!IS_GEN9_BC(dev_priv) && !IS_BROXTON(dev_priv) && >>>>>>> + !IS_GEMINILAKE(dev_priv)) >>>>>> That could be written as >>>>>> >>>>>> if (!IS_GEN9_BC(dev_priv) && !IS_GEN9_LP(dev_priv)) >>>>>> >>>>>> which in turn could just be written as >>>>>> >>>>>> if (!IS_GEN9(dev_priv)) >>>>>> >>>>>> ...but since GLK has gen 10 display, so I'm wondering if the same issue >>>>>> will be present in gen 10 too, and whether this should just become >>>>>> >>>>>> if (INTEL_GEN(dev_priv) < 9) >>>>> +1. I opened here to exactly add same comment. >>>> I am checking with DINQ and without this patch for GLK it can enumerate >>>> HDA codec. Ofcourse after cdclk fix. >>> How about the other way around? i.e., does codec enumeration work this >>> patch but without the cdclk change? >> Nop. with DINQ we need to have cdclk change to make Codec detection >> work. With or without this patch. > Basically what you're saying is that this patch is not needed? Gaurav, > can you check with the CDCLK patch [1] if that fixes the issue for you? > > BR, > Jani. Jani, Our team tried my patch (not including Abhay's patch) which fixed the issue. But will also try Abhay's patch(this time without my patch), Will update accordingly. With regards, Gaurav > > > PS. The CDCLK patch is not enough to fix the issue completely (probe > without display outputs will still choose a low CDCLK) but that's work > in progress. > > > [1] http://patchwork.freedesktop.org/patch/msgid/1508968932-32208-1-git-send-email-abhay.kumar@intel.com > > >>> >>> >>>>>> BR, >>>>>> Jani. >>>>>> >>>>>> >>>>>> >>>>>>> return; >>>>>>> >>>>>>> i915_audio_component_get_power(kdev); >>>>>> -- >>>>>> Jani Nikula, Intel Open Source Technology Center >>>>>> _______________________________________________ >>>>>> Intel-gfx mailing list >>>>>> Intel-gfx@lists.freedesktop.org >>>>>> https://lists.freedesktop.org/mailman/listinfo/intel-gfx >>>>> _______________________________________________ >>>>> Intel-gfx mailing list >>>>> Intel-gfx@lists.freedesktop.org >>>>> https://lists.freedesktop.org/mailman/listinfo/intel-gfx >>>> _______________________________________________ >>>> Intel-gfx mailing list >>>> Intel-gfx@lists.freedesktop.org >>>> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
diff --git a/drivers/gpu/drm/i915/intel_audio.c b/drivers/gpu/drm/i915/intel_audio.c index 656f6c931341..73b1e0b96f88 100644 --- a/drivers/gpu/drm/i915/intel_audio.c +++ b/drivers/gpu/drm/i915/intel_audio.c @@ -729,7 +729,8 @@ 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) && !IS_BROXTON(dev_priv)) + if (!IS_GEN9_BC(dev_priv) && !IS_BROXTON(dev_priv) && + !IS_GEMINILAKE(dev_priv)) return; i915_audio_component_get_power(kdev);
On Geminilake, sometimes audio card is not getting detected after reboot. This is a spurious issue happening on Geminilake. 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 GLK. Extending this fix to GLK as well. Tested by Du,Wenkai on GLK board. Signed-off-by: Gaurav K Singh <gaurav.k.singh@intel.com> --- drivers/gpu/drm/i915/intel_audio.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)