mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-27 22:51:31 +00:00
drm/edid: improve non-desktop quirk logging
Improve non-desktop quirk logging if the EDID indicates non-desktop. If both are set, note about redundant quirk. If there's no quirk but the EDID indicates non-desktop, don't log non-desktop is set to 0. Cc: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Reviewed-by: Philipp Zabel <philipp.zabel@gmail.com> Tested-by: Philipp Zabel <philipp.zabel@gmail.com> Link: https://patchwork.freedesktop.org/patch/msgid/20211228101051.317989-1-jani.nikula@intel.com
This commit is contained in:
parent
50dc95d561
commit
ce99534e97
1 changed files with 10 additions and 7 deletions
|
@ -5365,17 +5365,13 @@ u32 drm_add_display_info(struct drm_connector *connector, const struct edid *edi
|
||||||
info->width_mm = edid->width_cm * 10;
|
info->width_mm = edid->width_cm * 10;
|
||||||
info->height_mm = edid->height_cm * 10;
|
info->height_mm = edid->height_cm * 10;
|
||||||
|
|
||||||
info->non_desktop = !!(quirks & EDID_QUIRK_NON_DESKTOP);
|
|
||||||
|
|
||||||
drm_get_monitor_range(connector, edid);
|
drm_get_monitor_range(connector, edid);
|
||||||
|
|
||||||
DRM_DEBUG_KMS("non_desktop set to %d\n", info->non_desktop);
|
|
||||||
|
|
||||||
if (edid->revision < 3)
|
if (edid->revision < 3)
|
||||||
return quirks;
|
goto out;
|
||||||
|
|
||||||
if (!(edid->input & DRM_EDID_INPUT_DIGITAL))
|
if (!(edid->input & DRM_EDID_INPUT_DIGITAL))
|
||||||
return quirks;
|
goto out;
|
||||||
|
|
||||||
drm_parse_cea_ext(connector, edid);
|
drm_parse_cea_ext(connector, edid);
|
||||||
|
|
||||||
|
@ -5395,7 +5391,7 @@ u32 drm_add_display_info(struct drm_connector *connector, const struct edid *edi
|
||||||
|
|
||||||
/* Only defined for 1.4 with digital displays */
|
/* Only defined for 1.4 with digital displays */
|
||||||
if (edid->revision < 4)
|
if (edid->revision < 4)
|
||||||
return quirks;
|
goto out;
|
||||||
|
|
||||||
switch (edid->input & DRM_EDID_DIGITAL_DEPTH_MASK) {
|
switch (edid->input & DRM_EDID_DIGITAL_DEPTH_MASK) {
|
||||||
case DRM_EDID_DIGITAL_DEPTH_6:
|
case DRM_EDID_DIGITAL_DEPTH_6:
|
||||||
|
@ -5433,6 +5429,13 @@ u32 drm_add_display_info(struct drm_connector *connector, const struct edid *edi
|
||||||
|
|
||||||
drm_update_mso(connector, edid);
|
drm_update_mso(connector, edid);
|
||||||
|
|
||||||
|
out:
|
||||||
|
if (quirks & EDID_QUIRK_NON_DESKTOP) {
|
||||||
|
drm_dbg_kms(connector->dev, "Non-desktop display%s\n",
|
||||||
|
info->non_desktop ? " (redundant quirk)" : "");
|
||||||
|
info->non_desktop = true;
|
||||||
|
}
|
||||||
|
|
||||||
return quirks;
|
return quirks;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue