mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-25 21:24:08 +08:00
crypto: marvell/cesa - use memcpy_fromio()/memcpy_toio()
Use the IO memcpy() functions when copying from/to MMIO memory. These locations were found via sparse. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
35622eae18
commit
0f3304dc18
@ -98,10 +98,10 @@ static void mv_cesa_ablkcipher_std_step(struct ablkcipher_request *req)
|
||||
|
||||
/* FIXME: only update enc_len field */
|
||||
if (!sreq->skip_ctx) {
|
||||
memcpy(engine->sram, &sreq->op, sizeof(sreq->op));
|
||||
memcpy_toio(engine->sram, &sreq->op, sizeof(sreq->op));
|
||||
sreq->skip_ctx = true;
|
||||
} else {
|
||||
memcpy(engine->sram, &sreq->op, sizeof(sreq->op.desc));
|
||||
memcpy_toio(engine->sram, &sreq->op, sizeof(sreq->op.desc));
|
||||
}
|
||||
|
||||
mv_cesa_set_int_mask(engine, CESA_SA_INT_ACCEL0_DONE);
|
||||
@ -145,8 +145,9 @@ static int mv_cesa_ablkcipher_process(struct crypto_async_request *req,
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
memcpy(ablkreq->info, engine->sram + CESA_SA_CRYPT_IV_SRAM_OFFSET,
|
||||
crypto_ablkcipher_ivsize(crypto_ablkcipher_reqtfm(ablkreq)));
|
||||
memcpy_fromio(ablkreq->info,
|
||||
engine->sram + CESA_SA_CRYPT_IV_SRAM_OFFSET,
|
||||
crypto_ablkcipher_ivsize(crypto_ablkcipher_reqtfm(ablkreq)));
|
||||
|
||||
return 0;
|
||||
}
|
||||
@ -181,7 +182,7 @@ mv_cesa_ablkcipher_std_prepare(struct ablkcipher_request *req)
|
||||
sreq->size = 0;
|
||||
sreq->offset = 0;
|
||||
mv_cesa_adjust_op(engine, &sreq->op);
|
||||
memcpy(engine->sram, &sreq->op, sizeof(sreq->op));
|
||||
memcpy_toio(engine->sram, &sreq->op, sizeof(sreq->op));
|
||||
}
|
||||
|
||||
static inline void mv_cesa_ablkcipher_prepare(struct crypto_async_request *req,
|
||||
|
@ -209,8 +209,8 @@ static void mv_cesa_ahash_std_step(struct ahash_request *req)
|
||||
size_t len;
|
||||
|
||||
if (creq->cache_ptr)
|
||||
memcpy(engine->sram + CESA_SA_DATA_SRAM_OFFSET, creq->cache,
|
||||
creq->cache_ptr);
|
||||
memcpy_toio(engine->sram + CESA_SA_DATA_SRAM_OFFSET,
|
||||
creq->cache, creq->cache_ptr);
|
||||
|
||||
len = min_t(size_t, req->nbytes + creq->cache_ptr - sreq->offset,
|
||||
CESA_SA_SRAM_PAYLOAD_SIZE);
|
||||
@ -251,10 +251,10 @@ static void mv_cesa_ahash_std_step(struct ahash_request *req)
|
||||
if (len + trailerlen > CESA_SA_SRAM_PAYLOAD_SIZE) {
|
||||
len &= CESA_HASH_BLOCK_SIZE_MSK;
|
||||
new_cache_ptr = 64 - trailerlen;
|
||||
memcpy(creq->cache,
|
||||
engine->sram +
|
||||
CESA_SA_DATA_SRAM_OFFSET + len,
|
||||
new_cache_ptr);
|
||||
memcpy_fromio(creq->cache,
|
||||
engine->sram +
|
||||
CESA_SA_DATA_SRAM_OFFSET + len,
|
||||
new_cache_ptr);
|
||||
} else {
|
||||
len += mv_cesa_ahash_pad_req(creq,
|
||||
engine->sram + len +
|
||||
@ -272,7 +272,7 @@ static void mv_cesa_ahash_std_step(struct ahash_request *req)
|
||||
mv_cesa_update_op_cfg(op, frag_mode, CESA_SA_DESC_CFG_FRAG_MSK);
|
||||
|
||||
/* FIXME: only update enc_len field */
|
||||
memcpy(engine->sram, op, sizeof(*op));
|
||||
memcpy_toio(engine->sram, op, sizeof(*op));
|
||||
|
||||
if (frag_mode == CESA_SA_DESC_CFG_FIRST_FRAG)
|
||||
mv_cesa_update_op_cfg(op, CESA_SA_DESC_CFG_MID_FRAG,
|
||||
@ -312,7 +312,7 @@ static void mv_cesa_ahash_std_prepare(struct ahash_request *req)
|
||||
|
||||
sreq->offset = 0;
|
||||
mv_cesa_adjust_op(engine, &creq->op_tmpl);
|
||||
memcpy(engine->sram, &creq->op_tmpl, sizeof(creq->op_tmpl));
|
||||
memcpy_toio(engine->sram, &creq->op_tmpl, sizeof(creq->op_tmpl));
|
||||
}
|
||||
|
||||
static void mv_cesa_ahash_step(struct crypto_async_request *req)
|
||||
|
Loading…
Reference in New Issue
Block a user