From: Colin Ian King <colin.k...@canonical.com> [ Upstream commit e5b95c8febd504659b60a7601fd43c0ae8e4f3c0 ]
Currently the error return from the call to max9286_read is masked with 0xf0 so the following check for a negative error return is never true. Fix this by checking for an error first, then masking the return value for subsequent conflink_mask checking. Addresses-Coverity: ("Logically dead code") Fixes: 66d8c9d2422d ("media: i2c: Add MAX9286 driver") Signed-off-by: Colin Ian King <colin.k...@canonical.com> Reviewed-by: Kieran Bingham <kieran.bingham+rene...@ideasonboard.com> Signed-off-by: Sakari Ailus <sakari.ai...@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+hua...@kernel.org> Signed-off-by: Sasha Levin <sas...@kernel.org> --- drivers/media/i2c/max9286.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/media/i2c/max9286.c b/drivers/media/i2c/max9286.c index 47f280518fdb6..b364a3f604861 100644 --- a/drivers/media/i2c/max9286.c +++ b/drivers/media/i2c/max9286.c @@ -405,10 +405,11 @@ static int max9286_check_config_link(struct max9286_priv *priv, * to 5 milliseconds. */ for (i = 0; i < 10; i++) { - ret = max9286_read(priv, 0x49) & 0xf0; + ret = max9286_read(priv, 0x49); if (ret < 0) return -EIO; + ret &= 0xf0; if (ret == conflink_mask) break; -- 2.25.1