]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
net: ks8851: Reassert reset pin if chip ID check fails
authorLukas Wunner <lukas@wunner.de>
Wed, 20 Mar 2019 14:02:00 +0000 (15:02 +0100)
committerDavid S. Miller <davem@davemloft.net>
Wed, 20 Mar 2019 19:43:52 +0000 (12:43 -0700)
Commit 73fdeb82e963 ("net: ks8851: Add optional vdd_io regulator and
reset gpio") amended the ks8851 driver to briefly assert the chip's
reset pin on probe. It also amended the probe routine's error path to
reassert the reset pin if a subsequent initialization step fails.

However the commit misplaced reassertion of the reset pin in the error
path such that it is not performed if the check of the Chip ID and
Enable Register (CIDER) fails. The error path is therefore slightly
asymmetrical to the probe routine's body. Fix it.

Signed-off-by: Lukas Wunner <lukas@wunner.de>
Cc: Frank Pavlic <f.pavlic@kunbus.de>
Cc: Stephen Boyd <sboyd@codeaurora.org>
Cc: Nishanth Menon <nm@ti.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/micrel/ks8851.c

index a93f8e842c07dd0849741af5190ee740f9f0cb05..1633fa5c709c1b9f7c780bc58b001e2949813294 100644 (file)
@@ -1554,9 +1554,9 @@ static int ks8851_probe(struct spi_device *spi)
        free_irq(ndev->irq, ks);
 
 err_irq:
+err_id:
        if (gpio_is_valid(gpio))
                gpio_set_value(gpio, 0);
-err_id:
        regulator_disable(ks->vdd_reg);
 err_reg:
        regulator_disable(ks->vdd_io);