fhi_72: allow to provide dpdk_iova_mode to xran

In DPDK, IO Virtual Addresses (IOVA) refers to the memory addressing
scheme used for IO operations. The two IOVA modes supported by DPDK are:

- IOVA as Physical Address (PA): IO memory addresses correspond directly
  to physical addresses, no address translation required.
- IOVA as Virtual Address (VA): IO memory addresses align with user-space
  virtual addresses, requiring IOMMU to remap physical memory.

Previously, this was hardcoded to 0, to use IOVA as PA mode, with xRAN's
DPDK EAL initialization using the "--iova-mode=pa" flag.

This commit introduces a gNB configuration option to allow users to select
the desired IOVA mode. The default remains PA mode to
ensure backward compatibility.

Using IOVA VA mode allows DPDK to run without requiring SYS_ADMIN
capability in the docker container.
This commit is contained in:
Jaroslava Fiedlerova
2025-01-10 14:59:31 +01:00
parent f9bff3d6a0
commit df03c02a84
4 changed files with 42 additions and 1 deletions
+3
View File
@@ -146,6 +146,9 @@ on DPDK:
- `IPC_LOCK` (becomes mandatory with DPDK)
- `SYS_RESOURCE`
- `NET_RAW`
- `SYS_ADMIN`: This is required by DPDK when using IOVA PA (Physical Address)
mode to read `/proc/self/pagemaps`. However, if DPDK EAL is configured to use
IOVA VA (Virtual Address) mode, this capability is no longer required.
## Capabilities with UHD