• Paul Burton's avatar
    MIPS: Malta: Use all available DDR by default · 0051fc2e
    Paul Burton authored
    Malta boards can have more than 256MB DDR available, but we have
    previously only made use of up to 256MB (ie. the DDR accessible via
    kseg0) by default, without the user manually specifying mem= kernel
    parameters. This patch causes all available DDR, as reported by the
    bootloader via the ememsize or memsize environment variables or
    optionally on the command line, to be used when possible without the
    user needing to manually provide the memory ranges.
    
    Malta now has 2 subtly different memory maps which have to be taken into
    account when setting this up. The original memory map (referred to by
    the code as v1) has up to 2GB of DDR aliased in both the upper & lower
    halves of the 32 bit physical address space, with a 256MB I/O region
    obscuring 0x10000000-0x1fffffff only in the lower alias. The revised v2
    memory map is flat with up to 4GB DDR starting from 0x0, and the I/O
    region obscures 256MB of DDR which becomes inacessible. The memory map
    in use is indicated by a register provided by the rocit2 system
    controller, which is checked in order to set up the kernels memory
    ranges accordingly.
    Signed-off-by: default avatarPaul Burton <paul.burton@imgtec.com>
    Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
    Cc: Kees Cook <keescook@chromium.org>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: linux-mips@linux-mips.org
    Cc: linux-kernel@vger.kernel.org
    Patchwork: https://patchwork.linux-mips.org/patch/14273/Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
    0051fc2e
malta-dtshim.c 7 KB