diff options
author | Arnd Bergmann <arnd@arndb.de> | 2017-01-18 09:52:53 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-03-18 07:14:29 -0400 |
commit | 04275d2a8af3269e2b0e04512a6b261dd3245545 (patch) | |
tree | 6f326a68ab267d84646d3ad715ea23c1e2af5982 | |
parent | b7e968da04d77174477317b1b032be7f62ad856d (diff) |
bcm63xx_enet: avoid uninitialized variable warning
commit df384d435a5c034c735df3d9ea87a03172c59b56 upstream.
gcc-7 and probably earlier versions get confused by this function
and print a harmless warning:
drivers/net/ethernet/broadcom/bcm63xx_enet.c: In function 'bcm_enet_open':
drivers/net/ethernet/broadcom/bcm63xx_enet.c:1130:3: error: 'phydev' may be used uninitialized in this function [-Werror=maybe-uninitialized]
This adds an initialization for the 'phydev' variable when it is unused
and changes the check to test for that NULL pointer to make it clear
that we always pass a valid pointer here.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/net/ethernet/broadcom/bcm63xx_enet.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/ethernet/broadcom/bcm63xx_enet.c b/drivers/net/ethernet/broadcom/bcm63xx_enet.c index 537090952c45..08d91efceed0 100644 --- a/drivers/net/ethernet/broadcom/bcm63xx_enet.c +++ b/drivers/net/ethernet/broadcom/bcm63xx_enet.c | |||
@@ -913,6 +913,8 @@ static int bcm_enet_open(struct net_device *dev) | |||
913 | priv->old_link = 0; | 913 | priv->old_link = 0; |
914 | priv->old_duplex = -1; | 914 | priv->old_duplex = -1; |
915 | priv->old_pause = -1; | 915 | priv->old_pause = -1; |
916 | } else { | ||
917 | phydev = NULL; | ||
916 | } | 918 | } |
917 | 919 | ||
918 | /* mask all interrupts and request them */ | 920 | /* mask all interrupts and request them */ |
@@ -1083,7 +1085,7 @@ static int bcm_enet_open(struct net_device *dev) | |||
1083 | enet_dmac_writel(priv, priv->dma_chan_int_mask, | 1085 | enet_dmac_writel(priv, priv->dma_chan_int_mask, |
1084 | ENETDMAC_IRMASK, priv->tx_chan); | 1086 | ENETDMAC_IRMASK, priv->tx_chan); |
1085 | 1087 | ||
1086 | if (priv->has_phy) | 1088 | if (phydev) |
1087 | phy_start(phydev); | 1089 | phy_start(phydev); |
1088 | else | 1090 | else |
1089 | bcm_enet_adjust_link(dev); | 1091 | bcm_enet_adjust_link(dev); |
@@ -1126,7 +1128,7 @@ out_freeirq: | |||
1126 | free_irq(dev->irq, dev); | 1128 | free_irq(dev->irq, dev); |
1127 | 1129 | ||
1128 | out_phy_disconnect: | 1130 | out_phy_disconnect: |
1129 | if (priv->has_phy) | 1131 | if (phydev) |
1130 | phy_disconnect(phydev); | 1132 | phy_disconnect(phydev); |
1131 | 1133 | ||
1132 | return ret; | 1134 | return ret; |