Lines Matching refs:ss

3  * sun8i-ss-cipher.c - hardware cryptographic offloader for
21 #include "sun8i-ss.h"
124 struct sun8i_ss_dev *ss = op->ss;
130 struct sun8i_ss_flow *sf = &ss->flows[rctx->flow];
150 a = dma_map_single(ss->dev, sf->iv[i], ivsize, DMA_TO_DEVICE);
151 if (dma_mapping_error(ss->dev, a)) {
153 dev_err(ss->dev, "Cannot DMA MAP IV\n");
176 dma_unmap_single(ss->dev, rctx->p_iv[i], ivsize, DMA_TO_DEVICE);
187 struct sun8i_ss_dev *ss = op->ss;
191 struct sun8i_ss_flow *sf = &ss->flows[rctx->flow];
203 dev_dbg(ss->dev, "%s %s %u %x IV(%p %u) key=%u\n", __func__,
213 rctx->op_mode = ss->variant->op_mode[algt->ss_blockmode];
214 rctx->method = ss->variant->alg_cipher[algt->ss_algo_id];
217 rctx->p_key = dma_map_single(ss->dev, op->key, op->keylen, DMA_TO_DEVICE);
218 if (dma_mapping_error(ss->dev, rctx->p_key)) {
219 dev_err(ss->dev, "Cannot DMA MAP KEY\n");
231 nr_sgs = dma_map_sg(ss->dev, areq->src, nsgs, DMA_BIDIRECTIONAL);
233 dev_err(ss->dev, "Invalid sg number %d\n", nr_sgs);
239 nr_sgs = dma_map_sg(ss->dev, areq->src, nsgs, DMA_TO_DEVICE);
241 dev_err(ss->dev, "Invalid sg number %d\n", nr_sgs);
245 nr_sgd = dma_map_sg(ss->dev, areq->dst, nsgd, DMA_FROM_DEVICE);
247 dev_err(ss->dev, "Invalid sg number %d\n", nr_sgd);
262 dev_dbg(ss->dev, "%s total=%u SGS(%d %u off=%d) todo=%u\n", __func__,
270 dev_err(ss->dev, "remaining len %d\n", len);
284 dev_dbg(ss->dev, "%s total=%u SGD(%d %u off=%d) todo=%u\n", __func__,
292 dev_err(ss->dev, "remaining len %d\n", len);
297 err = sun8i_ss_run_task(ss, rctx, crypto_tfm_alg_name(areq->base.tfm));
301 dma_unmap_sg(ss->dev, areq->src, nsgs, DMA_BIDIRECTIONAL);
303 dma_unmap_sg(ss->dev, areq->src, nsgs, DMA_TO_DEVICE);
304 dma_unmap_sg(ss->dev, areq->dst, nsgd, DMA_FROM_DEVICE);
310 dma_unmap_single(ss->dev, rctx->p_iv[i], ivsize, DMA_TO_DEVICE);
325 dma_unmap_single(ss->dev, rctx->p_key, op->keylen, DMA_TO_DEVICE);
359 e = sun8i_ss_get_engine_number(op->ss);
360 engine = op->ss->flows[e].engine;
380 e = sun8i_ss_get_engine_number(op->ss);
381 engine = op->ss->flows[e].engine;
399 op->ss = algt->ss;
403 dev_err(op->ss->dev, "ERROR: Cannot allocate fallback for %s %ld\n",
415 err = pm_runtime_resume_and_get(op->ss->dev);
417 dev_err(op->ss->dev, "pm error %d\n", err);
433 pm_runtime_put_sync(op->ss->dev);
440 struct sun8i_ss_dev *ss = op->ss;
450 dev_dbg(ss->dev, "ERROR: Invalid keylen %u\n", keylen);
469 struct sun8i_ss_dev *ss = op->ss;
472 dev_dbg(ss->dev, "Invalid keylen %u\n", keylen);