summaryrefslogtreecommitdiff
path: root/net/dsa/port.c
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@armlinux.org.uk>2020-01-28 16:11:27 +0000
committerRussell King <rmk+kernel@armlinux.org.uk>2020-03-30 21:37:58 +0100
commit0df5a546d811b7c2dcd6be76655b4658f2b776f6 (patch)
tree2cfad1d645b596c0ea4271beffe58cf70495ecd4 /net/dsa/port.c
parentfca5a7db693c72590fe44e2dcd40f13b52cfa975 (diff)
net: phylink: propagate resolved link config via mac_link_up()
Propagate the resolved link parameters via the mac_link_up() call for MACs that do not automatically track their PCS state. We propagate the link parameters via function arguments so that inappropriate members of struct phylink_link_state can't be accessed, and creating a new structure just for this adds needless complexity to the API. Tested-by: Andre Przywara <andre.przywara@arm.com> Tested-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Tested-by: Vladimir Oltean <vladimir.oltean@nxp.com> Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Diffstat (limited to 'net/dsa/port.c')
-rw-r--r--net/dsa/port.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/net/dsa/port.c b/net/dsa/port.c
index ec13dc666788..bd67ec610198 100644
--- a/net/dsa/port.c
+++ b/net/dsa/port.c
@@ -513,9 +513,11 @@ static void dsa_port_phylink_mac_link_down(struct phylink_config *config,
}
static void dsa_port_phylink_mac_link_up(struct phylink_config *config,
+ struct phy_device *phydev,
unsigned int mode,
phy_interface_t interface,
- struct phy_device *phydev)
+ int speed, int duplex,
+ bool tx_pause, bool rx_pause)
{
struct dsa_port *dp = container_of(config, struct dsa_port, pl_config);
struct dsa_switch *ds = dp->ds;