aboutsummaryrefslogtreecommitdiff
path: root/drivers/crypto/intel/iaa/iaa_crypto_main.c
diff options
context:
space:
mode:
authorTom Zanussi <tom.zanussi@linux.intel.com>2023-12-05 15:25:22 -0600
committerHerbert Xu <herbert@gondor.apana.org.au>2023-12-15 17:52:53 +0800
commitaa8d18becc0c14aa3eb46d6d1b81450446e11b87 (patch)
tree6d1151732bff0c0174e27a1d209d3dbeb002daad /drivers/crypto/intel/iaa/iaa_crypto_main.c
parent786d0e7f183ac1c1aef1801c2110f7582f0a6a83 (diff)
downloadlinux-aa8d18becc0c14aa3eb46d6d1b81450446e11b87.tar.gz
linux-aa8d18becc0c14aa3eb46d6d1b81450446e11b87.tar.bz2
linux-aa8d18becc0c14aa3eb46d6d1b81450446e11b87.zip
dmaengine: idxd: add callback support for iaa crypto
Create a lightweight callback interface to allow idxd sub-drivers to be notified when work sent to idxd wqs has completed. For a sub-driver to be notified of work completion, it needs to: - Set the descriptor's 'Request Completion Interrupt' (IDXD_OP_FLAG_RCI) - Set the sub-driver desc_complete() callback when registering the sub-driver e.g.: struct idxd_device_driver my_drv = { .probe = my_probe, .desc_complete = my_complete, } - Set the sub-driver-specific context in the sub-driver's descriptor e.g: idxd_desc->crypto.req = req; idxd_desc->crypto.tfm = tfm; idxd_desc->crypto.src_addr = src_addr; idxd_desc->crypto.dst_addr = dst_addr; When the work completes and the completion irq fires, idxd will invoke the desc_complete() callback with pointers to the descriptor, context, and completion_type. Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Reviewed-by: Fenghua Yu <fenghua.yu@intel.com> Acked-by: Vinod Koul <vkoul@kernel.org> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/intel/iaa/iaa_crypto_main.c')
0 files changed, 0 insertions, 0 deletions