OSDN Git Service

drm/bridge: anx7625: check the return on anx7625_aux_trans
authorTom Rix <trix@redhat.com>
Thu, 3 Mar 2022 20:19:43 +0000 (12:19 -0800)
committerRobert Foss <robert.foss@linaro.org>
Wed, 9 Mar 2022 13:45:58 +0000 (14:45 +0100)
Clang static analysis reports this issue
anx7625.c:876:13: warning: The left operand of '&' is
  a garbage value
  if (!(bcap & 0xOA01)) {
        ~~~~ ^

bcap is only set by a successful call to
anx7625_aux_trans().  So check.

Fixes: cd1637c7e480 ("drm/bridge: anx7625: add HDCP support")
Signed-off-by: Tom Rix <trix@redhat.com>
Fixes: adca62ec370c ("drm/bridge: anx7625: Support reading edid through aux channel")
Signed-off-by: Robert Foss <robert.foss@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20220303201943.501746-1-trix@redhat.com
Reviewed-by: Robert Foss <robert.foss@linaro.org>
drivers/gpu/drm/bridge/analogix/anx7625.c

index 4043192..69122be 100644 (file)
@@ -874,7 +874,10 @@ static int anx7625_hdcp_enable(struct anx7625_data *ctx)
        }
 
        /* Read downstream capability */
-       anx7625_aux_trans(ctx, DP_AUX_NATIVE_READ, 0x68028, 1, &bcap);
+       ret = anx7625_aux_trans(ctx, DP_AUX_NATIVE_READ, 0x68028, 1, &bcap);
+       if (ret < 0)
+               return ret;
+
        if (!(bcap & 0x01)) {
                pr_warn("downstream not support HDCP 1.4, cap(%x).\n", bcap);
                return 0;