Thread (9 messages) 9 messages, 3 authors, 2011-07-22

[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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help