Hide RTE_ETH_NUM_RECEIVE_MAC_ADDR and RTE_ETH_VMDQ_NUM_UC_HASH_ARRAY in the driver API as those (ambiguous) macros are only a driver concern.
In practice, this is only used by the bnxt and ixgbe (+ clones) drivers. Signed-off-by: David Marchand <[email protected]> --- Changes since v2: - added an entry in release notes, --- doc/guides/rel_notes/release_26_07.rst | 3 +++ lib/ethdev/ethdev_driver.h | 8 +++++++- lib/ethdev/rte_ethdev.h | 6 ------ 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/doc/guides/rel_notes/release_26_07.rst b/doc/guides/rel_notes/release_26_07.rst index 3d2e71102b..b425e6f8cd 100644 --- a/doc/guides/rel_notes/release_26_07.rst +++ b/doc/guides/rel_notes/release_26_07.rst @@ -99,6 +99,9 @@ API Changes ``RTE_ETH_MQ_TX_VMDQ_ONLY``). * A check was added in ``rte_eth_dev_mac_addr_add`` to validate that the ``pool`` parameter is 0 when VMDq is not configured. + * The ``RTE_ETH_NUM_RECEIVE_MAC_ADDR`` and ``RTE_ETH_VMDQ_NUM_UC_HASH_ARRAY`` macros are VMDq + related and are sizes of internal arrays in ethdev that only drivers need to care about. + Those macros are moved to the driver only ethdev API. ABI Changes diff --git a/lib/ethdev/ethdev_driver.h b/lib/ethdev/ethdev_driver.h index 1255cd6f2c..a4e9cf5b90 100644 --- a/lib/ethdev/ethdev_driver.h +++ b/lib/ethdev/ethdev_driver.h @@ -119,6 +119,12 @@ struct __rte_cache_aligned rte_eth_dev { struct rte_eth_dev_sriov; struct rte_eth_dev_owner; +/* Definitions used for receive MAC address */ +#define RTE_ETH_NUM_RECEIVE_MAC_ADDR 128 /**< Maximum nb. of receive mac addr. */ + +/* Definitions used for unicast hash */ +#define RTE_ETH_VMDQ_NUM_UC_HASH_ARRAY 128 /**< Maximum nb. of UC hash array. */ + /** * @internal * The data part, with no function pointers, associated with each Ethernet @@ -153,7 +159,7 @@ struct __rte_cache_aligned rte_eth_dev_data { * The first entry (index zero) is the default address. */ struct rte_ether_addr *mac_addrs; - /** Bitmap associating MAC addresses to pools */ + /** Bitmap associating MAC addresses to VMDq pools */ uint64_t mac_pool_sel[RTE_ETH_NUM_RECEIVE_MAC_ADDR]; /** * Device Ethernet MAC addresses of hash filtering. diff --git a/lib/ethdev/rte_ethdev.h b/lib/ethdev/rte_ethdev.h index 0d8e2d0236..27d2ddc0c1 100644 --- a/lib/ethdev/rte_ethdev.h +++ b/lib/ethdev/rte_ethdev.h @@ -903,12 +903,6 @@ rte_eth_rss_hf_refine(uint64_t rss_hf) #define RTE_ETH_VLAN_ID_MAX 0x0FFF /**< VLAN ID is in lower 12 bits*/ /**@}*/ -/* Definitions used for receive MAC address */ -#define RTE_ETH_NUM_RECEIVE_MAC_ADDR 128 /**< Maximum nb. of receive mac addr. */ - -/* Definitions used for unicast hash */ -#define RTE_ETH_VMDQ_NUM_UC_HASH_ARRAY 128 /**< Maximum nb. of UC hash array. */ - /**@{@name VMDq Rx mode * @see rte_eth_vmdq_rx_conf.rx_mode */ -- 2.53.0

