diff -aur a/src/drivers/net/e1000/e1000_phy.c b/src/drivers/net/e1000/e1000_phy.c --- a/src/drivers/net/e1000/e1000_phy.c 2016-05-12 19:40:13.950772568 +1000 +++ b/src/drivers/net/e1000/e1000_phy.c 2016-05-12 19:41:08.429089344 +1000 @@ -164,7 +164,7 @@ DEBUGFUNC("e1000_get_phy_id"); - if (!(phy->ops.read_reg)) + if (!(phy->ops.read_reg)) { goto out; ret_val = phy->ops.read_reg(hw, PHY_ID1, &phy_id); @@ -179,6 +179,7 @@ phy->id |= (u32)(phy_id & PHY_REVISION_MASK); phy->revision = (u32)(phy_id & ~PHY_REVISION_MASK); + } out: return ret_val;