net: dsa: add support for mac_prepare() and mac_finish() calls
authorRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Thu, 25 May 2023 10:38:44 +0000 (11:38 +0100)
committerDavid S. Miller <davem@davemloft.net>
Fri, 26 May 2023 09:39:40 +0000 (10:39 +0100)
commitdd805cf3e80e038aeb06902399ce9bd6fafb4ff3
treea1afd38c7fa3c097b4f0c5762a2692f4eebe8da9
parent9b66ee06e5ca2698d0ba12a7ad7188cb724279e7
net: dsa: add support for mac_prepare() and mac_finish() calls

Add DSA support for the phylink mac_prepare() and mac_finish() calls.
These were introduced as part of the PCS support to allow MACs to
perform preparatory steps prior to configuration, and finalisation
steps after the MAC and PCS has been configured.

Introducing phylink_pcs support to the mv88e6xxx DSA driver needs some
code moved out of its mac_config() stage into the mac_prepare() and
mac_finish() stages, and this commit facilitates such code in DSA
drivers.

Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Reviewed-by: Simon Horman <simon.horman@corigine.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/dsa.h
net/dsa/port.c