[PATCH 1/4] ARM: ep93xx: switch to SPARSEMEM

Florian Fainelli f.fainelli at gmail.com
Sat May 13 11:21:28 PDT 2017


Le 02/21/17 à 10:15, H Hartley Sweeten a écrit :
> The EP93xx has four chip selects that can be used for the SDRAM memory.
> These chip selects are decoded to specify an address domain:
> 
>   SDCS3  0x00000000-0x0fffffff with Boot Option ASDO=1
>   SDCS0  0xc0000000-0xcfffffff
>   SDCS1  0xd0000000-0xdfffffff
>   SDCS2  0xe0000000-x0efffffff
>   SDCS3  0xf0000000-0xffffffff with Boot Option ASDO=0
> 
> Because of the row/column/bank architecture of SDRAM, the mapping of
> these memories into the processor's memory space is discontiguous.
> 
> Most ep93xx systems only use one of the chip selects. For these systems,
> ARCH_HAS_HOLES_MEMORYMODEL has worked fine to handle the discontiguous
> memory.
> 
> But, some of the TS-72xx boards use multiple chip selects. The TS-7300 in
> particular uses SDCS3 (with ASDO=1) and SDCS2. On that system with
> ARCH_HAS_HOLES_MEMORYMODEL the SDCS2 memory does not get handled correctly
> and results in the system not booting.
> 
> Change the EP93xx to ARCH_SPARSEMEM_ENABLE. This handles the discontiguous
> memory for all configurations.
> 
> This has been tested on the following ep93xx platforms:
> 
> EDB9307A with 64 MiB on SDCS0
> Vision EP9307 with 64 MiB on SDCS0
> TS-7300 with 64 MiB on SDCS3 (with ASDO=1) and 64 MiB on SDCS2
> sim.one with 64 MiB on SDCS0
> 
> Signed-off-by: H Hartley Sweeten <hsweeten at visionengravers.com>
> Tested-by: Linus Walleij <linus.walleij at linaro.org>
> Cc: Russell King <linux at armlinux.org.uk>

Tested-by: Florian Fainelli <f.fainelli at gmail.com>

On a TS-3700 with 32MiB of SDRAM, thanks!
-- 
Florian



More information about the linux-arm-kernel mailing list