136ab94a5b
Those symbols are declared in the library map but the prototypes are
missing the experimental tag.
Without it, existing users won't notice it is experimental.
Fixes: ec0dec44ec
("net/atlantic: enable MACsec configuration")
Cc: stable@dpdk.org
Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
103 lines
1.9 KiB
C
103 lines
1.9 KiB
C
/* SPDX-License-Identifier: BSD-3-Clause
|
|
* Copyright(c) 2018 Aquantia Corporation
|
|
*/
|
|
|
|
#include <rte_ethdev_driver.h>
|
|
|
|
#include "rte_pmd_atlantic.h"
|
|
#include "atl_ethdev.h"
|
|
|
|
|
|
int
|
|
rte_pmd_atl_macsec_enable(uint16_t port,
|
|
uint8_t encr, uint8_t repl_prot)
|
|
{
|
|
struct rte_eth_dev *dev;
|
|
|
|
RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
|
|
|
|
dev = &rte_eth_devices[port];
|
|
|
|
if (!is_atlantic_supported(dev))
|
|
return -ENOTSUP;
|
|
|
|
return atl_macsec_enable(dev, encr, repl_prot);
|
|
}
|
|
|
|
int
|
|
rte_pmd_atl_macsec_disable(uint16_t port)
|
|
{
|
|
struct rte_eth_dev *dev;
|
|
|
|
RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
|
|
|
|
dev = &rte_eth_devices[port];
|
|
|
|
if (!is_atlantic_supported(dev))
|
|
return -ENOTSUP;
|
|
|
|
return atl_macsec_disable(dev);
|
|
}
|
|
|
|
int
|
|
rte_pmd_atl_macsec_config_txsc(uint16_t port, uint8_t *mac)
|
|
{
|
|
struct rte_eth_dev *dev;
|
|
|
|
RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
|
|
|
|
dev = &rte_eth_devices[port];
|
|
|
|
if (!is_atlantic_supported(dev))
|
|
return -ENOTSUP;
|
|
|
|
return atl_macsec_config_txsc(dev, mac);
|
|
}
|
|
|
|
int
|
|
rte_pmd_atl_macsec_config_rxsc(uint16_t port, uint8_t *mac, uint16_t pi)
|
|
{
|
|
struct rte_eth_dev *dev;
|
|
|
|
RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
|
|
|
|
dev = &rte_eth_devices[port];
|
|
|
|
if (!is_atlantic_supported(dev))
|
|
return -ENOTSUP;
|
|
|
|
return atl_macsec_config_rxsc(dev, mac, pi);
|
|
}
|
|
|
|
int
|
|
rte_pmd_atl_macsec_select_txsa(uint16_t port, uint8_t idx, uint8_t an,
|
|
uint32_t pn, uint8_t *key)
|
|
{
|
|
struct rte_eth_dev *dev;
|
|
|
|
RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
|
|
|
|
dev = &rte_eth_devices[port];
|
|
|
|
if (!is_atlantic_supported(dev))
|
|
return -ENOTSUP;
|
|
|
|
return atl_macsec_select_txsa(dev, idx, an, pn, key);
|
|
}
|
|
|
|
int
|
|
rte_pmd_atl_macsec_select_rxsa(uint16_t port, uint8_t idx, uint8_t an,
|
|
uint32_t pn, uint8_t *key)
|
|
{
|
|
struct rte_eth_dev *dev;
|
|
|
|
RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
|
|
|
|
dev = &rte_eth_devices[port];
|
|
|
|
if (!is_atlantic_supported(dev))
|
|
return -ENOTSUP;
|
|
|
|
return atl_macsec_select_rxsa(dev, idx, an, pn, key);
|
|
}
|