[netdrvr] gianfar: Determine TBIPA value dynamically
authorPaul Gortmaker <paul.gortmaker@windriver.com>
Thu, 17 Apr 2008 04:08:10 +0000 (00:08 -0400)
committerJeff Garzik <jgarzik@redhat.com>
Tue, 29 Apr 2008 05:57:57 +0000 (01:57 -0400)
commitd0313587547092af7f5ee8a576793e1e5d61be89
tree57b711ba74fe8ed4dc5219a588b17f0bf4ec7239
parentdac2f83fce01f0c2900918a4a8abd4c652151804
[netdrvr] gianfar: Determine TBIPA value dynamically

TBIPA needs to be set to a value (on connected MDIO buses) that
doesn't conflict with PHYs on the bus.  By hardcoding it to 0x1f,
we were preventing boards with PHYs at 0x1f from working properly.
Instead, scan the bus when it comes up, and find an address that
doesn't have a PHY on it.  The TBI PHY configuration code then
trusts that the value in TBIPA is either safe, or doesn't matter
(ie - it's not an active bus with other PHYs).

Signed-off-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/net/gianfar.c
drivers/net/gianfar.h
drivers/net/gianfar_mii.c
drivers/net/gianfar_mii.h