| /linux/drivers/crypto/qce/ |
| H A D | core.c | 43 struct qce_device *qce = data; in qce_unregister_algs() local 48 ops->unregister_algs(qce); in qce_unregister_algs() 52 static int devm_qce_register_algs(struct qce_device *qce) in devm_qce_register_algs() argument 59 ret = ops->register_algs(qce); in devm_qce_register_algs() 62 ops->unregister_algs(qce); in devm_qce_register_algs() 67 return devm_add_action_or_reset(qce->dev, qce_unregister_algs, qce); in devm_qce_register_algs() 87 static int qce_handle_queue(struct qce_device *qce, in qce_handle_queue() argument 93 scoped_guard(mutex, &qce->lock) { in qce_handle_queue() 95 ret = crypto_enqueue_request(&qce->queue, req); in qce_handle_queue() 98 if (qce->req) in qce_handle_queue() [all …]
|
| H A D | common.c | 21 static inline u32 qce_read(struct qce_device *qce, u32 offset) in qce_read() argument 23 return readl(qce->base + offset); in qce_read() 26 static inline void qce_write(struct qce_device *qce, u32 offset, u32 val) in qce_write() argument 28 writel(val, qce->base + offset); in qce_write() 31 static inline void qce_write_array(struct qce_device *qce, u32 offset, in qce_write_array() argument 37 qce_write(qce, offset + i * sizeof(u32), val[i]); in qce_write_array() 41 qce_clear_array(struct qce_device *qce, u32 offset, unsigned int len) in qce_clear_array() argument 46 qce_write(qce, offset + i * sizeof(u32), 0); in qce_clear_array() 49 static u32 qce_config_reg(struct qce_device *qce, int little) in qce_config_reg() argument 51 u32 beats = (qce->burst_size >> 3) - 1; in qce_config_reg() [all …]
|
| H A D | sha.c | 44 struct qce_device *qce = tmpl->qce; in qce_ahash_done() local 45 struct qce_result_dump *result = qce->dma.result_buf; in qce_ahash_done() 50 error = qce_dma_terminate_all(&qce->dma); in qce_ahash_done() 52 dev_dbg(qce->dev, "ahash dma termination error (%d)\n", error); in qce_ahash_done() 54 dma_unmap_sg(qce->dev, req->src, rctx->src_nents, DMA_TO_DEVICE); in qce_ahash_done() 55 dma_unmap_sg(qce->dev, &rctx->result_sg, 1, DMA_FROM_DEVICE); in qce_ahash_done() 64 error = qce_check_status(qce, &status); in qce_ahash_done() 66 dev_dbg(qce->dev, "ahash operation error (%x)\n", status); in qce_ahash_done() 73 qce->async_req_done(tmpl->qce, error); in qce_ahash_done() 82 struct qce_device *qce = tmpl->qce; in qce_ahash_async_req_handle() local [all …]
|
| H A D | skcipher.c | 34 struct qce_device *qce = tmpl->qce; in qce_skcipher_done() local 35 struct qce_result_dump *result_buf = qce->dma.result_buf; in qce_skcipher_done() 45 error = qce_dma_terminate_all(&qce->dma); in qce_skcipher_done() 47 dev_dbg(qce->dev, "skcipher dma termination error (%d)\n", in qce_skcipher_done() 51 dma_unmap_sg(qce->dev, rctx->src_sg, rctx->src_nents, dir_src); in qce_skcipher_done() 52 dma_unmap_sg(qce->dev, rctx->dst_sg, rctx->dst_nents, dir_dst); in qce_skcipher_done() 56 error = qce_check_status(qce, &status); in qce_skcipher_done() 58 dev_dbg(qce->dev, "skcipher operation error (%x)\n", status); in qce_skcipher_done() 61 qce->async_req_done(tmpl->qce, error); in qce_skcipher_done() 71 struct qce_device *qce = tmpl->qce; in qce_skcipher_async_req_handle() local [all …]
|
| H A D | aead.c | 31 struct qce_device *qce = tmpl->qce; in qce_aead_done() local 32 struct qce_result_dump *result_buf = qce->dma.result_buf; in qce_aead_done() 44 error = qce_dma_terminate_all(&qce->dma); in qce_aead_done() 46 dev_dbg(qce->dev, "aead dma termination error (%d)\n", in qce_aead_done() 49 dma_unmap_sg(qce->dev, rctx->src_sg, rctx->src_nents, dir_src); in qce_aead_done() 51 dma_unmap_sg(qce->dev, rctx->dst_sg, rctx->dst_nents, dir_dst); in qce_aead_done() 66 error = qce_check_status(qce, &status); in qce_aead_done() 68 dev_err(qce->dev, "aead operation error (%x)\n", status); in qce_aead_done() 88 qce->async_req_done(qce, error); in qce_aead_done() 96 struct qce_device *qce = tmpl->qce; in qce_aead_prepare_result_buf() local [all …]
|
| H A D | core.h | 45 int (*async_req_enqueue)(struct qce_device *qce, 47 void (*async_req_done)(struct qce_device *qce, int ret); 59 int (*register_algs)(struct qce_device *qce); 60 void (*unregister_algs)(struct qce_device *qce);
|
| H A D | common.h | 94 struct qce_device *qce; member 100 int qce_check_status(struct qce_device *qce, u32 *status); 101 void qce_get_version(struct qce_device *qce, u32 *major, u32 *minor, u32 *step);
|
| /linux/drivers/crypto/ |
| H A D | Makefile | 30 obj-$(CONFIG_CRYPTO_DEV_QCE) += qce/
|
| H A D | Kconfig | 647 qce at 256-bytes, 30% faster at 512, and about even at 768-bytes.
|
| /linux/arch/arm64/boot/dts/qcom/ |
| H A D | ipq9574.dtsi | 387 compatible = "qcom,ipq9574-qce", "qcom,ipq4019-qce", "qcom,qce";
|
| H A D | agatti.dtsi | 878 compatible = "qcom,qcm2290-qce", "qcom,ipq4019-qce", "qcom,qce";
|
| H A D | sm6115.dtsi | 877 compatible = "qcom,sm6115-qce", "qcom,ipq4019-qce", "qcom,qce";
|
| H A D | sm6350.dtsi | 1262 compatible = "qcom,sm6350-qce", "qcom,sm8150-qce", "qcom,qce";
|
| H A D | sm8350.dtsi | 1823 compatible = "qcom,sm8350-qce", "qcom,sm8150-qce", "qcom,qce";
|
| H A D | talos.dtsi | 1519 compatible = "qcom,qcs615-qce", "qcom,sm8150-qce", "qcom,qce";
|
| H A D | sm8750.dtsi | 2107 compatible = "qcom,sm8750-qce", "qcom,sm8150-qce", "qcom,qce";
|
| H A D | sm8450.dtsi | 5397 compatible = "qcom,sm8450-qce", "qcom,sm8150-qce", "qcom,qce";
|
| H A D | sm8250.dtsi | 2613 compatible = "qcom,sm8250-qce", "qcom,sm8150-qce", "qcom,qce";
|
| H A D | sm8550.dtsi | 2329 compatible = "qcom,sm8550-qce", "qcom,sm8150-qce", "qcom,qce";
|
| H A D | monaco.dtsi | 2737 compatible = "qcom,qcs8300-qce", "qcom,sm8150-qce", "qcom,qce";
|
| H A D | kodiak.dtsi | 2599 compatible = "qcom,sc7280-qce", "qcom,sm8150-qce", "qcom,qce";
|
| H A D | sm8650.dtsi | 4105 compatible = "qcom,sm8650-qce", "qcom,sm8150-qce", "qcom,qce";
|
| H A D | sm8150.dtsi | 2160 compatible = "qcom,sm8150-qce", "qcom,qce";
|
| H A D | lemans.dtsi | 2778 compatible = "qcom,sa8775p-qce", "qcom,sm8150-qce", "qcom,qce";
|
| H A D | hamoa.dtsi | 3886 compatible = "qcom,x1e80100-qce", "qcom,sm8150-qce", "qcom,qce";
|