[Intel-gfx] [PATCH] drm/i915/audio: Fix audio detection issue on GLK

Jani Nikula jani.nikula at linux.intel.com
Tue Apr 10 11:02:29 UTC 2018


On Mon, 09 Apr 2018, "Kumar, Abhay" <abhay.kumar at 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 at 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 at 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 at lists.freedesktop.org
>>>>> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
>>>> _______________________________________________
>>>> Intel-gfx mailing list
>>>> Intel-gfx at lists.freedesktop.org
>>>> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
>>> _______________________________________________
>>> Intel-gfx mailing list
>>> Intel-gfx at lists.freedesktop.org
>>> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
>

-- 
Jani Nikula, Intel Open Source Technology Center


More information about the Intel-gfx mailing list