Fix to return error code -ENODEV from the chip not found error handling
case instead of 0(ret have been overwritten to 0 by lan9303_read()), as
done elsewhere in this function.

Signed-off-by: Wei Yongjun <weiyongj...@huawei.com>
---
 drivers/net/dsa/lan9303-core.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/dsa/lan9303-core.c b/drivers/net/dsa/lan9303-core.c
index 944901f..d4a5b45 100644
--- a/drivers/net/dsa/lan9303-core.c
+++ b/drivers/net/dsa/lan9303-core.c
@@ -867,7 +867,7 @@ static int lan9303_check_device(struct lan9303 *chip)
        if ((reg >> 16) != LAN9303_CHIP_ID) {
                dev_err(chip->dev, "expecting LAN9303 chip, but found: %X\n",
                        reg >> 16);
-               return ret;
+               return -ENODEV;
        }
 
        /* The default state of the LAN9303 device is to forward packets between

Reply via email to