drm/msm/dp: Inline dp_link_parse_sink_count()
authorStephen Boyd <swboyd@chromium.org>
Tue, 29 Aug 2023 18:47:31 +0000 (11:47 -0700)
committerDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Mon, 9 Oct 2023 09:17:46 +0000 (12:17 +0300)
The function dp_link_parse_sink_count() is really just
drm_dp_read_sink_count(). It debug prints out the bit for content
protection (DP_SINK_CP_READY), but that is not useful beyond debug
because 'link->dp_link.sink_count' is overwritten to only contain the
sink_count in this same function. Just use drm_dp_read_sink_count() in
the one place this function is called to simplify.

Cc: Vinod Polimera <quic_vpolimer@quicinc.com>
Cc: Kuogee Hsieh <quic_khsieh@quicinc.com>
Signed-off-by: Stephen Boyd <swboyd@chromium.org>
Tested-by: Kuogee Hsieh <quic_khsieh@quicinc.com>
Reviewed-by: Kuogee Hsieh <quic_khsieh@quicinc.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/554987/
Link: https://lore.kernel.org/r/20230829184735.2841739-7-swboyd@chromium.org
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
drivers/gpu/drm/msm/dp/dp_link.c

index 6375daaeb98e1c7ca0310eb6b0df2fa89b78a85d..98427d45e9a7e3ac99a47871bbd1e0e893b2bc24 100644 (file)
@@ -712,49 +712,17 @@ end:
        return ret;
 }
 
-/**
- * dp_link_parse_sink_count() - parses the sink count
- * @dp_link: pointer to link module data
- *
- * Parses the DPCD to check if there is an update to the sink count
- * (Byte 0x200), and whether all the sink devices connected have Content
- * Protection enabled.
- */
-static int dp_link_parse_sink_count(struct dp_link *dp_link)
-{
-       ssize_t rlen;
-       bool cp_ready;
-
-       struct dp_link_private *link = container_of(dp_link,
-                       struct dp_link_private, dp_link);
-
-       rlen = drm_dp_dpcd_readb(link->aux, DP_SINK_COUNT,
-                                &link->dp_link.sink_count);
-       if (rlen < 0) {
-               DRM_ERROR("sink count read failed. rlen=%zd\n", rlen);
-               return rlen;
-       }
-
-       cp_ready = link->dp_link.sink_count & DP_SINK_CP_READY;
-
-       link->dp_link.sink_count =
-               DP_GET_SINK_COUNT(link->dp_link.sink_count);
-
-       drm_dbg_dp(link->drm_dev, "sink_count = 0x%x, cp_ready = 0x%x\n",
-                               link->dp_link.sink_count, cp_ready);
-       return 0;
-}
-
 static int dp_link_parse_sink_status_field(struct dp_link_private *link)
 {
-       int len = 0;
+       int len;
 
        link->prev_sink_count = link->dp_link.sink_count;
-       len = dp_link_parse_sink_count(&link->dp_link);
+       len = drm_dp_read_sink_count(link->aux);
        if (len < 0) {
                DRM_ERROR("DP parse sink count failed\n");
                return len;
        }
+       link->dp_link.sink_count = len;
 
        len = drm_dp_dpcd_read_link_status(link->aux,
                link->link_status);