From mboxrd@z Thu Jan 1 00:00:00 1970 From: robherring2@gmail.com (Rob Herring) Date: Wed, 29 Jun 2011 11:46:53 -0500 Subject: [PATCH v2 0/6] ARM: make mach/hardware.h optional Message-ID: <1309366019-24379-1-git-send-email-robherring2@gmail.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org From: Rob Herring 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 platforms. Changes from v1: - Added patch 2 to move ARCH_HAS_DMA_SET_COHERENT_MASK defines into memory.h. - Separated VGA changes and renamed to vga_base. - Reverted mach/hardware.h removal from ecard.c. It's getting implicitly included anyway. Rob Rob Herring (6): microblaze: move pci flag functions into asm-generic ARM: move ARCH_HAS_DMA_SET_COHERENT_MASK into memory.h ARM: remove unnecessary mach/hardware.h includes ARM: pci: make pcibios_assign_all_busses use pci_has_flag ARM: convert PCI defines to variables ARM: set vga memory base at run-time arch/arm/include/asm/pci.h | 12 ++++- arch/arm/include/asm/vga.h | 5 +- arch/arm/lib/ecard.S | 1 - arch/arm/lib/io-readsw-armv3.S | 1 - arch/arm/lib/io-writesw-armv3.S | 1 - arch/arm/mach-bcmring/include/mach/hardware.h | 2 - arch/arm/mach-cns3xxx/cns3420vb.c | 1 - arch/arm/mach-cns3xxx/include/mach/hardware.h | 22 -------- arch/arm/mach-dove/include/mach/hardware.h | 7 --- arch/arm/mach-dove/pcie.c | 5 ++ arch/arm/mach-ep93xx/include/mach/hardware.h | 2 - arch/arm/mach-footbridge/dc21285.c | 4 ++ arch/arm/mach-footbridge/include/mach/hardware.h | 5 -- arch/arm/mach-integrator/include/mach/hardware.h | 7 --- arch/arm/mach-integrator/pci_v3.c | 5 ++ arch/arm/mach-iop13xx/include/mach/hardware.h | 7 --- arch/arm/mach-iop13xx/pci.c | 4 +- arch/arm/mach-iop32x/include/mach/hardware.h | 3 - arch/arm/mach-iop33x/include/mach/hardware.h | 3 - arch/arm/mach-ixp2000/include/mach/hardware.h | 8 --- arch/arm/mach-ixp2000/pci.c | 2 + arch/arm/mach-ixp23xx/include/mach/hardware.h | 4 -- arch/arm/mach-ixp23xx/pci.c | 4 ++ arch/arm/mach-ixp4xx/common-pci.c | 6 ++ arch/arm/mach-ixp4xx/include/mach/hardware.h | 7 --- arch/arm/mach-ixp4xx/include/mach/memory.h | 1 + arch/arm/mach-kirkwood/include/mach/hardware.h | 7 --- arch/arm/mach-kirkwood/pcie.c | 5 ++ arch/arm/mach-ks8695/include/mach/hardware.h | 9 --- arch/arm/mach-mv78xx0/include/mach/hardware.h | 7 --- arch/arm/mach-mv78xx0/pcie.c | 5 ++ arch/arm/mach-orion5x/include/mach/hardware.h | 7 --- arch/arm/mach-orion5x/pci.c | 4 ++ arch/arm/mach-pxa/include/mach/hardware.h | 7 --- arch/arm/mach-pxa/include/mach/memory.h | 1 + arch/arm/mach-sa1100/include/mach/hardware.h | 8 --- arch/arm/mach-shark/include/mach/hardware.h | 6 -- arch/arm/mach-shark/pci.c | 12 ++++- arch/arm/mach-tegra/include/mach/hardware.h | 28 ---------- arch/arm/mach-tegra/include/mach/system.h | 1 - arch/arm/mach-tegra/io.c | 1 - arch/arm/mach-tegra/pcie.c | 2 + arch/arm/mach-tegra/platsmp.c | 1 - arch/arm/mach-versatile/include/mach/hardware.h | 6 -- arch/arm/mach-versatile/pci.c | 3 + arch/arm/mm/iomap.c | 12 ++++ arch/arm/mm/proc-xsc3.S | 1 - arch/microblaze/include/asm/pci-bridge.h | 36 +------------ include/asm-generic/pci-bridge.h | 62 ++++++++++++++++++++++ 49 files changed, 147 insertions(+), 213 deletions(-) delete mode 100644 arch/arm/mach-cns3xxx/include/mach/hardware.h delete mode 100644 arch/arm/mach-tegra/include/mach/hardware.h create mode 100644 include/asm-generic/pci-bridge.h -- 1.7.4.1