crypto: sahara - fix 64-bit dma_addr_t compilation
authorArnd Bergmann <arnd@arndb.de>
Tue, 8 Dec 2015 15:23:51 +0000 (16:23 +0100)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 10 Dec 2015 14:39:48 +0000 (22:39 +0800)
The sahara hardware uses DMA descriptors with 32-bit addresses, but
dma_addr_t is variable size depending on whether we want to support
any devices that use 64-bit DMA addresses in hardware.
This means that the definition of the DMA descriptor structure is wrong,
and we helpfully get a compiler warning about them too:

drivers/crypto/sahara.c:423:372: warning: format '%x' expects argument of type 'unsigned int', but argument 4 has type 'dma_addr_t {aka long long unsigned int}' [-Wformat=]

This changes the definition of the sahara_hw_desc and sahara_hw_link
structures to only contain fixed-length members, which is required
to make the driver work on ARM LPAE mode, and avoids most of the
gcc warnings we get.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/sahara.c

index cc738f3592a3ba6397d4cd63e891d8f6c3b79958..38bf12ae5589ad09e53beab333c66d7a52942f9c 100644 (file)
 #define SAHARA_REG_IDAR                0x20
 
 struct sahara_hw_desc {
-       u32             hdr;
-       u32             len1;
-       dma_addr_t      p1;
-       u32             len2;
-       dma_addr_t      p2;
-       dma_addr_t      next;
+       u32     hdr;
+       u32     len1;
+       u32     p1;
+       u32     len2;
+       u32     p2;
+       u32     next;
 };
 
 struct sahara_hw_link {
-       u32             len;
-       dma_addr_t      p;
-       dma_addr_t      next;
+       u32     len;
+       u32     p;
+       u32     next;
 };
 
 struct sahara_ctx {