[PATCH v3 0/6] ARM: make mach/hardware.h optional
From: arnd@arndb.de (Arnd Bergmann)
Date: 2011-07-14 15:22:36
Also in:
lkml
On Tuesday 12 July 2011, Rob Herring wrote:
From: Rob Herring <redacted> Currently, all ARM platforms must have a mach/hardware.h include. This is because it is ultimately included by linux/pci.h which is included in many places even for !CONFIG_PCI. This could be fixed simply with an ifdef around the include of mach/hardware.h in asm/pci.h. However, in the interest of fixing this for single kernel binary builds, this series removes the include of mach/hardware.h outside of mach-* and plat-*. What's used from hardware.h is a couple of PCI defines. Converting them to variables allows each platform to set the values as needed. This does not address the inclusion of mach/hardware.h under drivers/*. This appears to be mostly older platforms. There could also be some indirect inclusions from other mach/* headers. I've compile tested on most affected ARM platforms. Changes from v2: - Incorporated compile fixes for microblaze from Michal Simek. - Added conversion of powerpc to generic pci flag functions. - Combined powerpc and microblaze conversion to use asm-generic/pci-bridge.h into one commit. Renaming of powerpc pci flags functions is separate commit. - Changed defaults for PCIBIOS_MIN_IO and PCIBIOS_MIN_MEM to 0x1000 and 0x1000000, respectively. - Dropped commit moving ARCH_HAS_DMA_SET_COHERENT_MASK defines into memory.h. This conflicts with other clean-up work by Nicolas Pitre.
Looks good to me, I'll apply it as soon as I hear back from Russell.
Russell, do you have an opinion on the changes to arch/arm/{include,lib} ?
Arnd