• Linus Walleij's avatar
    ARM/ixp4xx: Move the virtual IObases · 713ce38d
    Linus Walleij authored
    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: default avatarLinus Walleij <linus.walleij@linaro.org>
    713ce38d
ixp4xx-of.c 1.59 KB