[Intel-gfx] [PATCH 3/4] drm/dp: start a DPCD based DP sink/branch device quirk database

Jani Nikula jani.nikula at intel.com
Mon May 29 11:06:51 UTC 2017


On Thu, 18 May 2017, "Pandiyan, Dhinakaran" <dhinakaran.pandiyan at intel.com> wrote:
> On Thu, 2017-05-18 at 14:10 +0300, Jani Nikula wrote:
>> Face the fact, there are Display Port sink and branch devices out there
>> in the wild that don't follow the Display Port specifications, or they
>> have bugs, or just otherwise require special treatment. Start a common
>> quirk database the drivers can query based on the DP device
>> identification. At least for now, we leave the workarounds for the
>> drivers to implement as they see fit.
>> 
>> For starters, add a branch device that can't handle full 24-bit main
>> link Mdiv and Ndiv main link attributes properly. Naturally, the
>> workaround of reducing main link attributes for all devices ended up in
>> regressions for other devices. So here we are.
>> 
>> v2: Rebase on DRM DP desc read helpers
>> 
>> v3: Fix the OUI memcmp blunder (Clint)
>> 
>> Cc: Ville Syrjälä <ville.syrjala at linux.intel.com>
>> Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan at intel.com>
>> Cc: Clint Taylor <clinton.a.taylor at intel.com>
>> Cc: Adam Jackson <ajax at redhat.com>
>> Cc: Harry Wentland <harry.wentland at amd.com>
>> Signed-off-by: Jani Nikula <jani.nikula at intel.com>
>> ---
>>  drivers/gpu/drm/drm_dp_helper.c | 52 +++++++++++++++++++++++++++++++++++++++--
>>  include/drm/drm_dp_helper.h     | 32 +++++++++++++++++++++++++
>>  2 files changed, 82 insertions(+), 2 deletions(-)
>> 
>> diff --git a/drivers/gpu/drm/drm_dp_helper.c b/drivers/gpu/drm/drm_dp_helper.c
>> index 52e0ca9a5bb1..213fb837e1c4 100644
>> --- a/drivers/gpu/drm/drm_dp_helper.c
>
> <snip>
>> + * enum drm_dp_quirk - Display Port sink/branch device specific quirks
>> + *
>> + * Display Port sink and branch devices in the wild have a variety of bugs, try
>> + * to collect them here. The quirks are shared, but it's up to the drivers to
>> + * implement workarounds for them.
>> + */
>> +enum drm_dp_quirk {
>> +	/**
>> +	 * @DP_DPCD_QUIRK_LIMITED_M_N:
>> +	 *
>> +	 * The device requires main link attributes Mdiv and Ndiv to be limited
>
> s/Mdiv/Mvid
> s/Ndiv/Nvid

Thanks, I took the liberty of fixing this while applying.

BR,
Jani.

>
>> +	 * to 16 bits.
>> +	 */
>> +	DP_DPCD_QUIRK_LIMITED_M_N,
>> +};

-- 
Jani Nikula, Intel Open Source Technology Center


More information about the dri-devel mailing list