Skip to content

Commit 15f9dfd

Browse files
Harry Wentlandalexdeucher
authored andcommitted
drm/amd/display: Register Colorspace property for DP and HDMI
We want compositors to be able to set the output colorspace on DP and HDMI outputs, based on the caps reported from the receiver via EDID. Signed-off-by: Harry Wentland <harry.wentland@amd.com> Reviewed-by: Joshua Ashton <joshua@froggi.es> Cc: Pekka Paalanen <ppaalanen@gmail.com> Cc: Sebastian Wick <sebastian.wick@redhat.com> Cc: Vitaly.Prosyak@amd.com Cc: Joshua Ashton <joshua@froggi.es> Cc: Simon Ser <contact@emersion.fr> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Melissa Wen <mwen@igalia.com> Cc: dri-devel@lists.freedesktop.org Cc: amd-gfx@lists.freedesktop.org Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
1 parent cb841d2 commit 15f9dfd

1 file changed

Lines changed: 15 additions & 0 deletions

File tree

drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7247,6 +7247,12 @@ static int amdgpu_dm_connector_get_modes(struct drm_connector *connector)
72477247
return amdgpu_dm_connector->num_modes;
72487248
}
72497249

7250+
static const u32 supported_colorspaces =
7251+
BIT(DRM_MODE_COLORIMETRY_BT709_YCC) |
7252+
BIT(DRM_MODE_COLORIMETRY_OPRGB) |
7253+
BIT(DRM_MODE_COLORIMETRY_BT2020_RGB) |
7254+
BIT(DRM_MODE_COLORIMETRY_BT2020_YCC);
7255+
72507256
void amdgpu_dm_connector_init_helper(struct amdgpu_display_manager *dm,
72517257
struct amdgpu_dm_connector *aconnector,
72527258
int connector_type,
@@ -7327,6 +7333,15 @@ void amdgpu_dm_connector_init_helper(struct amdgpu_display_manager *dm,
73277333
adev->mode_info.abm_level_property, 0);
73287334
}
73297335

7336+
if (connector_type == DRM_MODE_CONNECTOR_HDMIA) {
7337+
if (!drm_mode_create_hdmi_colorspace_property(&aconnector->base, supported_colorspaces))
7338+
drm_connector_attach_colorspace_property(&aconnector->base);
7339+
} else if (connector_type == DRM_MODE_CONNECTOR_DisplayPort ||
7340+
connector_type == DRM_MODE_CONNECTOR_eDP) {
7341+
if (!drm_mode_create_dp_colorspace_property(&aconnector->base, supported_colorspaces))
7342+
drm_connector_attach_colorspace_property(&aconnector->base);
7343+
}
7344+
73307345
if (connector_type == DRM_MODE_CONNECTOR_HDMIA ||
73317346
connector_type == DRM_MODE_CONNECTOR_DisplayPort ||
73327347
connector_type == DRM_MODE_CONNECTOR_eDP) {

0 commit comments

Comments
 (0)