#
4851ef2b |
| 28-Jul-2022 |
David Marchand <david.marchand@redhat.com> |
bus/vdev: make driver-only headers private
The vdev bus interface is for drivers only. Mark as internal and move the header in the driver headers list.
While at it, cleanup the code: - fix indentat
bus/vdev: make driver-only headers private
The vdev bus interface is for drivers only. Mark as internal and move the header in the driver headers list.
While at it, cleanup the code: - fix indentation, - remove unneeded reference to bus specific singleton object, - remove unneeded list head structure type, - reorder the definitions and macro manipulating the bus singleton object, - remove inclusion of rte_bus.h and fix the code that relied on implicit inclusion,
Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Rosen Xu <rosen.xu@intel.com> Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
show more ...
|
#
7be78d02 |
| 29-Nov-2021 |
Josh Soref <jsoref@gmail.com> |
fix spelling in comments and strings
The tool comes from https://github.com/jsoref
Signed-off-by: Josh Soref <jsoref@gmail.com> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
|
#
f1f6ebc0 |
| 24-Aug-2021 |
William Tu <u9012063@gmail.com> |
eal: remove sys/queue.h from public headers
Currently there are some public headers that include 'sys/queue.h', which is not POSIX, but usually provided by the Linux/BSD system library. (Not in POSI
eal: remove sys/queue.h from public headers
Currently there are some public headers that include 'sys/queue.h', which is not POSIX, but usually provided by the Linux/BSD system library. (Not in POSIX.1, POSIX.1-2001, or POSIX.1-2008. Present on the BSDs.) The file is missing on Windows. During the Windows build, DPDK uses a bundled copy, so building a DPDK library works fine. But when OVS or other applications use DPDK as a library, because some DPDK public headers include 'sys/queue.h', on Windows, it triggers an error due to no such file.
One solution is to install the 'lib/eal/windows/include/sys/queue.h' into Windows environment, such as [1]. However, this means DPDK exports the functionalities of 'sys/queue.h' into the environment, which might cause symbols, macros, headers clashing with other applications.
The patch fixes it by removing the "#include <sys/queue.h>" from DPDK public headers, so programs including DPDK headers don't depend on the system to provide 'sys/queue.h'. When these public headers use macros such as TAILQ_xxx, we replace it by the ones with RTE_ prefix. For Windows, we copy the definitions from <sys/queue.h> to rte_os.h in Windows EAL. Note that these RTE_ macros are compatible with <sys/queue.h>, both at the level of API (to use with <sys/queue.h> macros in C files) and ABI (to avoid breaking it).
Additionally, the TAILQ_FOREACH_SAFE is not part of <sys/queue.h>, the patch replaces it with RTE_TAILQ_FOREACH_SAFE.
[1] http://mails.dpdk.org/archives/dev/2021-August/216304.html
Suggested-by: Nick Connolly <nick.connolly@mayadata.io> Suggested-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> Signed-off-by: William Tu <u9012063@gmail.com> Acked-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> Acked-by: Narcisa Vasile <navasile@linux.microsoft.com>
show more ...
|
#
8d935fff |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
bus/vdev: add driver IOVA VA mode requirement
This patch adds driver flag in vdev bus driver so that vdev drivers can require VA IOVA mode to be used, which for example the case of Virtio-user PMD.
bus/vdev: add driver IOVA VA mode requirement
This patch adds driver flag in vdev bus driver so that vdev drivers can require VA IOVA mode to be used, which for example the case of Virtio-user PMD.
The patch implements the .get_iommu_class() callback, that is called before devices probing to determine the IOVA mode to be used, and adds a check right before the device is probed to ensure compatible IOVA mode has been selected.
It also adds a ABI exception rule to accommodate with an update on the driver registration API
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Acked-by: David Marchand <david.marchand@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
#
2d9b1272 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
bus/vdev: add helper to get vdev from ethdev
This patch adds an helper macro to get the rte_vdev_device pointer from a rte_eth_dev pointer.
This is similar to RTE_ETH_DEV_TO_PCI().
Signed-off-by:
bus/vdev: add helper to get vdev from ethdev
This patch adds an helper macro to get the rte_vdev_device pointer from a rte_eth_dev pointer.
This is similar to RTE_ETH_DEV_TO_PCI().
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com> Reviewed-by: David Marchand <david.marchand@redhat.com>
show more ...
|
#
6a2288ed |
| 29-Sep-2020 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
bus/vdev: add DMA mapping ops
Add DMA map/unmap operation callbacks to the vdev bus, which could be used by DMA capable vdev drivers.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Rev
bus/vdev: add DMA mapping ops
Add DMA map/unmap operation callbacks to the vdev bus, which could be used by DMA capable vdev drivers.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
#
71ee0b90 |
| 23-Jun-2020 |
Muhammad Bilal <m.bilal@emumba.com> |
bus/vdev: fix a typo in doxygen comment
While uninitalizing the driver, the comment was mentioning initialized instead of uninitalized in description of parameter.
Fixes: 0fe11ec592b2 ("eal: add vd
bus/vdev: fix a typo in doxygen comment
While uninitalizing the driver, the comment was mentioning initialized instead of uninitalized in description of parameter.
Fixes: 0fe11ec592b2 ("eal: add vdev init and uninit") Cc: stable@dpdk.org
Signed-off-by: Muhammad Bilal <m.bilal@emumba.com>
show more ...
|
#
42490f38 |
| 26-Jun-2019 |
Aideen McLoughlin <aideen.mcloughlin@intel.com> |
doc: add vdev doxygen
The APIs in the rte_bus_vdev.h file were not part of the API documentation. I added this header file to the doxygen config file with the name vdev.
Signed-off-by: Aideen McLou
doc: add vdev doxygen
The APIs in the rte_bus_vdev.h file were not part of the API documentation. I added this header file to the doxygen config file with the name vdev.
Signed-off-by: Aideen McLoughlin <aideen.mcloughlin@intel.com> Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
show more ...
|
#
f8e99896 |
| 18-Jun-2018 |
Thomas Monjalon <thomas@monjalon.net> |
remove useless constructor headers
A constructor is usually declared with RTE_INIT* macros. As it is a static function, no need to declare before its definition. The macro is used directly in the fu
remove useless constructor headers
A constructor is usually declared with RTE_INIT* macros. As it is a static function, no need to declare before its definition. The macro is used directly in the function definition.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
show more ...
|
#
3701b792 |
| 27-Apr-2018 |
Gaetan Rivet <gaetan.rivet@6wind.com> |
bus/vdev: fix find device implementation
If start is set and a device before it matches the data, this device is returned.
This induces potentially infinite loops.
Fixes: c7fe1eea8a74 ("bus: simpl
bus/vdev: fix find device implementation
If start is set and a device before it matches the data, this device is returned.
This induces potentially infinite loops.
Fixes: c7fe1eea8a74 ("bus: simplify finding starting point") Cc: stable@dpdk.org
Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
show more ...
|
#
27d8b826 |
| 09-Apr-2018 |
Jan Viktorin <viktorin@rehivetech.com> |
use SPDX tag for RehiveTech copyright files
Replace the BSD license header with the SPDX tag for files with only an RehiveTech copyright on them.
Signed-off-by: Jan Viktorin <viktorin@rehivetech.co
use SPDX tag for RehiveTech copyright files
Replace the BSD license header with the SPDX tag for files with only an RehiveTech copyright on them.
Signed-off-by: Jan Viktorin <viktorin@rehivetech.com> Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
show more ...
|
#
3b792ed9 |
| 01-Dec-2017 |
Thomas Monjalon <thomas@monjalon.net> |
bus/vdev: add custom scan hook
The scan callback allows to spawn a vdev automatically given some custom scan rules. It is especially useful to create a TAP device automatically connected to a netdev
bus/vdev: add custom scan hook
The scan callback allows to spawn a vdev automatically given some custom scan rules. It is especially useful to create a TAP device automatically connected to a netdevice as remote.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Jianfeng Tan <jianfeng.tan@intel.com>
show more ...
|
#
d4a586d2 |
| 07-Nov-2017 |
Jianfeng Tan <jianfeng.tan@intel.com> |
bus/vdev: move code from EAL into a new driver
Move the vdev bus from lib/librte_eal to drivers/bus.
As the crypto vdev helper function refers to data structure in rte_vdev.h, so we move those help
bus/vdev: move code from EAL into a new driver
Move the vdev bus from lib/librte_eal to drivers/bus.
As the crypto vdev helper function refers to data structure in rte_vdev.h, so we move those helper function into drivers/bus too.
Signed-off-by: Jianfeng Tan <jianfeng.tan@intel.com>
show more ...
|