stmmac: do not call fix_mac_speed if NULL
authorGiuseppe CAVALLARO <peppe.cavallaro@st.com>
Wed, 6 Jan 2010 23:07:16 +0000 (23:07 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 8 Jan 2010 01:06:08 +0000 (17:06 -0800)
On some platforms, fix_mac_speed is used for
configuring some sysconf registers according
to the working speed.
This patch fixes the fix_mac_speed invocation
that cannot be done if it is a NULL pointer.

Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/stmmac/stmmac_main.c

index a02006d..82ebbc0 100644 (file)
@@ -258,8 +258,9 @@ static void stmmac_adjust_link(struct net_device *dev)
                                } else {
                                        ctrl &= ~priv->mac_type->hw.link.port;
                                }
-                               priv->fix_mac_speed(priv->bsp_priv,
-                                                   phydev->speed);
+                               if (likely(priv->fix_mac_speed))
+                                       priv->fix_mac_speed(priv->bsp_priv,
+                                                           phydev->speed);
                                break;
                        default:
                                if (netif_msg_link(priv))