]> git.baikalelectronics.ru Git - kernel.git/commit
ARM/ixp4xx: Move the virtual IObases
authorLinus Walleij <linus.walleij@linaro.org>
Thu, 29 Apr 2021 21:25:11 +0000 (23:25 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Wed, 16 Jun 2021 13:14:21 +0000 (15:14 +0200)
commit5fdab9fa43c1dfd4247f2320418a27f63f9cfc16
tree8d34f54308aecb15011c20297cdd75f3ad879e2d
parent78f0a5f86683713bf30eae653c023ab078a37264
ARM/ixp4xx: Move the virtual IObases

UART1, UART2 and the expansion bus config registers
are the only registers mapped in a fixed location
when using device tree.

For device tree we also want to get rid of the custom
<mach/io.h> for IXP4xx. So we need to undefine
CONFIG_NEED_MACH_IO_H. Doing that activates the fixed
mapping of the PCI IO space to PCI_IO_VIRT_BASE which
is hardcoded to 0xFEE00000 and this would collide with
the old fixed mappings.

Move the fixed virtual IO base address from 0xFEF00000
to 0xFEC00000 in order to avoid the collision.

For the OF-only boot path let's even cut the reliance
on <mach/io.h> and just hardcode the one single virtbase
we need apart from the UART, which is hardcoded in
Kconfig.debug.

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.debug
arch/arm/mach-ixp4xx/include/mach/ixp4xx-regs.h
arch/arm/mach-ixp4xx/ixp4xx-of.c