forked from Minki/linux
r6040: check for absent PHY
Some devices have two R6040 MACs but the second one is not wired to any PHY, therefore the interface is just unusable. Warn the user about that and prevent device from registering. Tested-by: bifferos <bifferos@yahoo.co.uk> Signed-off-by: Florian Fainelli <florian@openwrt.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
aee64faf23
commit
c8014fe1d4
@ -742,6 +742,14 @@ static int r6040_up(struct net_device *dev)
|
||||
struct r6040_private *lp = netdev_priv(dev);
|
||||
void __iomem *ioaddr = lp->base;
|
||||
int ret;
|
||||
u16 val;
|
||||
|
||||
/* Check presence of a second PHY */
|
||||
val = r6040_phy_read(ioaddr, lp->phy_addr, 2);
|
||||
if (val == 0xFFFF) {
|
||||
printk(KERN_ERR DRV_NAME " no second PHY attached\n");
|
||||
return -EIO;
|
||||
}
|
||||
|
||||
/* Initialise and alloc RX/TX buffers */
|
||||
r6040_init_txbufs(dev);
|
||||
|
Loading…
Reference in New Issue
Block a user