From: Tom Rini Date: Thu, 4 Jun 2020 20:35:15 +0000 (-0400) Subject: usb: eth: lan78xx: Fix logic in lan78xx_read_otp() to avoid a warning X-Git-Url: http://git.dujemihanovic.xyz/?a=commitdiff_plain;h=5f024d10bbae9e52396191b8dadf0e8ddb059c85;p=u-boot.git usb: eth: lan78xx: Fix logic in lan78xx_read_otp() to avoid a warning In lan78xx_read_otp() we want to know if sig is LAN78XX_OTP_INDICATOR_1 or LAN78XX_OTP_INDICATOR_2. In the case of matching the first one we set offset to itself, and clang warns about this. Rework the logic so that if sig is the second indicator we adjust the offset as today and if it does not match the first indicator we return -EINVAL Cc: Marek Vasut Reviewed-by: Marek Vasut Signed-off-by: Tom Rini --- diff --git a/drivers/usb/eth/lan78xx.c b/drivers/usb/eth/lan78xx.c index 37912a1d04..1d8267c80b 100644 --- a/drivers/usb/eth/lan78xx.c +++ b/drivers/usb/eth/lan78xx.c @@ -146,11 +146,9 @@ static int lan78xx_read_otp(struct usb_device *udev, u32 offset, ret = lan78xx_read_raw_otp(udev, 0, 1, &sig); if (!ret) { - if (sig == LAN78XX_OTP_INDICATOR_1) - offset = offset; - else if (sig == LAN78XX_OTP_INDICATOR_2) + if (sig == LAN78XX_OTP_INDICATOR_2) offset += 0x100; - else + else if (sig != LAN78XX_OTP_INDICATOR_1) return -EINVAL; ret = lan78xx_read_raw_otp(udev, offset, length, data); if (ret)