drm/dp: Add a helper to get the SDP type as a string

Introduce dp_sdp_type_get_name() to get the SDP type as a string.
Use this to log the SDP type based on the sdp_type fields of the
VSC and AS SDPs instead of the hardcoded strings.

v2: Modify the SDP names to match the DisplayPort Spec. (Ville)

Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Suraj Kandpal <suraj.kandpal@intel.com>
Link: https://patch.msgid.link/20260428074457.3566918-8-ankit.k.nautiyal@intel.com
This commit is contained in:
Ankit Nautiyal 2026-04-28 13:14:55 +05:30 committed by Suraj Kandpal
parent e878adca84
commit 899f7991ea

View File

@ -3487,10 +3487,38 @@ static const char *dp_content_type_get_name(enum dp_content_type content_type)
}
}
static const char *dp_sdp_type_get_name(unsigned char type)
{
switch (type) {
case DP_SDP_AUDIO_TIMESTAMP:
return "Audio_TimeStamp";
case DP_SDP_AUDIO_STREAM:
return "Audio_Stream";
case DP_SDP_EXTENSION:
return "Extension";
case DP_SDP_AUDIO_COPYMANAGEMENT:
return "Audio_CopyManagement";
case DP_SDP_ISRC:
return "ISRC";
case DP_SDP_VSC:
return "VSC";
case DP_SDP_PPS:
return "PPS";
case DP_SDP_VSC_EXT_VESA:
return "VSC_EXT_VESA";
case DP_SDP_VSC_EXT_CEA:
return "VSC_EXT_CEA";
case DP_SDP_ADAPTIVE_SYNC:
return "Adaptive-Sync";
default:
return "Unknown";
}
}
void drm_dp_vsc_sdp_log(struct drm_printer *p, const struct drm_dp_vsc_sdp *vsc)
{
drm_printf(p, "DP SDP: VSC, revision %u, length %u\n",
vsc->revision, vsc->length);
drm_printf(p, "DP SDP: %s, revision %u, length %u\n",
dp_sdp_type_get_name(vsc->sdp_type), vsc->revision, vsc->length);
drm_printf(p, " pixelformat: %s\n",
dp_pixelformat_get_name(vsc->pixelformat));
drm_printf(p, " colorimetry: %s\n",
@ -3505,8 +3533,8 @@ EXPORT_SYMBOL(drm_dp_vsc_sdp_log);
void drm_dp_as_sdp_log(struct drm_printer *p, const struct drm_dp_as_sdp *as_sdp)
{
drm_printf(p, "DP SDP: AS_SDP, revision %u, length %u\n",
as_sdp->revision, as_sdp->length);
drm_printf(p, "DP SDP: %s, revision %u, length %u\n",
dp_sdp_type_get_name(as_sdp->sdp_type), as_sdp->revision, as_sdp->length);
drm_printf(p, " vtotal: %d\n", as_sdp->vtotal);
drm_printf(p, " target rr: %d\n", as_sdp->target_rr);
drm_printf(p, " duration increase ms: %d\n", as_sdp->duration_incr_ms);