Lines Matching refs:ce
3 * sun8i-ce-prng.c - hardware cryptographic offloader for
12 #include "sun8i-ce.h"
61 struct sun8i_ce_dev *ce;
72 ce = algt->ce;
75 dev_err(ce->dev, "not seeded\n");
89 dev_dbg(ce->dev, "%s PRNG slen=%u dlen=%u todo=%u multi=%u\n", __func__,
97 dma_iv = dma_map_single(ce->dev, ctx->seed, ctx->slen, DMA_TO_DEVICE);
98 if (dma_mapping_error(ce->dev, dma_iv)) {
99 dev_err(ce->dev, "Cannot DMA MAP IV\n");
104 dma_dst = dma_map_single(ce->dev, d, todo, DMA_FROM_DEVICE);
105 if (dma_mapping_error(ce->dev, dma_dst)) {
106 dev_err(ce->dev, "Cannot DMA MAP DST\n");
111 err = pm_runtime_resume_and_get(ce->dev);
115 mutex_lock(&ce->rnglock);
116 chan = &ce->chanlist[flow];
122 common = ce->variant->prng | CE_COMM_INT;
126 if (ce->variant->prng_t_dlen_in_bytes)
140 ce->chanlist[flow].timeout = 2000;
142 err = sun8i_ce_run_task(ce, 3, "PRNG");
143 mutex_unlock(&ce->rnglock);
145 pm_runtime_put(ce->dev);
148 dma_unmap_single(ce->dev, dma_dst, todo, DMA_FROM_DEVICE);
150 dma_unmap_single(ce->dev, dma_iv, ctx->slen, DMA_TO_DEVICE);