[Intel-gfx] [PATCH 2/3] drm/i915: Reinitialize sink scrambling/TMDS clock ratio on HPD

Sharma, Shashank shashank.sharma at intel.com
Wed Jan 10 04:37:43 UTC 2018


Regards

Shashank


On 1/9/2018 11:31 PM, Ville Syrjälä wrote:
> On Thu, Dec 28, 2017 at 08:32:05PM +0530, Sharma, Shashank wrote:
>>
>> On 12/22/2017 11:58 PM, Ville Syrjala wrote:
>>> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>>>
>>> The LG 4k TV I have doesn't deassert HPD when I turn the TV off, but
>>> when I turn it back on it will pulse the HPD line. By that time it has
>>> forgotten everything we told it about scrambling and the clock ratio.
>>> Hence if we want to get a picture out if it again we have to tell it
>>> whether we're currently sending scrambled data or not. Implement
>>> that via the encoder->post_hotplug() hook.
>> I am not sure if I understood the problem statement correctly. Even if
>> the TV triggers HPD line while turning it back, I would expect:
>> - EDID read for TV's detection, which will refresh SCDC and scrambling
>> capabilities
>> - A new modeset will be triggered, which will program the scrambling and
>> high tmds clock ratio again
>> - Once HDMI controller is programmed, it will generate scrambled signals
>> till next modeset / disable.
>>
>> So why do we need to do this ? I might be missing something, but lets
>> discus about it.
> The EDID is readable even when the HPD gets deasserted for a short
> perios, hence we never consider the sink as being disconnected. Hence
> there will be no modeset triggered by userspace.
This is a bigger problem then, in that case, the pipe/port would be 
enabled, and IMHO I don't think fixing just the scrambling status is 
right thing to do.
Also, is this the right behavior from the monitor ? I am also worried if 
we are trying to fix the monitor's fault in our driver.

- Shashank



More information about the Intel-gfx mailing list