diff options
author | Ben Dooks <ben@simtec.co.uk> | 2009-10-19 23:49:03 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-10-20 19:11:05 -0700 |
commit | 57dada6819160eb08f2945fb847045f173d3218d (patch) | |
tree | d71f7249cbac0127a6323dc09b255a5f6e8611aa /drivers/net/ks8851.c | |
parent | 78abcb13dd573f80d76d12007b36200a86f1e494 (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>
Diffstat (limited to 'drivers/net/ks8851.c')
-rw-r--r-- | drivers/net/ks8851.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/ks8851.c b/drivers/net/ks8851.c index 237835864357..18b17a1deb11 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) { |