[PATCH] drivers: smc911x fix inverted wait_on_timeout

Mike Nawrocki michael.nawrocki at gtri.gatech.edu
Fri Jan 29 12:44:35 EST 2021


The smc911x driver probe routine polls the READY bit using
wait_on_timeout, which returns 0 on success. The error check following
the wait_on_timeout invocation in the probe routine interprets a
returned 0 as failure.

This patch correctly interprets the return value of wait_on_timeout.

Signed-off-by: Mike Nawrocki <michael.nawrocki at gtri.gatech.edu>
---
 drivers/net/smc911x.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/smc911x.c b/drivers/net/smc911x.c
index ea7cea5f1..1edc16ce4 100644
--- a/drivers/net/smc911x.c
+++ b/drivers/net/smc911x.c
@@ -541,7 +541,7 @@ static int smc911x_probe(struct device_d *dev)
 	 * forbidden while this bit isn't set. Try for 100ms
 	 */
 	ret = wait_on_timeout(100 * MSECOND, smc911x_reg_read(priv, PMT_CTRL) & PMT_CTRL_READY);
-	if (!ret) {
+	if (ret) {
 		dev_err(dev, "Device not READY in 100ms aborting\n");
 		return -ENODEV;
 	}
-- 
2.20.1




More information about the barebox mailing list