/openbmc/linux/drivers/crypto/virtio/ |
H A D | virtio_crypto_core.c | 32 struct virtio_crypto *vcrypto = vq->vdev->priv; in virtcrypto_ctrlq_callback() local 37 spin_lock_irqsave(&vcrypto->ctrl_lock, flags); in virtcrypto_ctrlq_callback() 41 spin_unlock_irqrestore(&vcrypto->ctrl_lock, flags); in virtcrypto_ctrlq_callback() 43 spin_lock_irqsave(&vcrypto->ctrl_lock, flags); in virtcrypto_ctrlq_callback() 48 spin_unlock_irqrestore(&vcrypto->ctrl_lock, flags); in virtcrypto_ctrlq_callback() 51 int virtio_crypto_ctrl_vq_request(struct virtio_crypto *vcrypto, struct scatterlist *sgs[], in virtio_crypto_ctrl_vq_request() argument 60 spin_lock_irqsave(&vcrypto->ctrl_lock, flags); in virtio_crypto_ctrl_vq_request() 61 err = virtqueue_add_sgs(vcrypto->ctrl_vq, sgs, out_sgs, in_sgs, vc_ctrl_req, GFP_ATOMIC); in virtio_crypto_ctrl_vq_request() 63 spin_unlock_irqrestore(&vcrypto->ctrl_lock, flags); in virtio_crypto_ctrl_vq_request() 67 virtqueue_kick(vcrypto->ctrl_vq); in virtio_crypto_ctrl_vq_request() [all …]
|
H A D | virtio_crypto_mgr.c | 238 int virtcrypto_dev_start(struct virtio_crypto *vcrypto) in virtcrypto_dev_start() argument 240 if (virtio_crypto_skcipher_algs_register(vcrypto)) { in virtcrypto_dev_start() 245 if (virtio_crypto_akcipher_algs_register(vcrypto)) { in virtcrypto_dev_start() 247 virtio_crypto_skcipher_algs_unregister(vcrypto); in virtcrypto_dev_start() 264 void virtcrypto_dev_stop(struct virtio_crypto *vcrypto) in virtcrypto_dev_stop() argument 266 virtio_crypto_skcipher_algs_unregister(vcrypto); in virtcrypto_dev_stop() 267 virtio_crypto_akcipher_algs_unregister(vcrypto); in virtcrypto_dev_stop() 284 bool virtcrypto_algo_is_supported(struct virtio_crypto *vcrypto, in virtcrypto_algo_is_supported() argument 297 if (!(vcrypto->crypto_services & service_mask)) in virtcrypto_algo_is_supported() 303 algo_mask = vcrypto->cipher_algo_l; in virtcrypto_algo_is_supported() [all …]
|
H A D | virtio_crypto_skcipher_algs.c | 19 struct virtio_crypto *vcrypto; member 118 struct virtio_crypto *vcrypto = ctx->vcrypto; in virtio_crypto_alg_skcipher_init_session() local 169 err = virtio_crypto_ctrl_vq_request(vcrypto, sgs, num_out, num_in, vc_ctrl_req); in virtio_crypto_alg_skcipher_init_session() 198 struct virtio_crypto *vcrypto = ctx->vcrypto; in virtio_crypto_alg_skcipher_close_session() local 231 err = virtio_crypto_ctrl_vq_request(vcrypto, sgs, num_out, num_in, vc_ctrl_req); in virtio_crypto_alg_skcipher_close_session() 255 struct virtio_crypto *vcrypto = ctx->vcrypto; in virtio_crypto_alg_skcipher_init_sessions() local 257 if (keylen > vcrypto->max_cipher_key_len) { in virtio_crypto_alg_skcipher_init_sessions() 293 if (!ctx->vcrypto) { in virtio_crypto_skcipher_setkey() 296 struct virtio_crypto *vcrypto = in virtio_crypto_skcipher_setkey() local 299 if (!vcrypto) { in virtio_crypto_skcipher_setkey() [all …]
|
H A D | virtio_crypto_akcipher_algs.c | 28 struct virtio_crypto *vcrypto; member 112 struct virtio_crypto *vcrypto = ctx->vcrypto; in virtio_crypto_alg_akcipher_init_session() local 145 err = virtio_crypto_ctrl_vq_request(vcrypto, sgs, num_out, num_in, vc_ctrl_req); in virtio_crypto_alg_akcipher_init_session() 171 struct virtio_crypto *vcrypto = ctx->vcrypto; in virtio_crypto_alg_akcipher_close_session() local 200 err = virtio_crypto_ctrl_vq_request(vcrypto, sgs, num_out, num_in, vc_ctrl_req); in virtio_crypto_alg_akcipher_close_session() 225 struct virtio_crypto *vcrypto = ctx->vcrypto; in __virtio_crypto_akcipher_do_req() local 230 int node = dev_to_node(&vcrypto->vdev->dev); in __virtio_crypto_akcipher_do_req() 293 struct virtio_crypto *vcrypto = ctx->vcrypto; in virtio_crypto_rsa_do_req() local 301 GFP_KERNEL, dev_to_node(&vcrypto->vdev->dev)); in virtio_crypto_rsa_do_req() 332 struct virtio_crypto *vcrypto = ctx->vcrypto; in virtio_crypto_rsa_req() local [all …]
|
H A D | virtio_crypto_common.h | 127 int virtcrypto_dev_start(struct virtio_crypto *vcrypto); 128 void virtcrypto_dev_stop(struct virtio_crypto *vcrypto); 146 int virtio_crypto_skcipher_algs_register(struct virtio_crypto *vcrypto); 147 void virtio_crypto_skcipher_algs_unregister(struct virtio_crypto *vcrypto); 148 int virtio_crypto_akcipher_algs_register(struct virtio_crypto *vcrypto); 149 void virtio_crypto_akcipher_algs_unregister(struct virtio_crypto *vcrypto); 150 int virtio_crypto_ctrl_vq_request(struct virtio_crypto *vcrypto, struct scatterlist *sgs[],
|
/openbmc/qemu/hw/virtio/ |
H A D | virtio-crypto.c | 78 VirtIOCrypto *vcrypto = VIRTIO_CRYPTO(vdev); in virtio_crypto_cipher_session_helper() local 87 if (info->key_len > vcrypto->conf.max_cipher_key_len) { in virtio_crypto_cipher_session_helper() 111 virtio_crypto_create_sym_session(VirtIOCrypto *vcrypto, in virtio_crypto_create_sym_session() argument 118 VirtIODevice *vdev = VIRTIO_DEVICE(vcrypto); in virtio_crypto_create_sym_session() 158 if (sym_info->auth_key_len > vcrypto->conf.max_auth_key_len) { in virtio_crypto_create_sym_session() 192 return cryptodev_backend_create_session(vcrypto->cryptodev, &sreq->info, in virtio_crypto_create_sym_session() 197 virtio_crypto_create_asym_session(VirtIOCrypto *vcrypto, in virtio_crypto_create_asym_session() argument 203 VirtIODevice *vdev = VIRTIO_DEVICE(vcrypto); in virtio_crypto_create_asym_session() 247 return cryptodev_backend_create_session(vcrypto->cryptodev, &sreq->info, in virtio_crypto_create_asym_session() 252 virtio_crypto_handle_close_session(VirtIOCrypto *vcrypto, in virtio_crypto_handle_close_session() argument [all …]
|
H A D | virtio-crypto-pci.c | 49 VirtIOCryptoPCI *vcrypto = VIRTIO_CRYPTO_PCI(vpci_dev); in virtio_crypto_pci_realize() local 50 DeviceState *vdev = DEVICE(&vcrypto->vdev); in virtio_crypto_pci_realize() 52 if (vcrypto->vdev.conf.cryptodev == NULL) { in virtio_crypto_pci_realize()
|
/openbmc/qemu/backends/ |
H A D | cryptodev-vhost.c | 173 VirtIOCrypto *vcrypto = VIRTIO_CRYPTO(dev); in cryptodev_vhost_start() local 179 CryptoDevBackend *b = vcrypto->cryptodev; in cryptodev_vhost_start() 250 VirtIOCrypto *vcrypto = VIRTIO_CRYPTO(dev); in cryptodev_vhost_stop() local 251 CryptoDevBackend *b = vcrypto->cryptodev; in cryptodev_vhost_stop() 275 VirtIOCrypto *vcrypto = VIRTIO_CRYPTO(dev); in cryptodev_vhost_virtqueue_mask() local 276 CryptoDevBackend *b = vcrypto->cryptodev; in cryptodev_vhost_virtqueue_mask() 291 VirtIOCrypto *vcrypto = VIRTIO_CRYPTO(dev); in cryptodev_vhost_virtqueue_pending() local 292 CryptoDevBackend *b = vcrypto->cryptodev; in cryptodev_vhost_virtqueue_pending()
|
/openbmc/qemu/include/hw/virtio/ |
H A D | virtio-crypto.h | 74 struct VirtIOCrypto *vcrypto; member 81 struct VirtIOCrypto *vcrypto; member
|