|
@@ -3835,8 +3835,7 @@ EXPORT_SYMBOL(drm_edid_get_monitor_name);
|
|
|
* @edid: EDID to parse
|
|
|
*
|
|
|
* Fill the ELD (EDID-Like Data) buffer for passing to the audio driver. The
|
|
|
- * Conn_Type, HDCP and Port_ID ELD fields are left for the graphics driver to
|
|
|
- * fill in.
|
|
|
+ * HDCP and Port_ID ELD fields are left for the graphics driver to fill in.
|
|
|
*/
|
|
|
void drm_edid_to_eld(struct drm_connector *connector, struct edid *edid)
|
|
|
{
|
|
@@ -3918,6 +3917,12 @@ void drm_edid_to_eld(struct drm_connector *connector, struct edid *edid)
|
|
|
}
|
|
|
eld[DRM_ELD_SAD_COUNT_CONN_TYPE] |= total_sad_count << DRM_ELD_SAD_COUNT_SHIFT;
|
|
|
|
|
|
+ if (connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort ||
|
|
|
+ connector->connector_type == DRM_MODE_CONNECTOR_eDP)
|
|
|
+ eld[DRM_ELD_SAD_COUNT_CONN_TYPE] |= DRM_ELD_CONN_TYPE_DP;
|
|
|
+ else
|
|
|
+ eld[DRM_ELD_SAD_COUNT_CONN_TYPE] |= DRM_ELD_CONN_TYPE_HDMI;
|
|
|
+
|
|
|
eld[DRM_ELD_BASELINE_ELD_LEN] =
|
|
|
DIV_ROUND_UP(drm_eld_calc_baseline_block_size(eld), 4);
|
|
|
|