From mboxrd@z Thu Jan 1 00:00:00 1970 From: Simon Horman Date: Wed, 06 Nov 2013 01:48:03 +0000 Subject: Re: [PATCH] ARM: shmobile: Include all 2 GiB of memory on APE6EVM Message-Id: <20131106014801.GD22183@verge.net.au> List-Id: References: <20131031031549.15985.23547.sendpatchset@w520> <20131031042035.GG1603@verge.net.au> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: linux-arm-kernel@lists.infradead.org On Thu, Oct 31, 2013 at 05:02:13PM +0900, Magnus Damm wrote: > Hi Simon, > > On Thu, Oct 31, 2013 at 1:20 PM, Simon Horman wrote: > > On Thu, Oct 31, 2013 at 12:15:49PM +0900, Magnus Damm wrote: > >> From: Takashi Yoshii > >> > >> Add 1GiB of DRAM at 0x2_0000_0000 to support the full 2GiB > >> of APE6EVM system memory. > >> > >> Signed-off-by: Takashi Yoshii > >> Signed-off-by: Magnus Damm > >> --- > >> > >> For correct run time operation regardless of kernel configuration > >> ARM patches 7863/1 and 7864/1 are needed. > > > > I take it that I should wait for those patches before applying this one. > > That's probably a good idea. RMK has applied them to "git-curr", so I > suppose they are queued up for something at least: > > http://www.arm.linux.org.uk/developer/patches/viewpatch.php?idx63/1 I have also sighted them in linux-next. So I expect they will show up in v3.13-rc1 or thereabouts. > > With those two patches and this one applied on top of > > renesas-devel-v3.12-rc7-20131030 I was able to successfully > > boot an ape6evm board. But /proc/meminfo still indicates only 1Gb of > > memory. What am I missing. > > You probably need to enable HIGHMEM and LPAE to be able to access to > all memory. Same thing on Lager, to get the full 4GiB you need to > select those in your kernel configuration too. Thanks, I have been able to successfully test all 4 patches in this series with those settings enabled. Tested-by: Simon Horman > Please note that having memory located on 64-bit addresses may break > some drivers doing bus mastering or using the DMAC. These drivers need > to be fixed both with short term DMA zone workarounds and proper > 64-bit address support whenever possible. > > So if I could suggest a policy then having LPAE=n in defconfig for the > C board code for default stable operation. This together with LPAE=y > in the case of DT reference and/or Multiplatform where we can be a bit > more experimental. I don't care enough to send defconfig patches, but > if some issue comes up then perhaps adjusting the defconfig to disable > LPAE may work well as a workaround. Thanks. As it stands the defconfig for both APE6EVM and Lager lead to a configuration with LPAE disabled, although neither explicitly disable LPAE. I think it is best to leave things as-is in this regards and explicitly disable LPAE in the defconfigs if the need arises. While looking over this I noticed that the APE6EVM defconfig selects HIGHMEM while the Lager defconfig does not and it is not selected in the resulting config. Would it be worth updating the Lager defconfig to enable HIGHMEM? If so, I'll make a patch.