/linux/drivers/net/ |
H A D | macsec.c | 53 #define for_each_rxsc(secy, sc) \ argument 54 for (sc = rcu_dereference_bh(secy->rx_sc); \ 57 #define for_each_rxsc_rtnl(secy, sc) \ argument 58 for (sc = rtnl_dereference(secy->rx_sc); \ 100 struct macsec_secy secy; member 279 const struct macsec_secy *secy, u32 pn, in macsec_fill_sectag() argument 282 const struct macsec_tx_sc *tx_sc = &secy->tx_sc; in macsec_fill_sectag() 289 memcpy(&h->secure_channel_id, &secy->sci, in macsec_fill_sectag() 303 else if (secy->icv_len != MACSEC_DEFAULT_ICV_LEN) in macsec_fill_sectag() 435 static void __macsec_pn_wrapped(struct macsec_secy *secy, in __macsec_pn_wrapped() argument [all …]
|
/linux/drivers/net/phy/ |
H A D | nxp-c45-tja11xx-macsec.c | 192 struct macsec_secy *secy; member 378 if (pos->secy->sci == sci) in nxp_c45_find_secy() 493 u32 key_size = ctx->secy->key_len / 4; in nxp_c45_sa_set_key() 506 if (ctx->secy->xpn) { in nxp_c45_sa_set_key() 616 bool end_station = phy_secy->secy->tx_sc.end_station; in nxp_c45_secy_valid() 617 bool scb = phy_secy->secy->tx_sc.scb; in nxp_c45_secy_valid() 622 if (!nxp_c45_port_is_1(phy_secy->secy->sci)) in nxp_c45_secy_valid() 645 bool end_station = phy_secy->secy->tx_sc.end_station; in nxp_c45_rx_sc0_impl() 646 bool send_sci = phy_secy->secy->tx_sc.send_sci; in nxp_c45_rx_sc0_impl() 647 bool scb = phy_secy->secy->tx_sc.scb; in nxp_c45_rx_sc0_impl() [all …]
|
/linux/drivers/net/ethernet/aquantia/atlantic/ |
H A D | aq_macsec.c | 32 static int aq_clear_secy(struct aq_nic_s *nic, const struct macsec_secy *secy, 36 const struct macsec_secy *secy); 50 const struct macsec_secy *secy) in aq_get_txsc_idx_from_secy() argument 54 if (unlikely(!secy)) in aq_get_txsc_idx_from_secy() 58 if (macsec_cfg->aq_txsc[i].sw_secy == secy) in aq_get_txsc_idx_from_secy() 296 ret = aq_apply_secy_cfg(nic, ctx->secy); in aq_mdo_dev_open() 319 const struct macsec_secy *secy = aq_txsc->sw_secy; in aq_set_txsc() local 325 aq_ether_addr_to_mac(tx_class_rec.mac_sa, secy->netdev->dev_addr); in aq_set_txsc() 327 put_unaligned_be64((__force u64)secy->sci, tx_class_rec.sci); in aq_set_txsc() 343 sc_rec.protect = secy->protect_frames; in aq_set_txsc() [all …]
|
/linux/drivers/net/phy/mscc/ |
H A D | mscc_macsec.c | 429 if (priv->secy->replay_protect) in vsc8584_macsec_flow() 431 if (priv->secy->validate_frames == MACSEC_VALIDATE_STRICT) in vsc8584_macsec_flow() 433 else if (priv->secy->validate_frames == MACSEC_VALIDATE_CHECK) in vsc8584_macsec_flow() 436 if (priv->secy->protect_frames) in vsc8584_macsec_flow() 438 if (priv->secy->tx_sc.encrypt) in vsc8584_macsec_flow() 440 if (priv->secy->tx_sc.send_sci) in vsc8584_macsec_flow() 530 ret = vsc8584_macsec_derive_key(key, priv->secy->key_len, hkey); in vsc8584_macsec_transformation() 534 switch (priv->secy->key_len) { in vsc8584_macsec_transformation() 546 (CONTROL_TYPE_EGRESS | CONTROL_AN(priv->secy->tx_sc.encoding_sa)) : in vsc8584_macsec_transformation() 563 for (i = 0; i < priv->secy->key_len / sizeof(u32); i++) in vsc8584_macsec_transformation() [all …]
|
H A D | mscc.h | 387 struct macsec_secy *secy; member
|
/linux/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ |
H A D | macsec.c | 342 const struct macsec_tx_sc *tx_sc = &ctx->secy->tx_sc; in mlx5e_macsec_init_sa_fs() 386 obj_attrs.replay_window = ctx->secy->replay_window; in mlx5e_macsec_init_sa() 387 obj_attrs.replay_protect = ctx->secy->replay_protect; in mlx5e_macsec_init_sa() 433 mlx5e_macsec_cleanup_sa(macsec, rx_sa, false, ctx->secy->netdev, *fs_id); in macsec_rx_sa_active_update() 447 const struct macsec_secy *secy = ctx->secy; in mlx5e_macsec_secy_features_validate() local 449 if (secy->validate_frames != MACSEC_VALIDATE_STRICT) { in mlx5e_macsec_secy_features_validate() 455 if (secy->icv_len != MACSEC_DEFAULT_ICV_LEN) { in mlx5e_macsec_secy_features_validate() 461 if (!secy->protect_frames) { in mlx5e_macsec_secy_features_validate() 467 if (!ctx->secy->tx_sc.encrypt) { in mlx5e_macsec_secy_features_validate() 484 if (iter->netdev == ctx->secy->netdev) in mlx5e_macsec_get_macsec_device_context() [all …]
|
/linux/drivers/net/ethernet/marvell/octeontx2/af/ |
H A D | mcs.c | 310 for (id = 0; id < map->secy.max; id++) { in mcs_clear_all_stats() 317 for (id = 0; id < map->secy.max; id++) { in mcs_clear_all_stats() 406 void mcs_rx_sc_cam_write(struct mcs *mcs, u64 sci, u64 secy, int sc_id) in mcs_rx_sc_cam_write() argument 409 mcs_reg_write(mcs, MCSX_CPM_RX_SLAVE_SC_CAMX(1, sc_id), secy); in mcs_rx_sc_cam_write() 433 val = (map->secy & 0x7F) | (map->ctrl_pkt & 0x1) << 8; in cn10kb_mcs_flowid_secy_map() 514 __set_bit(secy_id, mcs->rx.secy.bmap); in mcs_install_flowid_bypass_entry() 515 __set_bit(secy_id, mcs->tx.secy.bmap); in mcs_install_flowid_bypass_entry() 530 map.secy = secy_id; in mcs_install_flowid_bypass_entry() 732 for (id = 0; id < map->secy.max; id++) { in mcs_free_all_rsrc() 735 mcs_free_rsrc(&map->secy, map->secy2pf_map, in mcs_free_all_rsrc() [all …]
|
H A D | mcs.h | 102 u8 secy; member 116 struct rsrc_bmap secy; member 191 void mcs_rx_sc_cam_write(struct mcs *mcs, u64 sci, u64 secy, int sc_id);
|
H A D | mcs_rvu_if.c | 615 map.secy = req->secy_id; in rvu_mbox_handler_mcs_flowid_entry_write() 659 rc = mcs_free_rsrc(&map->secy, map->secy2pf_map, req->rsrc_id, pcifunc); in rvu_mbox_handler_mcs_free_resources() 720 rsrc_id = mcs_alloc_rsrc(&map->secy, map->secy2pf_map, pcifunc); in rvu_mbox_handler_mcs_alloc_resources()
|
H A D | mcs_cnf10kb.c | 77 val = (map->secy & 0x3F) | (map->ctrl_pkt & 0x1) << 6; in cnf10kb_mcs_flowid_secy_map()
|