diff --git a/drivers/crypto/aspeed/aspeed-acry.c b/drivers/crypto/aspeed/aspeed-acry.c index 164c524015f0..1f77ebd73489 100644 --- a/drivers/crypto/aspeed/aspeed-acry.c +++ b/drivers/crypto/aspeed/aspeed-acry.c @@ -252,7 +252,7 @@ static int aspeed_acry_rsa_ctx_copy(struct aspeed_acry_dev *acry_dev, void *buf, enum aspeed_rsa_key_mode mode) { const u8 *src = xbuf; - u32 *dw_buf = (u32 *)buf; + __le32 *dw_buf = buf; int nbits, ndw; int i, j, idx; u32 data = 0; @@ -302,7 +302,7 @@ static int aspeed_acry_rsa_ctx_copy(struct aspeed_acry_dev *acry_dev, void *buf, static int aspeed_acry_rsa_transfer(struct aspeed_acry_dev *acry_dev) { struct akcipher_request *req = acry_dev->req; - u8 *sram_buffer = (u8 *)acry_dev->acry_sram; + u8 __iomem *sram_buffer = acry_dev->acry_sram; struct scatterlist *out_sg = req->dst; static u8 dram_buffer[ASPEED_ACRY_SRAM_MAX_LEN]; int leading_zero = 1; @@ -321,11 +321,11 @@ static int aspeed_acry_rsa_transfer(struct aspeed_acry_dev *acry_dev) for (j = ASPEED_ACRY_SRAM_MAX_LEN - 1; j >= 0; j--) { data_idx = acry_dev->data_byte_mapping[j]; - if (sram_buffer[data_idx] == 0 && leading_zero) { + if (readb(sram_buffer + data_idx) == 0 && leading_zero) { result_nbytes--; } else { leading_zero = 0; - dram_buffer[i] = sram_buffer[data_idx]; + dram_buffer[i] = readb(sram_buffer + data_idx); i++; } }