[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240930092000.5385-1-liankun.yang@mediatek.com>
Date: Mon, 30 Sep 2024 17:17:41 +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>, <msp@...libre.com>,
<rex-bc.chen@...iatek.com>, <dmitry.osipenko@...labora.com>,
<ck.hu@...iatek.com>, <jitao.shi@...iatek.com>, <mac.shen@...iatek.com>,
<peng.liu@...iatek.com>, <liankun.yang@...iatek.com>
CC: <Project_Global_Chrome_Upstream_Group@...iatek.com>,
<dri-devel@...ts.freedesktop.org>, <linux-mediatek@...ts.infradead.org>,
<linux-kernel@...r.kernel.org>, <linux-arm-kernel@...ts.infradead.org>
Subject: [PATCH v1 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: f70ac097a2cf ("drm/mediatek: Add MT8195 Embedded DisplayPort driver")
Signed-off-by: Liankun Yang <liankun.yang@...iatek.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 d8796a904eca..3cab65345d1e 100644
--- a/drivers/gpu/drm/mediatek/mtk_dp.c
+++ b/drivers/gpu/drm/mediatek/mtk_dp.c
@@ -2018,6 +2018,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;
@@ -2032,7 +2033,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