[PATCH v3 2/2] staging: slicoss: fix different address space warnings: 64 bits

From: Sergio Paracuellos
Date: Thu Nov 17 2016 - 00:42:08 EST


This patch fix the following sparse warnings in slicoss driver:
warning: incorrect type in assignment (different address spaces)

This changes are for 64 bits.

Signed-off-by: Sergio Paracuellos <sergio.paracuellos@xxxxxxxxx>
---
drivers/staging/slicoss/slic.h | 9 +++++++++
1 file changed, 9 insertions(+)

diff --git a/drivers/staging/slicoss/slic.h b/drivers/staging/slicoss/slic.h
index d637ab1..63637ba 100644
--- a/drivers/staging/slicoss/slic.h
+++ b/drivers/staging/slicoss/slic.h
@@ -540,6 +540,7 @@ static inline void slic_flush_write(struct adapter *adapter)
ioread32(adapter->regs + SLIC_REG_HOSTID);
}

+#if BITS_PER_LONG == 32
static inline u64 slic_ioread64(void __iomem *mmio)
{
u64 low, high;
@@ -548,6 +549,14 @@ static inline u64 slic_ioread64(void __iomem *mmio)
high = ioread32(mmio + sizeof(u32));
return low | (high << 32);
}
+#elif BITS_PER_LONG == 64
+static inline u64 slic_ioread64(void __iomem *mmio)
+{
+ return readq(mmio);
+}
+#else
+#error BITS_PER_LONG must be 32 or 64
+#endif

#define UPDATE_STATS(largestat, newstat, oldstat) \
{ \
--
1.9.1