diff --git a/[refs] b/[refs] index 5c485b3d94b5..988bc61b842a 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: aee64faf236815e0f337408892c01b373cd340f3 +refs/heads/master: c8014fe1d4548da8b9ea54730852c48a7117b03f diff --git a/trunk/drivers/net/r6040.c b/trunk/drivers/net/r6040.c index 6f97b47d74a6..65627253c988 100644 --- a/trunk/drivers/net/r6040.c +++ b/trunk/drivers/net/r6040.c @@ -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);