[RFC] dove: fix __io() definition to use bus based offset
Arnd Bergmann
arnd at arndb.de
Thu Jul 29 11:26:38 EDT 2010
On Thursday 29 July 2010, Eric Miao wrote:
> diff --git a/arch/arm/mach-dove/include/mach/io.h
> b/arch/arm/mach-dove/include/mach/io.h
> index 3b3e472..067435e 100644
> --- a/arch/arm/mach-dove/include/mach/io.h
> +++ b/arch/arm/mach-dove/include/mach/io.h
> @@ -11,10 +11,9 @@
>
> #include "dove.h"
>
> -#define IO_SPACE_LIMIT 0xffffffff
> -
> -#define __io(a) ((void __iomem *)(((a) - DOVE_PCIE0_IO_PHYS_BASE) +\
> - DOVE_PCIE0_IO_VIRT_BASE))
> -#define __mem_pci(a) (a)
> +#define IO_SPACE_LIMIT 0xffffffff
> +#define __io(a) __typesafe_io((a) - DOVE_PCIE0_IO_BUS_BASE + \
> + DOVE_PCIE0_IO_VIRT_BASE)
> +#define __mem_pci(a) (a)
>
> #endif
>
The IO_SPACE_LIMIT still looks wrong, AFAICT it should be
#define IO_SPACE_LIMIT (DOVE_PCIE0_IO_SIZE + DOVE_PCIE1_IO_SIZE - 1)
Arnd
More information about the linux-arm-kernel
mailing list