Re: [Intel-gfx] [PATCH v2] drm/i915/bios: ignore HDMI on port A

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 21 Sep 2017, Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> wrote:
> On Thu, Sep 21, 2017 at 05:19:20PM +0300, Jani Nikula wrote:
>> The hardware state readout oopses after several warnings when trying to
>> use HDMI on port A, if such a combination is configured in VBT. Filter
>> the combo out already at the VBT parsing phase.
>> 
>> v2: also ignore DVI (Ville)
>> 
>> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102889
>> Cc: stable@xxxxxxxxxxxxxxx
>> Cc: Imre Deak <imre.deak@xxxxxxxxx>
>> Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>
>> ---
>>  drivers/gpu/drm/i915/intel_bios.c | 7 +++++++
>>  1 file changed, 7 insertions(+)
>> 
>> diff --git a/drivers/gpu/drm/i915/intel_bios.c b/drivers/gpu/drm/i915/intel_bios.c
>> index 5949750a35ee..97931b294f9a 100644
>> --- a/drivers/gpu/drm/i915/intel_bios.c
>> +++ b/drivers/gpu/drm/i915/intel_bios.c
>> @@ -1162,6 +1162,13 @@ static void parse_ddi_port(struct drm_i915_private *dev_priv, enum port port,
>>  	is_hdmi = is_dvi && (child->device_type & DEVICE_TYPE_NOT_HDMI_OUTPUT) == 0;
>>  	is_edp = is_dp && (child->device_type & DEVICE_TYPE_INTERNAL_CONNECTOR);
>>  
>> +	if (port == PORT_A && is_dvi) {
>
> We may want to do the same for PORT_E. Although in that case we would
> already reject it in intel_hdmi_init_connector() since PORT_E can have
> max 2 lanes and HDMI needs 4. But looks like that would result in a WARN.
> Given that we've now seen a bogus VBT for port A I wouldn't put it past
> them to cook one up for port E as well.
>
> Either way
> Reviewed-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>

Pushed to dinq with Tested-by from the bug, thanks for the review.

BR,
Jani.


>
>> +		DRM_DEBUG_KMS("VBT claims port A supports DVI%s, ignoring\n",
>> +			      is_hdmi ? "/HDMI" : "");
>> +		is_dvi = false;
>> +		is_hdmi = false;
>> +	}
>> +
>>  	info->supports_dvi = is_dvi;
>>  	info->supports_hdmi = is_hdmi;
>>  	info->supports_dp = is_dp;
>> -- 
>> 2.11.0
>> 
>> _______________________________________________
>> Intel-gfx mailing list
>> Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
>> https://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Jani Nikula, Intel Open Source Technology Center



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]