Re: [PATCH net-next v2 5/9] net: phy: add MACsec ops in phy_device

From: Florian Fainelli
Date: Wed Aug 14 2019 - 19:15:09 EST


On 8/8/19 7:05 AM, Antoine Tenart wrote:
> This patch adds a reference to MACsec ops in the phy_device, to allow
> PHYs to support offloading MACsec operations. The phydev lock will be
> held while calling those helpers.
>
> Signed-off-by: Antoine Tenart <antoine.tenart@xxxxxxxxxxx>
> ---
> include/linux/phy.h | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/include/linux/phy.h b/include/linux/phy.h
> index 462b90b73f93..6947a19587e4 100644
> --- a/include/linux/phy.h
> +++ b/include/linux/phy.h
> @@ -22,6 +22,10 @@
> #include <linux/workqueue.h>
> #include <linux/mod_devicetable.h>
>
> +#ifdef CONFIG_MACSEC
> +#include <net/macsec.h>
> +#endif

#if IS_ENABLED(CONFIG_MACSEC)

> +
> #include <linux/atomic.h>
>
> #define PHY_DEFAULT_FEATURES (SUPPORTED_Autoneg | \
> @@ -345,6 +349,7 @@ struct phy_c45_device_ids {
> * attached_dev: The attached enet driver's device instance ptr
> * adjust_link: Callback for the enet controller to respond to
> * changes in the link state.
> + * macsec_ops: MACsec offloading ops.
> *
> * speed, duplex, pause, supported, advertising, lp_advertising,
> * and autoneg are used like in mii_if_info
> @@ -438,6 +443,11 @@ struct phy_device {
>
> void (*phy_link_change)(struct phy_device *, bool up, bool do_carrier);
> void (*adjust_link)(struct net_device *dev);
> +
> +#if defined(CONFIG_MACSEC)
> + /* MACsec management functions */
> + const struct macsec_ops *macsec_ops;
> +#endif

#if IS_ENABLED(CONFIG_MACSEC)

likewise.
--
Florian