KS8851: Add soft reset at probe time
authorBen Dooks <ben@simtec.co.uk>
Mon, 19 Oct 2009 23:49:03 +0000 (23:49 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 21 Oct 2009 02:11:05 +0000 (19:11 -0700)
Issue a full soft reset at probe time.

This was reported by Doong Ping of Micrel, but no explanation of why this
is necessary or what bug it is fixing. Add it as it does not seem to hurt
the current driver and ensures that the device is in a known state when we
start setting it up.

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ks8851.c

index 2378358643576daa21a034202a87f0ee3f2ebbb7..18b17a1deb11d4bca3bd4b23eda9ad49e2afb707 100644 (file)
@@ -1239,6 +1239,9 @@ static int __devinit ks8851_probe(struct spi_device *spi)
        ndev->netdev_ops = &ks8851_netdev_ops;
        ndev->irq = spi->irq;
 
+       /* issue a global soft reset to reset the device. */
+       ks8851_soft_reset(ks, GRR_GSR);
+
        /* simple check for a valid chip being connected to the bus */
 
        if ((ks8851_rdreg16(ks, KS_CIDER) & ~CIDER_REV_MASK) != CIDER_ID) {