Lines Matching refs:ss
100 struct sun8i_ss_dev *ss = op->ss; in sun8i_ss_setup_ivs() local
106 struct sun8i_ss_flow *sf = &ss->flows[rctx->flow]; in sun8i_ss_setup_ivs()
126 a = dma_map_single(ss->dev, sf->iv[i], ivsize, DMA_TO_DEVICE); in sun8i_ss_setup_ivs()
127 if (dma_mapping_error(ss->dev, a)) { in sun8i_ss_setup_ivs()
129 dev_err(ss->dev, "Cannot DMA MAP IV\n"); in sun8i_ss_setup_ivs()
152 dma_unmap_single(ss->dev, rctx->p_iv[i], ivsize, DMA_TO_DEVICE); in sun8i_ss_setup_ivs()
163 struct sun8i_ss_dev *ss = op->ss; in sun8i_ss_cipher() local
167 struct sun8i_ss_flow *sf = &ss->flows[rctx->flow]; in sun8i_ss_cipher()
177 dev_dbg(ss->dev, "%s %s %u %x IV(%p %u) key=%u\n", __func__, in sun8i_ss_cipher()
187 rctx->op_mode = ss->variant->op_mode[algt->ss_blockmode]; in sun8i_ss_cipher()
188 rctx->method = ss->variant->alg_cipher[algt->ss_algo_id]; in sun8i_ss_cipher()
191 rctx->p_key = dma_map_single(ss->dev, op->key, op->keylen, DMA_TO_DEVICE); in sun8i_ss_cipher()
192 if (dma_mapping_error(ss->dev, rctx->p_key)) { in sun8i_ss_cipher()
193 dev_err(ss->dev, "Cannot DMA MAP KEY\n"); in sun8i_ss_cipher()
205 nr_sgs = dma_map_sg(ss->dev, areq->src, sg_nents(areq->src), in sun8i_ss_cipher()
208 dev_err(ss->dev, "Invalid sg number %d\n", nr_sgs); in sun8i_ss_cipher()
214 nr_sgs = dma_map_sg(ss->dev, areq->src, sg_nents(areq->src), in sun8i_ss_cipher()
217 dev_err(ss->dev, "Invalid sg number %d\n", nr_sgs); in sun8i_ss_cipher()
221 nr_sgd = dma_map_sg(ss->dev, areq->dst, sg_nents(areq->dst), in sun8i_ss_cipher()
224 dev_err(ss->dev, "Invalid sg number %d\n", nr_sgd); in sun8i_ss_cipher()
239 dev_dbg(ss->dev, "%s total=%u SGS(%d %u off=%d) todo=%u\n", __func__, in sun8i_ss_cipher()
247 dev_err(ss->dev, "remaining len %d\n", len); in sun8i_ss_cipher()
261 dev_dbg(ss->dev, "%s total=%u SGD(%d %u off=%d) todo=%u\n", __func__, in sun8i_ss_cipher()
269 dev_err(ss->dev, "remaining len %d\n", len); in sun8i_ss_cipher()
274 err = sun8i_ss_run_task(ss, rctx, crypto_tfm_alg_name(areq->base.tfm)); in sun8i_ss_cipher()
278 dma_unmap_sg(ss->dev, areq->src, nr_sgs, DMA_BIDIRECTIONAL); in sun8i_ss_cipher()
280 dma_unmap_sg(ss->dev, areq->src, nr_sgs, DMA_TO_DEVICE); in sun8i_ss_cipher()
281 dma_unmap_sg(ss->dev, areq->dst, nr_sgd, DMA_FROM_DEVICE); in sun8i_ss_cipher()
287 dma_unmap_single(ss->dev, rctx->p_iv[i], ivsize, DMA_TO_DEVICE); in sun8i_ss_cipher()
302 dma_unmap_single(ss->dev, rctx->p_key, op->keylen, DMA_TO_DEVICE); in sun8i_ss_cipher()
336 e = sun8i_ss_get_engine_number(op->ss); in sun8i_ss_skdecrypt()
337 engine = op->ss->flows[e].engine; in sun8i_ss_skdecrypt()
357 e = sun8i_ss_get_engine_number(op->ss); in sun8i_ss_skencrypt()
358 engine = op->ss->flows[e].engine; in sun8i_ss_skencrypt()
376 op->ss = algt->ss; in sun8i_ss_cipher_init()
380 dev_err(op->ss->dev, "ERROR: Cannot allocate fallback for %s %ld\n", in sun8i_ss_cipher_init()
389 dev_info(op->ss->dev, "Fallback for %s is %s\n", in sun8i_ss_cipher_init()
397 err = pm_runtime_resume_and_get(op->ss->dev); in sun8i_ss_cipher_init()
399 dev_err(op->ss->dev, "pm error %d\n", err); in sun8i_ss_cipher_init()
415 pm_runtime_put_sync(op->ss->dev); in sun8i_ss_cipher_exit()
422 struct sun8i_ss_dev *ss = op->ss; in sun8i_ss_aes_setkey() local
432 dev_dbg(ss->dev, "ERROR: Invalid keylen %u\n", keylen); in sun8i_ss_aes_setkey()
451 struct sun8i_ss_dev *ss = op->ss; in sun8i_ss_des3_setkey() local
454 dev_dbg(ss->dev, "Invalid keylen %u\n", keylen); in sun8i_ss_des3_setkey()