MIPS: Generic: Fix big endian CPUs on generic machine
authorMatt Redfearn <matt.redfearn@imgtec.com>
Mon, 23 Jan 2017 14:08:13 +0000 (14:08 +0000)
committerRalf Baechle <ralf@linux-mips.org>
Wed, 25 Jan 2017 01:51:12 +0000 (02:51 +0100)
Big endian CPUs require SWAP_IO_SPACE enabled to swap accesses to little
endian peripherals.

Without this patch, big endian kernels fail to communicate with little
endian periperals, such as PCI devices, on QEMU and FPGA based
platforms.

Signed-off-by: Matt Redfearn <matt.redfearn@imgtec.com>
Fixes: eed0eabd12ef ("MIPS: generic: Introduce generic DT-based board support")
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/15105/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/Kconfig

index ffd2f67b1aa29144a315cdd7e14de98592268a9d..b969522feb972e0b04cb5d755403e77fe36d4512 100644 (file)
@@ -97,6 +97,7 @@ config MIPS_GENERIC
        select PCI_DRIVERS_GENERIC
        select PINCTRL
        select SMP_UP if SMP
+       select SWAP_IO_SPACE
        select SYS_HAS_CPU_MIPS32_R1
        select SYS_HAS_CPU_MIPS32_R2
        select SYS_HAS_CPU_MIPS32_R6