[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20241128030940.25657-1-liankun.yang@mediatek.com>
Date: Thu, 28 Nov 2024 11:08:16 +0800
From: Liankun Yang <liankun.yang@...iatek.com>
To: <chunkuang.hu@...nel.org>, <p.zabel@...gutronix.de>, <airlied@...il.com>,
<simona@...ll.ch>, <matthias.bgg@...il.com>,
<angelogioacchino.delregno@...labora.com>, <ck.hu@...iatek.com>,
<granquet@...libre.com>, <dmitry.osipenko@...labora.com>,
<rex-bc.chen@...iatek.com>, <jitao.shi@...iatek.com>,
<mac.shen@...iatek.com>, <peng.liu@...iatek.com>,
<liankun.yang@...iatek.com>,
<Project_Global_Chrome_Upstream_Group@...iatek.com>
CC: <dri-devel@...ts.freedesktop.org>, <linux-mediatek@...ts.infradead.org>,
<linux-arm-kernel@...ts.infradead.org>, <linux-kernel@...r.kernel.org>
Subject: [PATCH v2 1/1] drm/mediatek: Add return value check when reading DPCD
Returns the number of bytes transferred (1) on success.
Check the return value to confirm that AUX communication is successful.
Fixes: d9e6ea02fc3f ("drm/mediatek: dp: Add MT8195 External DisplayPort support")
Signed-off-by: Liankun Yang <liankun.yang@...iatek.com>
---
Changes in V2:
- Modify Fixes in Commit Message.
Per suggestion from the previous thread:
https://patchwork.kernel.org/project/linux-mediatek/patch/20240930092000.5385-1-liankun.yang@mediatek.com/
---
drivers/gpu/drm/mediatek/mtk_dp.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/mediatek/mtk_dp.c b/drivers/gpu/drm/mediatek/mtk_dp.c
index 1cc916b16471..9dc68ec2ff43 100644
--- a/drivers/gpu/drm/mediatek/mtk_dp.c
+++ b/drivers/gpu/drm/mediatek/mtk_dp.c
@@ -2101,6 +2101,7 @@ static enum drm_connector_status mtk_dp_bdg_detect(struct drm_bridge *bridge)
enum drm_connector_status ret = connector_status_disconnected;
bool enabled = mtk_dp->enabled;
u8 sink_count = 0;
+ size_t value;
if (!mtk_dp->train_info.cable_plugged_in)
return ret;
@@ -2115,7 +2116,12 @@ static enum drm_connector_status mtk_dp_bdg_detect(struct drm_bridge *bridge)
* function, we just need to check the HPD connection to check
* whether we connect to a sink device.
*/
- drm_dp_dpcd_readb(&mtk_dp->aux, DP_SINK_COUNT, &sink_count);
+ value = drm_dp_dpcd_readb(&mtk_dp->aux, DP_SINK_COUNT, &sink_count);
+ if (value < 0) {
+ drm_err(mtk_dp->drm_dev, "Failed to read DP Sink Count: %zd\n", value);
+ return ret;
+ }
+
if (DP_GET_SINK_COUNT(sink_count))
ret = connector_status_connected;
--
2.45.2
Powered by blists - more mailing lists