Change-Id: If0af5f10e1143c7d02b5275f0f9b36a13ec0c312 Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
964 B
SPDK Porting Guide
SPDK is ported to new environments by implementing the env
library interface. The env interface provides APIs for drivers
to allocate physically contiguous and pinned memory, perform PCI
operations (config cycles and mapping BARs), virtual to physical
address translation and managing memory pools. The env API is
defined in [include/spdk/env.h](include/spdk/env.h)
.
SPDK includes a default implementation of the env library based
on the Data Plane Development Kit (DPDK).
This DPDK implementation can be found in lib/env
. DPDK is
currently supported on Linux and FreeBSD only.
Users who want to use SPDK on other operating system, or in userspace driver frameworks other than DPDK, will need to implement a new version of the env library. The new implementation can be integrated into the SPDK build by updating the following line in CONFIG:
CONFIG_ENV?=$(SPDK_ROOT_DIR)/lib/env