diff mbox series

usb: eth: lan78xx: Fix logic in lan78xx_read_otp() to avoid a warning

Message ID 20200604203515.12971-1-trini@konsulko.com
State Accepted
Commit 5f024d10bbae9e52396191b8dadf0e8ddb059c85
Headers show
Series usb: eth: lan78xx: Fix logic in lan78xx_read_otp() to avoid a warning | expand

Commit Message

Tom Rini June 4, 2020, 8:35 p.m. UTC
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 <marex at denx.de>
Signed-off-by: Tom Rini <trini at konsulko.com>
---
 drivers/usb/eth/lan78xx.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

Comments

Marek Vasut June 4, 2020, 8:41 p.m. UTC | #1
On 6/4/20 10:35 PM, Tom Rini wrote:
> 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 <marex at denx.de>
> Signed-off-by: Tom Rini <trini at konsulko.com>

Reviewed-by: Marek Vasut <marex at denx.de>
Tom Rini June 20, 2023, 6:15 p.m. UTC | #2
On Thu, 04 Jun 2020 16:35:15 -0400, Tom Rini wrote:

> 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
> 
> 
> [...]

Applied to u-boot/next, thanks!
diff mbox series

Patch

diff --git a/drivers/usb/eth/lan78xx.c b/drivers/usb/eth/lan78xx.c
index e34ad2603fbb..d147412990de 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)