19/09/2022 14:15, sk...@marvell.com: > From: Jerin Jacob <jer...@marvell.com> > > NIC HW controllers often come with congestion management support on > various HW objects such as Rx queue depth or mempool queue depth. > > Also, it can support various modes of operation such as RED > (Random early discard), WRED etc on those HW objects. > > This patch adds a framework to express such modes(enum rte_cman_mode) > and introduce (enum rte_eth_cman_obj) to enumerate the different > objects where the modes can operate on. [...] > doc/guides/nics/features.rst | 12 +++ > doc/guides/nics/features/default.ini | 1 + > lib/eal/include/meson.build | 1 + > lib/eal/include/rte_cman.h | 55 ++++++++++ > lib/ethdev/ethdev_driver.h | 25 +++++ > lib/ethdev/meson.build | 1 + > lib/ethdev/rte_cman.c | 101 ++++++++++++++++++ > lib/ethdev/rte_ethdev.h | 151 +++++++++++++++++++++++++++ > lib/ethdev/version.map | 6 ++
I feel EAL is not the right place for CMAN definitions. After a discussion with Jerin, I understand we could use the same definitions in other API classes, not only ethdev. However I think this .h file should be better hosted in lib/ethdev/ with its own namespace rte_cman. Then other libs could include this rte_cman.h without having a strong dependency on ethdev. Deal?