]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/bridge: analogix_dp: Apply DP helper API drm_dp_dpcd_read_link_status()
authorDamon Ding <damon.ding@rock-chips.com>
Mon, 10 Nov 2025 08:58:20 +0000 (16:58 +0800)
committerLuca Ceresoli <luca.ceresoli@bootlin.com>
Wed, 25 Mar 2026 13:05:08 +0000 (14:05 +0100)
Use existing DP helper API to read link status related DPCDs.

Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Link: https://patch.msgid.link/20251110085823.1197472-2-damon.ding@rock-chips.com
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
drivers/gpu/drm/bridge/analogix/analogix_dp_core.c

index b37fb3c3c1dd1ac70525181736a928f20324619d..1fcdadc2803a9f09474004272ad3f624d13f40ab 100644 (file)
@@ -384,13 +384,13 @@ static int analogix_dp_process_clock_recovery(struct analogix_dp_device *dp)
 {
        int lane, lane_count, retval;
        u8 voltage_swing, pre_emphasis, training_lane;
-       u8 link_status[2], adjust_request[2];
+       u8 link_status[DP_LINK_STATUS_SIZE], adjust_request[2];
 
        usleep_range(100, 101);
 
        lane_count = dp->link_train.lane_count;
 
-       retval = drm_dp_dpcd_read(&dp->aux, DP_LANE0_1_STATUS, link_status, 2);
+       retval = drm_dp_dpcd_read_link_status(&dp->aux, link_status);
        if (retval < 0)
                return retval;
 
@@ -450,13 +450,13 @@ static int analogix_dp_process_equalizer_training(struct analogix_dp_device *dp)
 {
        int lane_count, retval;
        u32 reg;
-       u8 link_align, link_status[2], adjust_request[2];
+       u8 link_align, link_status[DP_LINK_STATUS_SIZE], adjust_request[2];
 
        usleep_range(400, 401);
 
        lane_count = dp->link_train.lane_count;
 
-       retval = drm_dp_dpcd_read(&dp->aux, DP_LANE0_1_STATUS, link_status, 2);
+       retval = drm_dp_dpcd_read_link_status(&dp->aux, link_status);
        if (retval < 0)
                return retval;
 
@@ -615,7 +615,7 @@ static int analogix_dp_full_link_train(struct analogix_dp_device *dp,
 static int analogix_dp_fast_link_train(struct analogix_dp_device *dp)
 {
        int ret;
-       u8 link_align, link_status[2];
+       u8 link_align, link_status[DP_LINK_STATUS_SIZE];
 
        analogix_dp_set_link_bandwidth(dp, dp->link_train.link_rate);
        ret = analogix_dp_wait_pll_locked(dp);
@@ -657,8 +657,7 @@ static int analogix_dp_fast_link_train(struct analogix_dp_device *dp)
                        return ret;
                }
 
-               ret = drm_dp_dpcd_read(&dp->aux, DP_LANE0_1_STATUS, link_status,
-                                      2);
+               ret = drm_dp_dpcd_read_link_status(&dp->aux, link_status);
                if (ret < 0) {
                        DRM_DEV_ERROR(dp->dev, "Read link status failed %d\n",
                                      ret);