summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Dooks <ben@simtec.co.uk>2009-10-19 23:49:03 +0000
committerDavid S. Miller <davem@davemloft.net>2009-10-20 19:11:05 -0700
commit57dada6819160eb08f2945fb847045f173d3218d (patch)
treed71f7249cbac0127a6323dc09b255a5f6e8611aa
parent78abcb13dd573f80d76d12007b36200a86f1e494 (diff)
KS8851: Add soft reset at probe time
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>
-rw-r--r--drivers/net/ks8851.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/ks8851.c b/drivers/net/ks8851.c
index 23783586435..18b17a1deb1 100644
--- a/drivers/net/ks8851.c
+++ b/drivers/net/ks8851.c
@@ -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) {