Re: [PATCH] asm-generic/io.h: remove asm/cacheflush.h include

From: guanxuetao
Date: Sun Oct 28 2012 - 21:11:55 EST


> Including <asm/cacheflush.h> from <asm-generic/io.h> prevents
> cacheflush.h being able to use I/O functions like readl and writel due
> to circular include dependencies. It doesn't appear as if anything from
> cacheflush.h is actually used by the generic io.h, so remove the
> include.
>
> I've compile tested a defconfig compilation of blackfin, openrisc (which
> needed <asm/pgtable.h> including from it's <asm/io.h> to get the PAGE_*
> definitions), and xtensa.
>
> Other architectures which use asm-generic/io.h are score and unicore32,
> and looking at their io.h I don't see any obvious problems.
>
> Signed-off-by: James Hogan <james.hogan@xxxxxxxxxx>
> Cc: Arnd Bergmann <arnd@xxxxxxxx>
> Cc: Jonas Bonn <jonas@xxxxxxxxxxxx>
> Cc: Chris Zankel <chris@xxxxxxxxxx>
> Cc: Max Filippov <jcmvbkbc@xxxxxxxxx>
> Cc: Mike Frysinger <vapier@xxxxxxxxxx>
> Cc: Chen Liqin <liqin.chen@xxxxxxxxxxxxx>
> Cc: Lennox Wu <lennox.wu@xxxxxxxxx>
> Cc: Guan Xuetao <gxt@xxxxxxxxxxxxxxx>

Acked-by: Guan Xuetao <gxt@xxxxxxxxxxxxxxx>

> ---
> Any compile testing of score and unicore32 anybody could provide would
> be great.
>
> arch/openrisc/include/asm/io.h | 1 +
> include/asm-generic/io.h | 1 -
> 2 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/arch/openrisc/include/asm/io.h
> b/arch/openrisc/include/asm/io.h
> index 07f5299..7c69139 100644
> --- a/arch/openrisc/include/asm/io.h
> +++ b/arch/openrisc/include/asm/io.h
> @@ -30,6 +30,7 @@
> #define PIO_MASK 0
>
> #include <asm-generic/io.h>
> +#include <asm/pgtable.h>
>
> extern void __iomem *__ioremap(phys_addr_t offset, unsigned long size,
> pgprot_t prot);
> diff --git a/include/asm-generic/io.h b/include/asm-generic/io.h
> index 448303b..616eea5 100644
> --- a/include/asm-generic/io.h
> +++ b/include/asm-generic/io.h
> @@ -12,7 +12,6 @@
> #define __ASM_GENERIC_IO_H
>
> #include <asm/page.h> /* I/O is all done through memory accesses */
> -#include <asm/cacheflush.h>
> #include <linux/types.h>
>
> #ifdef CONFIG_GENERIC_IOMAP
> --
> 1.7.7.6
>
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/