net: phylink: avoid oops during initialisation
If we intend to use PCS operations, mac_pcs_get_state() will not be implemented, so will be NULL. If we also intend to register the PCS operations in mac_prepare() or mac_config(), then this leads to an attempt to call NULL function pointer during phylink_start(). Avoid this, but we must report the link is down. Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
3b44c79360
commit
e859a60add
|
@ -535,8 +535,10 @@ static void phylink_mac_pcs_get_state(struct phylink *pl,
|
|||
|
||||
if (pl->pcs_ops)
|
||||
pl->pcs_ops->pcs_get_state(pl->pcs, state);
|
||||
else
|
||||
else if (pl->mac_ops->mac_pcs_get_state)
|
||||
pl->mac_ops->mac_pcs_get_state(pl->config, state);
|
||||
else
|
||||
state->link = 0;
|
||||
}
|
||||
|
||||
/* The fixed state is... fixed except for the link state,
|
||||
|
|
Loading…
Reference in New Issue