linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: f.fainelli@gmail.com (Florian Fainelli)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 1/4] ARM: ep93xx: switch to SPARSEMEM
Date: Sun,  3 Sep 2017 10:43:44 -0700	[thread overview]
Message-ID: <20170903174347.6148-2-f.fainelli@gmail.com> (raw)
In-Reply-To: <20170903174347.6148-1-f.fainelli@gmail.com>

From: H Hartley Sweeten <hsweeten@visionengravers.com>

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@visionengravers.com>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Cc: Russell King <linux@armlinux.org.uk>
---
 arch/arm/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index a208bfe367b5..87a6b09067c2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -378,7 +378,7 @@ config ARCH_EBSA110
 
 config ARCH_EP93XX
 	bool "EP93xx-based"
-	select ARCH_HAS_HOLES_MEMORYMODEL
+	select ARCH_SPARSEMEM_ENABLE
 	select ARM_AMBA
 	select ARM_PATCH_PHYS_VIRT
 	select ARM_VIC
-- 
2.11.0

  reply	other threads:[~2017-09-03 17:43 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-03 17:43 [PATCH v2 0/4] ARM: ep93xx: various updates Florian Fainelli
2017-09-03 17:43 ` Florian Fainelli [this message]
2017-09-03 17:58   ` [PATCH v2 1/4] ARM: ep93xx: switch to SPARSEMEM Alexander Sverdlin
2017-09-03 17:43 ` [PATCH v2 2/4] ARM: ep93xx: simone: let the mmc_spi driver handle the card detect Florian Fainelli
2017-09-03 17:58   ` Alexander Sverdlin
2017-09-03 17:43 ` [PATCH v2 3/4] ARM: ep93xx: tidy up TS-72xx Watchdog resources Florian Fainelli
2017-09-03 17:58   ` Alexander Sverdlin
2017-09-03 17:43 ` [PATCH v2 4/4] ARM: ep93xx: Add lm70 HWMON sensor to TS-72xx boards Florian Fainelli
2017-09-03 17:59   ` Alexander Sverdlin
2017-09-05  6:50 ` [PATCH v2 0/4] ARM: ep93xx: various updates Linus Walleij
2017-09-05 15:54   ` Hartley Sweeten

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170903174347.6148-2-f.fainelli@gmail.com \
    --to=f.fainelli@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).