Merge "disp: msm: Check for hdr properties of connected receiver"

This commit is contained in:
QCTECMDR Service
2024-06-30 21:28:17 -07:00
committato da Gerrit - the friendly Code Review server
2 ha cambiato i file con 12 aggiunte e 2 eliminazioni

Vedi File

@@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-only
/*
* Copyright (c) 2022-2023, Qualcomm Innovation Center, Inc. All rights reserved.
* Copyright (c) 2022-2024, Qualcomm Innovation Center, Inc. All rights reserved.
* Copyright (c) 2012-2021, The Linux Foundation. All rights reserved.
*/
@@ -1576,6 +1576,8 @@ static int dp_panel_read_dpcd(struct dp_panel *dp_panel, bool multi_func)
struct dp_panel_private *panel;
struct drm_dp_link *link_info;
struct drm_dp_aux *drm_aux;
struct drm_connector *connector;
struct sde_connector *sde_conn;
u8 *dpcd, rx_feature, temp;
u32 dfp_count = 0, offset = DP_DPCD_REV;
@@ -1596,6 +1598,8 @@ static int dp_panel_read_dpcd(struct dp_panel *dp_panel, bool multi_func)
panel->vscext_supported = false;
panel->vscext_chaining_supported = false;
connector = dp_panel->connector;
sde_conn = to_sde_connector(connector);
rlen = drm_dp_dpcd_read(drm_aux, DP_TRAINING_AUX_RD_INTERVAL, &temp, 1);
if (rlen != 1) {
DP_ERR("error reading DP_TRAINING_AUX_RD_INTERVAL\n");
@@ -1637,6 +1641,7 @@ static int dp_panel_read_dpcd(struct dp_panel *dp_panel, bool multi_func)
panel->vscext_chaining_supported = !!(rx_feature &
VSC_EXT_VESA_SDP_CHAINING_SUPPORTED);
sde_conn->hdr_supported = panel->vsc_supported;
DP_DEBUG("vsc=%d, vscext=%d, vscext_chaining=%d\n",
panel->vsc_supported, panel->vscext_supported,
panel->vscext_chaining_supported);

Vedi File

@@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-only
/*
* Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved.
* Copyright (c) 2021-2024 Qualcomm Innovation Center, Inc. All rights reserved.
* Copyright (c) 2017-2021, The Linux Foundation. All rights reserved.
*/
@@ -255,6 +255,11 @@ sde_edid_parse_hdr_db(struct drm_connector *connector, const u8 *db)
if (!db)
return;
if (!c_conn->hdr_supported) {
SDE_INFO("connected receiver does not support HDR\n");
return;
}
len = db[0] & 0x1f;
/* Byte 3: Electro-Optical Transfer Functions */
c_conn->hdr_eotf = db[2] & 0x3F;