net: add a reference to MACsec ops in net_device
authorAntoine Tenart <antoine.tenart@bootlin.com>
Wed, 25 Mar 2020 12:52:31 +0000 (15:52 +0300)
committerDavid S. Miller <davem@davemloft.net>
Fri, 27 Mar 2020 03:17:36 +0000 (20:17 -0700)
This patch adds a reference to MACsec ops to the net_device structure,
allowing net device drivers to implement offloading operations for
MACsec.

Signed-off-by: Antoine Tenart <antoine.tenart@bootlin.com>
Signed-off-by: Mark Starovoytov <mstarovoitov@marvell.com>
Signed-off-by: Igor Russkikh <irusskikh@marvell.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/netdevice.h

index 654808b..b521500 100644 (file)
@@ -53,6 +53,8 @@ struct netpoll_info;
 struct device;
 struct phy_device;
 struct dsa_port;
+struct macsec_context;
+struct macsec_ops;
 
 struct sfp_bus;
 /* 802.11 specific */
@@ -1819,6 +1821,8 @@ enum netdev_priv_flags {
  *                             that follow this device when it is moved
  *                             to another network namespace.
  *
+ *     @macsec_ops:    MACsec offloading ops
+ *
  *     FIXME: cleanup struct net_device such that network protocol info
  *     moves out.
  */
@@ -2113,6 +2117,11 @@ struct net_device {
        unsigned                wol_enabled:1;
 
        struct list_head        net_notifier_list;
+
+#if IS_ENABLED(CONFIG_MACSEC)
+       /* MACsec management functions */
+       const struct macsec_ops *macsec_ops;
+#endif
 };
 #define to_net_dev(d) container_of(d, struct net_device, dev)