Lines Matching refs:slen
29 memzero_explicit(ctx->seed, ctx->slen); in sun8i_ce_prng_exit()
32 ctx->slen = 0; in sun8i_ce_prng_exit()
36 unsigned int slen) in sun8i_ce_prng_seed() argument
40 if (ctx->seed && ctx->slen != slen) { in sun8i_ce_prng_seed()
41 memzero_explicit(ctx->seed, ctx->slen); in sun8i_ce_prng_seed()
43 ctx->slen = 0; in sun8i_ce_prng_seed()
47 ctx->seed = kmalloc(slen, GFP_KERNEL | GFP_DMA); in sun8i_ce_prng_seed()
51 memcpy(ctx->seed, seed, slen); in sun8i_ce_prng_seed()
52 ctx->slen = slen; in sun8i_ce_prng_seed()
58 unsigned int slen, u8 *dst, unsigned int dlen) in sun8i_ce_prng_generate() argument
76 if (ctx->slen == 0) { in sun8i_ce_prng_generate()
82 todo = dlen + ctx->slen + PRNG_DATA_SIZE * 2; in sun8i_ce_prng_generate()
92 slen, dlen, todo, todo / PRNG_DATA_SIZE); in sun8i_ce_prng_generate()
99 dma_iv = dma_map_single(ce->dev, ctx->seed, ctx->slen, DMA_TO_DEVICE); in sun8i_ce_prng_generate()
153 dma_unmap_single(ce->dev, dma_iv, ctx->slen, DMA_TO_DEVICE); in sun8i_ce_prng_generate()
157 memcpy(ctx->seed, d + dlen, ctx->slen); in sun8i_ce_prng_generate()