[Intel-gfx] [PATCH v6 05/12] drm/edid: move EDID BPC quirk application to update_display_info()
Jani Nikula
jani.nikula at intel.com
Fri Dec 16 16:00:19 UTC 2022
The BPC quirks are closer to home in update_display_info().
Cc: Imre Deak <imre.deak at intel.com>
Cc: Ville Syrjälä <ville.syrjala at linux.intel.com>
Signed-off-by: Jani Nikula <jani.nikula at intel.com>
---
drivers/gpu/drm/drm_edid.c | 26 +++++++++++++-------------
1 file changed, 13 insertions(+), 13 deletions(-)
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index 2246a5b10d2c..15f69c362fc3 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -6467,6 +6467,18 @@ static void update_display_info(struct drm_connector *connector,
if (info->quirks & EDID_QUIRK_CAP_DSC_15BPP)
info->max_dsc_bpp = 15;
+ if (info->quirks & EDID_QUIRK_FORCE_6BPC)
+ info->bpc = 6;
+
+ if (info->quirks & EDID_QUIRK_FORCE_8BPC)
+ info->bpc = 8;
+
+ if (info->quirks & EDID_QUIRK_FORCE_10BPC)
+ info->bpc = 10;
+
+ if (info->quirks & EDID_QUIRK_FORCE_12BPC)
+ info->bpc = 12;
+
/* Depends on info->cea_rev set by drm_parse_cea_ext() above */
drm_edid_to_eld(connector, drm_edid);
}
@@ -6566,7 +6578,7 @@ static int add_displayid_detailed_modes(struct drm_connector *connector,
static int _drm_edid_connector_update(struct drm_connector *connector,
const struct drm_edid *drm_edid)
{
- struct drm_display_info *info = &connector->display_info;
+ const struct drm_display_info *info = &connector->display_info;
int num_modes = 0;
/*
@@ -6606,18 +6618,6 @@ static int _drm_edid_connector_update(struct drm_connector *connector,
if (info->quirks & (EDID_QUIRK_PREFER_LARGE_60 | EDID_QUIRK_PREFER_LARGE_75))
edid_fixup_preferred(connector);
- if (info->quirks & EDID_QUIRK_FORCE_6BPC)
- info->bpc = 6;
-
- if (info->quirks & EDID_QUIRK_FORCE_8BPC)
- info->bpc = 8;
-
- if (info->quirks & EDID_QUIRK_FORCE_10BPC)
- info->bpc = 10;
-
- if (info->quirks & EDID_QUIRK_FORCE_12BPC)
- info->bpc = 12;
-
return num_modes;
}
--
2.34.1
More information about the Intel-gfx
mailing list