Spdk/python/spdk/rpc
Konrad Sztyber b2454dfbcc accel: introduce platform drivers
The goal of a platform driver is to execute chained accel operations in
the most efficient way possible.  A driver is aware of the hardware
available on a platform and can execute several operations as a single
one.  For instance, if we want to do DMA and then encrypt the data, the
driver can do both at the same time, if the hardware is capable of doing
that.

Platform drivers aren't required to support all operations.  If a given
operation cannot be executed, the driver should notify accel to continue
processing a sequence, via spdk_accel_sequence_continue(), and that
operation will processed by a module assigned to its opcode.

It is required however, that all platform drivers support memory
domains, including the "virtual" accel domain.  A method for allocating
those buffers will be added in the following patches.

This patch only adds methods to register and select platorm drivers, but
doesn't change the way a sequnce is executed (i.e. it doesn't use the
driver to execute it).

Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com>
Change-Id: I97a0b07e264601ab3cf980735319fe8cea54d38e
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/16375
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Reviewed-by: Paul Luse <paul.e.luse@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
2023-02-13 13:52:06 +00:00
..
__init__.py ublk: add ublk target creation and destruction 2023-01-20 07:48:25 +00:00
accel.py accel: introduce platform drivers 2023-02-13 13:52:06 +00:00
app.py rpc: fix python style 2022-12-21 09:32:24 +00:00
bdev.py bdev/compress: Port to use accel_fw instead of compressdev 2023-01-20 10:26:21 +00:00
blobfs.py rpc: fix python style 2022-12-21 09:32:24 +00:00
client.py Add SPDX header to various files 2022-11-29 08:27:51 +00:00
cmd_parser.py Add SPDX header to various files 2022-11-29 08:27:51 +00:00
compressdev.py module/accel: Add compressDev accel_module 2023-01-19 11:16:01 +00:00
dpdk_cryptodev.py module/accel: Add accel_dpdk_cryptodev 2023-01-11 09:16:59 +00:00
dsa.py Add SPDX header to various files 2022-11-29 08:27:51 +00:00
env_dpdk.py rpc: fix python style 2022-12-21 09:32:24 +00:00
helpers.py Add SPDX header to various files 2022-11-29 08:27:51 +00:00
iaa.py Add SPDX header to various files 2022-11-29 08:27:51 +00:00
ioat.py Add SPDX header to various files 2022-11-29 08:27:51 +00:00
iobuf.py module/iobuf: introduce iobuf module 2022-12-16 09:06:07 +00:00
iscsi.py rpc: fix python style 2022-12-21 09:32:24 +00:00
log.py rpc: fix python style 2022-12-21 09:32:24 +00:00
lvol.py rpc: fix python style 2022-12-21 09:32:24 +00:00
mlx5.py module/accel: Add mlx5 accel module 2023-01-19 22:00:58 +00:00
nbd.py rpc: fix python style 2022-12-21 09:32:24 +00:00
notify.py rpc: fix python style 2022-12-21 09:32:24 +00:00
nvme.py rpc: fix python style 2022-12-21 09:32:24 +00:00
nvmf.py Add SPDX header to various files 2022-11-29 08:27:51 +00:00
pmem.py rpc: fix python style 2022-12-21 09:32:24 +00:00
sock.py rpc: fix python style 2022-12-21 09:32:24 +00:00
subsystem.py rpc: fix python style 2022-12-21 09:32:24 +00:00
trace.py rpc: fix python style 2022-12-21 09:32:24 +00:00
ublk.py ublk: add an rpc method to get current ublk devices 2023-01-20 07:48:25 +00:00
vfio_user.py rpc: fix python style 2022-12-21 09:32:24 +00:00
vhost.py virtio_blk: added virtio_blk_get_transports RPC 2023-01-19 10:30:26 +00:00
vmd.py Add SPDX header to various files 2022-11-29 08:27:51 +00:00