net: ethernet: bgmac: init sequence bug
authorJon Mason <jon.mason@broadcom.com>
Thu, 2 Mar 2017 22:59:56 +0000 (17:59 -0500)
committerDavid S. Miller <davem@davemloft.net>
Fri, 3 Mar 2017 17:44:28 +0000 (09:44 -0800)
commit16206524f6ea57d6dcd56fe46f9f4a06d4a1b113
tree7ef36f943d7e924f12827f8e37e7b68885feac62
parent2ddbcea75a36dac2ff62ee33a0a8df37e994201e
net: ethernet: bgmac: init sequence bug

Fix a bug in the 'bgmac' driver init sequence that blind writes for init
sequence where it should preserve most bits other than the ones it is
deliberately manipulating.

The code now checks to see if the adapter needs to be brought out of
reset (where as before it was doing an IDM write to bring it out of
reset regardless of whether it was in reset or not).  Also, removed
unnecessary usleeps (as there is already a read present to flush the
IDM writes).

Signed-off-by: Zac Schroff <zschroff@broadcom.com>
Signed-off-by: Jon Mason <jon.mason@broadcom.com>
Fixes: f6a95a24957 ("net: ethernet: bgmac: Add platform device support")
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bgmac-platform.c
drivers/net/ethernet/broadcom/bgmac.h