Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d4ece048 authored by Antoine Tenart's avatar Antoine Tenart Committed by Jinesh K. Jayakumar
Browse files

net: phy: add MACsec ops in phy_device



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.

Change-Id: Idd5f7b6f423b157c7a94c14bc2b3046c5c5a935b
Signed-off-by: default avatarAntoine Tenart <antoine.tenart@bootlin.com>
Git-commit: d80bc69f8508d5f82a51fedaa1afe69b2f18ba35
Git-repo: https://github.com/aquantia/linux-4.14-atlantic-forwarding


Signed-off-by: default avatarJinesh K. Jayakumar <jineshk@codeaurora.org>
parent bc0f2344
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -26,6 +26,10 @@
#include <linux/workqueue.h>
#include <linux/mod_devicetable.h>

#if IS_ENABLED(CONFIG_MACSEC)
#include <net/macsec.h>
#endif

#include <linux/atomic.h>

#define PHY_DEFAULT_FEATURES	(SUPPORTED_Autoneg | \
@@ -384,6 +388,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
@@ -479,6 +484,11 @@ struct phy_device {

	void (*phy_link_change)(struct phy_device *, bool up, bool do_carrier);
	void (*adjust_link)(struct net_device *dev);

#if IS_ENABLED(CONFIG_MACSEC)
	/* MACsec management functions */
	const struct macsec_ops *macsec_ops;
#endif
};
#define to_phy_device(d) container_of(to_mdio_device(d), \
				      struct phy_device, mdio)