[Intel-gfx] [PATCH 3/7] drm/i915: Disable infoframes when shutting down DDI HDMI

Sharma, Shashank shashank.sharma at intel.com
Mon Jun 13 12:48:31 UTC 2016


Ok, apart from this, looks good to me.
Reviewed-by: Shashank Sharma

Regards
Shashank

On 6/13/2016 5:54 PM, Ville Syrjälä wrote:
> On Mon, Jun 13, 2016 at 03:36:19PM +0530, Sharma, Shashank wrote:
>> Regards
>> Shashank
>>
>> On 6/3/2016 1:25 AM, ville.syrjala at linux.intel.com wrote:
>>> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>>>
>>> Disabling the video DIP when shutting the port down seems like a good
>>> idea.
>>>
>>> Bspec says:
>>> "When disabling both the DIP port and DIP transmission,
>>>    first disable the port and then disable DIP."
>>> and
>>> "Restriction : GCP is only supported with HDMI when the bits per color is
>>>    not equal to 8. GCP must be enabled prior to enabling TRANS_DDI_FUNC_CTL
>>>    for HDMI with bits per color not equal to 8 and disabled after disabling
>>>    TRANS_DDI_FUNC_CTL"
>>>
>>> So let's do it in the .post_disable() hook.
>>>
>>> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
>>> ---
>>>    drivers/gpu/drm/i915/intel_ddi.c | 6 ++++++
>>>    1 file changed, 6 insertions(+)
>>>
>>> diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c
>>> index 2fb28d310c22..6ff2a7b97ca6 100644
>>> --- a/drivers/gpu/drm/i915/intel_ddi.c
>>> +++ b/drivers/gpu/drm/i915/intel_ddi.c
>>> @@ -1661,6 +1661,12 @@ static void intel_ddi_post_disable(struct intel_encoder *intel_encoder)
>>>    	if (wait)
>>>    		intel_wait_ddi_buf_idle(dev_priv, port);
>>>
>>> +	if (type == INTEL_OUTPUT_HDMI) {
>>> +		struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder);
>>> +
>>> +		intel_hdmi->set_infoframes(encoder, false, NULL);
>> I have seen an assert_hdmi_port_disabled in hsw_set_infoframes, it will
>> cause assert.
>
> No. We've already turned off the port by this time.
>
>>> +	}
>>> +
>>>    	if (type == INTEL_OUTPUT_DISPLAYPORT || type == INTEL_OUTPUT_EDP) {
>>>    		struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
>>>    		intel_dp_sink_dpms(intel_dp, DRM_MODE_DPMS_OFF);
>>>
>


More information about the Intel-gfx mailing list