Messages in this thread | | | From | guanxuetao@mprc ... | Date | Mon, 29 Oct 2012 09:28:42 +0800 (CST) | Subject | Re: [PATCH] asm-generic/io.h: remove asm/cacheflush.h include |
| |
> 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@imgtec.com> > Cc: Arnd Bergmann <arnd@arndb.de> > Cc: Jonas Bonn <jonas@southpole.se> > Cc: Chris Zankel <chris@zankel.net> > Cc: Max Filippov <jcmvbkbc@gmail.com> > Cc: Mike Frysinger <vapier@gentoo.org> > Cc: Chen Liqin <liqin.chen@sunplusct.com> > Cc: Lennox Wu <lennox.wu@gmail.com> > Cc: Guan Xuetao <gxt@mprc.pku.edu.cn>
Acked-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
> --- > 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 > >
| |