summaryrefslogtreecommitdiff
path: root/drivers/net/cpsw.c
diff options
context:
space:
mode:
authorAlbert ARIBAUD <albert.u.boot@aribaud.net>2013-10-02 08:10:36 +0200
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>2013-10-02 08:10:36 +0200
commit5c8d5b6fc15fc2c52d74c266d9fe6eb5f75cbcb4 (patch)
tree10c4a86397d7ac6ae9a6bcc0e9438dd620246404 /drivers/net/cpsw.c
parent12eba1b49380988fd87cc0b3af44014cca8b71c4 (diff)
parent827512fb1154c05c6eb1e2259e936df55c98a535 (diff)
downloadolio-uboot-2014.01-5c8d5b6fc15fc2c52d74c266d9fe6eb5f75cbcb4.tar.xz
olio-uboot-2014.01-5c8d5b6fc15fc2c52d74c266d9fe6eb5f75cbcb4.zip
Merge branch 'u-boot-ti/master' into 'u-boot-arm/master'
Diffstat (limited to 'drivers/net/cpsw.c')
-rw-r--r--drivers/net/cpsw.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/net/cpsw.c b/drivers/net/cpsw.c
index 9bab71a21..39240d966 100644
--- a/drivers/net/cpsw.c
+++ b/drivers/net/cpsw.c
@@ -568,9 +568,14 @@ static void cpsw_set_slave_mac(struct cpsw_slave *slave,
static void cpsw_slave_update_link(struct cpsw_slave *slave,
struct cpsw_priv *priv, int *link)
{
- struct phy_device *phy = priv->phydev;
+ struct phy_device *phy;
u32 mac_control = 0;
+ phy = priv->phydev;
+
+ if (!phy)
+ return;
+
phy_startup(phy);
*link = phy->link;
@@ -947,6 +952,9 @@ static int cpsw_phy_init(struct eth_device *dev, struct cpsw_slave *slave)
dev,
slave->data->phy_if);
+ if (!phydev)
+ return -1;
+
phydev->supported &= supported;
phydev->advertising = phydev->supported;