public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH net-next v9 0/9] Add MACsec support for TJA11XX C45 PHYs
@ 2023-12-19 14:53 Radu Pirea (NXP OSS)
  2023-12-19 14:53 ` [PATCH net-next v9 1/9] net: rename dsa_realloc_skb to skb_ensure_writable_head_tail Radu Pirea (NXP OSS)
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: Radu Pirea (NXP OSS) @ 2023-12-19 14:53 UTC (permalink / raw)
  To: sd, davem, edumazet, kuba, pabeni, andrew, hkallweit1, linux,
	richardcochran
  Cc: linux-kernel, netdev, sebastian.tobuschat, andrei.botila,
	Radu Pirea (NXP OSS)

This is the MACsec support for TJA11XX PHYs. The MACsec block encrypts
the ethernet frames on the fly and has no buffering. This operation will
grow the frames by 32 bytes. If the frames are sent back to back, the
MACsec block will not have enough room to insert the SecTAG and the ICV
and the frames will be dropped.

To mitigate this, the PHY can parse a specific ethertype with some
padding bytes and replace them with the SecTAG and ICV. These padding
bytes might be dummy or might contain information about TX SC that must
be used to encrypt the frame.

Radu P.

Radu Pirea (NXP OSS) (9):
  net: rename dsa_realloc_skb to skb_ensure_writable_head_tail
  net: macsec: use skb_ensure_writable_head_tail to expand the skb
  net: macsec: move sci_to_cpu to macsec header
  net: macsec: documentation for macsec_context and macsec_ops
  net: macsec: revert the MAC address if mdo_upd_secy fails
  net: macsec: introduce mdo_insert_tx_tag
  net: phy: nxp-c45-tja11xx: add MACsec support
  net: phy: nxp-c45-tja11xx: add MACsec statistics
  net: phy: nxp-c45-tja11xx: implement mdo_insert_tx_tag

 MAINTAINERS                              |    2 +-
 drivers/net/macsec.c                     |  151 +-
 drivers/net/netdevsim/macsec.c           |    5 -
 drivers/net/phy/Kconfig                  |    3 +-
 drivers/net/phy/Makefile                 |    6 +-
 drivers/net/phy/nxp-c45-tja11xx-macsec.c | 1729 ++++++++++++++++++++++
 drivers/net/phy/nxp-c45-tja11xx.c        |   77 +-
 drivers/net/phy/nxp-c45-tja11xx.h        |   62 +
 include/linux/skbuff.h                   |    1 +
 include/net/macsec.h                     |   54 +
 net/core/skbuff.c                        |   25 +
 net/dsa/user.c                           |   29 +-
 12 files changed, 2043 insertions(+), 101 deletions(-)
 create mode 100644 drivers/net/phy/nxp-c45-tja11xx-macsec.c
 create mode 100644 drivers/net/phy/nxp-c45-tja11xx.h

-- 
2.34.1


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2023-12-27 13:10 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-12-19 14:53 [PATCH net-next v9 0/9] Add MACsec support for TJA11XX C45 PHYs Radu Pirea (NXP OSS)
2023-12-19 14:53 ` [PATCH net-next v9 1/9] net: rename dsa_realloc_skb to skb_ensure_writable_head_tail Radu Pirea (NXP OSS)
2023-12-19 14:53 ` [PATCH net-next v9 2/9] net: macsec: use skb_ensure_writable_head_tail to expand the skb Radu Pirea (NXP OSS)
2023-12-19 14:53 ` [PATCH net-next v9 3/9] net: macsec: move sci_to_cpu to macsec header Radu Pirea (NXP OSS)
2023-12-19 14:53 ` [PATCH net-next v9 4/9] net: macsec: documentation for macsec_context and macsec_ops Radu Pirea (NXP OSS)
2023-12-19 14:53 ` [PATCH net-next v9 5/9] net: macsec: revert the MAC address if mdo_upd_secy fails Radu Pirea (NXP OSS)
2023-12-19 14:53 ` [PATCH net-next v9 6/9] net: macsec: introduce mdo_insert_tx_tag Radu Pirea (NXP OSS)
2023-12-19 14:53 ` [PATCH net-next v9 7/9] net: phy: nxp-c45-tja11xx: add MACsec support Radu Pirea (NXP OSS)
2023-12-19 14:53 ` [PATCH net-next v9 8/9] net: phy: nxp-c45-tja11xx: add MACsec statistics Radu Pirea (NXP OSS)
2023-12-19 14:53 ` [PATCH net-next v9 9/9] net: phy: nxp-c45-tja11xx: implement mdo_insert_tx_tag Radu Pirea (NXP OSS)
2023-12-27 13:10 ` [PATCH net-next v9 0/9] Add MACsec support for TJA11XX C45 PHYs patchwork-bot+netdevbpf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox