Skip to content

Commit

Permalink
fsl/fman: check of_get_phy_mode() return value
Browse files Browse the repository at this point in the history
For unknown compatibles avoid crashing and default to SGMII.

Signed-off-by: Madalin Bucur <madalin.bucur@nxp.com>
  • Loading branch information
Madalin Bucur committed Oct 4, 2016
1 parent 4725619 commit 604104f
Showing 1 changed file with 6 additions and 4 deletions.
10 changes: 6 additions & 4 deletions drivers/net/ethernet/freescale/fman/mac.c
Original file line number Diff line number Diff line change
Expand Up @@ -663,6 +663,7 @@ static int mac_probe(struct platform_device *_of_dev)
const u8 *mac_addr;
u32 val;
u8 fman_id;
int phy_if;

dev = &_of_dev->dev;
mac_node = dev->of_node;
Expand Down Expand Up @@ -842,13 +843,14 @@ static int mac_probe(struct platform_device *_of_dev)
}

/* Get the PHY connection type */
priv->phy_if = of_get_phy_mode(mac_node);
if (priv->phy_if < 0) {
phy_if = of_get_phy_mode(mac_node);
if (phy_if < 0) {
dev_warn(dev,
"of_get_phy_mode() for %s failed. Defaulting to MII\n",
"of_get_phy_mode() for %s failed. Defaulting to SGMII\n",
mac_node->full_name);
priv->phy_if = PHY_INTERFACE_MODE_MII;
phy_if = PHY_INTERFACE_MODE_SGMII;
}
priv->phy_if = phy_if;

priv->speed = phy2speed[priv->phy_if];
priv->max_speed = priv->speed;
Expand Down

0 comments on commit 604104f

Please sign in to comment.