Skip to content

Commit

Permalink
dpaa2-eth: fix an always true condition in dpaa2_mac_get_if_mode
Browse files Browse the repository at this point in the history
Convert the phy_mode() function to return the if_mode through an
argument, similar to the new form of of_get_phy_mode().
This will help with handling errors in a common manner and also will fix
an always true condition.

Fixes: 0c65b2b ("net: of_get_phy_mode: Change API to solve int/unit warnings")
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Ioana Ciornei authored and David S. Miller committed Nov 7, 2019
1 parent 90ce9f2 commit 226df3e
Showing 1 changed file with 10 additions and 5 deletions.
15 changes: 10 additions & 5 deletions drivers/net/ethernet/freescale/dpaa2/dpaa2-mac.c
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,19 @@
#define phylink_to_dpaa2_mac(config) \
container_of((config), struct dpaa2_mac, phylink_config)

static phy_interface_t phy_mode(enum dpmac_eth_if eth_if)
static int phy_mode(enum dpmac_eth_if eth_if, phy_interface_t *if_mode)
{
*if_mode = PHY_INTERFACE_MODE_NA;

switch (eth_if) {
case DPMAC_ETH_IF_RGMII:
return PHY_INTERFACE_MODE_RGMII;
*if_mode = PHY_INTERFACE_MODE_RGMII;
break;
default:
return -EINVAL;
}

return 0;
}

/* Caller must call of_node_put on the returned value */
Expand Down Expand Up @@ -51,11 +56,11 @@ static int dpaa2_mac_get_if_mode(struct device_node *node,
if (!err)
return if_mode;

if_mode = phy_mode(attr.eth_if);
if (if_mode >= 0)
err = phy_mode(attr.eth_if, &if_mode);
if (!err)
return if_mode;

return -ENODEV;
return err;
}

static bool dpaa2_mac_phy_mode_mismatch(struct dpaa2_mac *mac,
Expand Down

0 comments on commit 226df3e

Please sign in to comment.