diff options
author | Jani Nikula <jani.nikula@intel.com> | 2023-01-04 11:05:30 +0100 |
---|---|---|
committer | Jani Nikula <jani.nikula@intel.com> | 2023-01-19 13:04:15 +0100 |
commit | 43bde505d66a41c2ad706d603e97b2c8aa2fbe4a (patch) | |
tree | 28daaede7b3011f0238969a18f438eeafdc21bad /drivers/gpu/drm/drm_edid.c | |
parent | drm/edid: merge ELD handling to update_display_info() (diff) | |
download | linux-43bde505d66a41c2ad706d603e97b2c8aa2fbe4a.tar.xz linux-43bde505d66a41c2ad706d603e97b2c8aa2fbe4a.zip |
drm/edid: move EDID BPC quirk application to update_display_info()
The BPC quirks are closer to home in update_display_info().
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/8997e0fa3b0fd03c920e72d1dff24c0d96ff4dd0.1672826282.git.jani.nikula@intel.com
Diffstat (limited to 'drivers/gpu/drm/drm_edid.c')
-rw-r--r-- | drivers/gpu/drm/drm_edid.c | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c index f58b0fdd582b..e8b67f3f5c91 100644 --- a/drivers/gpu/drm/drm_edid.c +++ b/drivers/gpu/drm/drm_edid.c @@ -6522,6 +6522,18 @@ out: 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); } @@ -6621,7 +6633,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; /* @@ -6661,18 +6673,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; } |