ibm_newemac: Workaround reset timeout when no link
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Wed, 5 Dec 2007 00:14:27 +0000 (11:14 +1100)
committerJeff Garzik <jeff@garzik.org>
Fri, 7 Dec 2007 20:09:05 +0000 (15:09 -0500)
commit911b237d7d327db5371a762f4d8d8cd9ea763662
tree10ec6fe5d727439b112d8c1d52c7124f462b2aa1
parent968530643a0685caced9dfd6f72f20d5e7bc8fbb
ibm_newemac: Workaround reset timeout when no link

With some PHYs, when the link goes away, the EMAC reset fails due
to the loss of the RX clock I believe.

The old EMAC driver worked around that using some internal chip-specific
clock force bits that are different on various 44x implementations.

This is an attempt at doing it differently, by avoiding the reset when
there is no link, but forcing loopback mode instead. It seems to work
on my Taishan 440GX based board so far.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Stefan Roese <sr@denx.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
drivers/net/ibm_newemac/core.c