aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/crypto/atmel-aes.c
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2015-11-17 04:22:06 -0500
committerHerbert Xu <herbert@gondor.apana.org.au>2015-11-23 07:55:52 -0500
commit20ecae79e7aa7908810094e365e4c72a877fb87d (patch)
tree3b0b63b2799067be96836615c0cdceabeea2b624 /drivers/crypto/atmel-aes.c
parent08346170d4483d58b8971fe9ff2a1318fd93d121 (diff)
crypto: atmel - fix 64-bit warnings
The atmel AES driver assumes that 'int' and 'size_t' are the same type in multiple locations, which the compiler warns about when building it for 64-bit systems: In file included from ../drivers/crypto/atmel-aes.c:17:0: drivers/crypto/atmel-aes.c: In function 'atmel_aes_sg_copy': include/linux/kernel.h:724:17: warning: comparison of distinct pointer types lacks a cast drivers/crypto/atmel-aes.c:448:11: note: in expansion of macro 'min' drivers/crypto/atmel-aes.c: In function 'atmel_aes_crypt_dma_stop': include/linux/kern_levels.h:4:18: warning: format '%u' expects argument of type 'unsigned int', but argument 2 has type 'size_t {aka long unsigned int}' [-Wformat=] This changes the format strings to use the %z modifier when printing a size_t, and makes sure that we use the correct size_t type where needed. In case of sg_dma_len(), the type of the result depends on CONFIG_NEED_SG_DMA_LENGTH, so we have to use min_t to get it to work in all configurations. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Cyrille Pitchen <cyrille.pitchen@atmel.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/atmel-aes.c')
-rw-r--r--drivers/crypto/atmel-aes.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/crypto/atmel-aes.c b/drivers/crypto/atmel-aes.c
index fb16d812c8f5..bfb1f799bf56 100644
--- a/drivers/crypto/atmel-aes.c
+++ b/drivers/crypto/atmel-aes.c
@@ -184,7 +184,7 @@ static int atmel_aes_sg_length(struct ablkcipher_request *req,
184static int atmel_aes_sg_copy(struct scatterlist **sg, size_t *offset, 184static int atmel_aes_sg_copy(struct scatterlist **sg, size_t *offset,
185 void *buf, size_t buflen, size_t total, int out) 185 void *buf, size_t buflen, size_t total, int out)
186{ 186{
187 unsigned int count, off = 0; 187 size_t count, off = 0;
188 188
189 while (buflen && total) { 189 while (buflen && total) {
190 count = min((*sg)->length - *offset, total); 190 count = min((*sg)->length - *offset, total);
@@ -444,8 +444,8 @@ static int atmel_aes_crypt_dma_start(struct atmel_aes_dev *dd)
444 444
445 445
446 if (fast) { 446 if (fast) {
447 count = min(dd->total, sg_dma_len(dd->in_sg)); 447 count = min_t(size_t, dd->total, sg_dma_len(dd->in_sg));
448 count = min(count, sg_dma_len(dd->out_sg)); 448 count = min_t(size_t, count, sg_dma_len(dd->out_sg));
449 449
450 err = dma_map_sg(dd->dev, dd->in_sg, 1, DMA_TO_DEVICE); 450 err = dma_map_sg(dd->dev, dd->in_sg, 1, DMA_TO_DEVICE);
451 if (!err) { 451 if (!err) {
@@ -639,7 +639,7 @@ static int atmel_aes_crypt_dma_stop(struct atmel_aes_dev *dd)
639 dd->buf_out, dd->buflen, dd->dma_size, 1); 639 dd->buf_out, dd->buflen, dd->dma_size, 1);
640 if (count != dd->dma_size) { 640 if (count != dd->dma_size) {
641 err = -EINVAL; 641 err = -EINVAL;
642 pr_err("not all data converted: %u\n", count); 642 pr_err("not all data converted: %zu\n", count);
643 } 643 }
644 } 644 }
645 } 645 }
@@ -666,7 +666,7 @@ static int atmel_aes_buff_init(struct atmel_aes_dev *dd)
666 dd->dma_addr_in = dma_map_single(dd->dev, dd->buf_in, 666 dd->dma_addr_in = dma_map_single(dd->dev, dd->buf_in,
667 dd->buflen, DMA_TO_DEVICE); 667 dd->buflen, DMA_TO_DEVICE);
668 if (dma_mapping_error(dd->dev, dd->dma_addr_in)) { 668 if (dma_mapping_error(dd->dev, dd->dma_addr_in)) {
669 dev_err(dd->dev, "dma %d bytes error\n", dd->buflen); 669 dev_err(dd->dev, "dma %zd bytes error\n", dd->buflen);
670 err = -EINVAL; 670 err = -EINVAL;
671 goto err_map_in; 671 goto err_map_in;
672 } 672 }
@@ -674,7 +674,7 @@ static int atmel_aes_buff_init(struct atmel_aes_dev *dd)
674 dd->dma_addr_out = dma_map_single(dd->dev, dd->buf_out, 674 dd->dma_addr_out = dma_map_single(dd->dev, dd->buf_out,
675 dd->buflen, DMA_FROM_DEVICE); 675 dd->buflen, DMA_FROM_DEVICE);
676 if (dma_mapping_error(dd->dev, dd->dma_addr_out)) { 676 if (dma_mapping_error(dd->dev, dd->dma_addr_out)) {
677 dev_err(dd->dev, "dma %d bytes error\n", dd->buflen); 677 dev_err(dd->dev, "dma %zd bytes error\n", dd->buflen);
678 err = -EINVAL; 678 err = -EINVAL;
679 goto err_map_out; 679 goto err_map_out;
680 } 680 }