diff options
author | H Hartley Sweeten <hartleys@visionengravers.com> | 2012-09-20 04:06:47 +0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-09-21 20:26:20 +0400 |
commit | 5743aaac2938eb841e14879b0f73afb7fca6f0ad (patch) | |
tree | d01c088c049535280da0d466e03e24bb86652c5d /drivers/staging/comedi | |
parent | 1f5cc359158772304a92ee9c5682ca83416d2ba8 (diff) | |
download | linux-5743aaac2938eb841e14879b0f73afb7fca6f0ad.tar.xz |
staging: comedi: 8253: mmio address is a void __iomem *
The inline functions for accessing a memory mapped 8254 device
are using a void * for the 'base_address' of the device. Memory
mapped io using the read/write functions should be using a
void __iomem * for the address.
Fixing these exposed a couple other void * / void __iomem *
issues in the ni_labpc driver.
This fixes a number of sparse warnings like:
warning: incorrect type in argument 2 (different address spaces)
expected void volatile [noderef] <asn:2>*addr
got void *
warning: incorrect type in argument 1 (different address spaces)
expected void const volatile [noderef] <asn:2>*addr
got void *<noident>
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/comedi')
-rw-r--r-- | drivers/staging/comedi/drivers/8253.h | 15 | ||||
-rw-r--r-- | drivers/staging/comedi/drivers/ni_labpc.c | 12 |
2 files changed, 15 insertions, 12 deletions
diff --git a/drivers/staging/comedi/drivers/8253.h b/drivers/staging/comedi/drivers/8253.h index 3eb45d46e05b..429e0d60c0a3 100644 --- a/drivers/staging/comedi/drivers/8253.h +++ b/drivers/staging/comedi/drivers/8253.h @@ -262,8 +262,10 @@ static inline int i8254_load(unsigned long base_address, unsigned int regshift, return 0; } -static inline int i8254_mm_load(void *base_address, unsigned int regshift, - unsigned int counter_number, unsigned int count, +static inline int i8254_mm_load(void __iomem *base_address, + unsigned int regshift, + unsigned int counter_number, + unsigned int count, unsigned int mode) { unsigned int byte; @@ -311,7 +313,8 @@ static inline int i8254_read(unsigned long base_address, unsigned int regshift, return ret; } -static inline int i8254_mm_read(void *base_address, unsigned int regshift, +static inline int i8254_mm_read(void __iomem *base_address, + unsigned int regshift, unsigned int counter_number) { unsigned int byte; @@ -348,7 +351,7 @@ static inline void i8254_write(unsigned long base_address, outb(byte, base_address + (counter_number << regshift)); } -static inline void i8254_mm_write(void *base_address, +static inline void i8254_mm_write(void __iomem *base_address, unsigned int regshift, unsigned int counter_number, unsigned int count) @@ -390,7 +393,7 @@ static inline int i8254_set_mode(unsigned long base_address, return 0; } -static inline int i8254_mm_set_mode(void *base_address, +static inline int i8254_mm_set_mode(void __iomem *base_address, unsigned int regshift, unsigned int counter_number, unsigned int mode) @@ -419,7 +422,7 @@ static inline int i8254_status(unsigned long base_address, return inb(base_address + (counter_number << regshift)); } -static inline int i8254_mm_status(void *base_address, +static inline int i8254_mm_status(void __iomem *base_address, unsigned int regshift, unsigned int counter_number) { diff --git a/drivers/staging/comedi/drivers/ni_labpc.c b/drivers/staging/comedi/drivers/ni_labpc.c index 295ddbb4d586..2d060b5cc1b7 100644 --- a/drivers/staging/comedi/drivers/ni_labpc.c +++ b/drivers/staging/comedi/drivers/ni_labpc.c @@ -409,12 +409,12 @@ static inline void labpc_outb(unsigned int byte, unsigned long address) static inline unsigned int labpc_readb(unsigned long address) { - return readb((void *)address); + return readb((void __iomem *)address); } static inline void labpc_writeb(unsigned int byte, unsigned long address) { - writeb(byte, (void *)address); + writeb(byte, (void __iomem *)address); } static const struct labpc_board_struct labpc_boards[] = { @@ -494,8 +494,8 @@ static inline int labpc_counter_load(struct comedi_device *dev, unsigned int count, unsigned int mode) { if (thisboard->memory_mapped_io) - return i8254_mm_load((void *)base_address, 0, counter_number, - count, mode); + return i8254_mm_load((void __iomem *)base_address, 0, + counter_number, count, mode); else return i8254_load(base_address, 0, counter_number, count, mode); } @@ -1896,10 +1896,10 @@ static int labpc_dio_mem_callback(int dir, int port, int data, unsigned long iobase) { if (dir) { - writeb(data, (void *)(iobase + port)); + writeb(data, (void __iomem *)(iobase + port)); return 0; } else { - return readb((void *)(iobase + port)); + return readb((void __iomem *)(iobase + port)); } } |