ARM/ixp4xx: Make NEED_MACH_IO_H optional
authorLinus Walleij <linus.walleij@linaro.org>
Thu, 29 Apr 2021 21:34:10 +0000 (23:34 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Wed, 16 Jun 2021 13:14:30 +0000 (15:14 +0200)
commitd5d9f7ac58ea1041375a028f143ca5784693ea86
tree48770ffb1834729c9444507532d85fc43f8dced9
parent713ce38d46eb5caef20aeb8f9794ce4521cb58bf
ARM/ixp4xx: Make NEED_MACH_IO_H optional

In order to create a proper PCI driver for the IXP4xx
we need to make the old PCI driver and its reliance
on <mach/io.h> optional.

Create a new Kconfig symbol for the legacy PCI driver
IXP4XX_PCI_LEGACY and only activate NEED_MACH_IO_H
for this driver.

A few files need to be adjusted to explicitly include
the <mach/hardware.h> and <mach/cpu.h> headers that
they previously obtained implicitly using <linux/io.h>
that would include <mach/io.h> and in turn include
these two headers.

This breaks our reliance on the old PCI and indirect
PCI support so we can reimplement a proper purely
DT-based driver in the PCI subsystem.

Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Imre Kaloz <kaloz@openwrt.org>
Cc: Krzysztof Halasa <khalasa@piap.pl>
Cc: Zoltan HERPAI <wigyori@uid0.hu>
Cc: Raylynn Knight <rayknight@me.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
arch/arm/Kconfig
arch/arm/mach-ixp4xx/Kconfig
arch/arm/mach-ixp4xx/common.c
arch/arm/mach-ixp4xx/fsg-setup.c
arch/arm/mach-ixp4xx/nas100d-setup.c
arch/arm/mach-ixp4xx/nslu2-setup.c
drivers/ata/pata_ixp4xx_cf.c
drivers/net/ethernet/xscale/ixp4xx_eth.c
drivers/soc/ixp4xx/ixp4xx-npe.c
drivers/soc/ixp4xx/ixp4xx-qmgr.c