net: phy: mscc: macsec initialization
authorAntoine Tenart <antoine.tenart@bootlin.com>
Mon, 13 Jan 2020 22:31:45 +0000 (23:31 +0100)
committerDavid S. Miller <davem@davemloft.net>
Tue, 14 Jan 2020 19:31:41 +0000 (11:31 -0800)
commit1bbe0ecc2a1a008bcfeb7fd2d8f95c8e9a1867c6
tree0a504e9e978862b8a2aafbb67d56ee00f010bbb2
parentdcb780fb279514f268826f2e9f4df3bc75610703
net: phy: mscc: macsec initialization

This patch adds support for initializing the MACsec engine found within
some Microsemi PHYs. The engine is initialized in a passthrough mode and
does not modify any incoming or outgoing packet. But thanks to this it
now can be configured to perform MACsec transformations on packets,
which will be supported by a future patch.

The MACsec read and write functions are wrapped into two versions: one
called during the init phase, and the other one later on. This is
because the init functions in the Microsemi PHY driver are called while
the MDIO bus lock is taken.

Signed-off-by: Antoine Tenart <antoine.tenart@bootlin.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/mscc.c
drivers/net/phy/mscc_fc_buffer.h [new file with mode: 0644]
drivers/net/phy/mscc_mac.h [new file with mode: 0644]
drivers/net/phy/mscc_macsec.h [new file with mode: 0644]