linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: vladimir.murzin@arm.com (Vladimir Murzin)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC v2 PATCH 23/23] ARM: Allow ARCH_MULTIPLATFORM to be selected for NOMMU
Date: Wed, 30 Nov 2016 10:01:52 +0000	[thread overview]
Message-ID: <583EA390.7000705@arm.com> (raw)
In-Reply-To: <20161129172234.GY14217@n2100.armlinux.org.uk>

On 29/11/16 17:22, Russell King - ARM Linux wrote:
> On Tue, Nov 29, 2016 at 12:40:05PM +0000, Vladimir Murzin wrote:
>> With this patch applied potentially any platform can be built in NOMMU
>> configurations if CONFIG_EXPERT is selected. However, there is no
>> guaranty that platform can successfully run such Image. So the main
> 
> guarantee
> 
>> motivation behind of this patch:
>> - bring build coverage for NOMMU configurations
>> - allow known working NOMMU platforms (like R-class) to be used
>> - pave a way to add support for single address space (aka 1:1 mapping)
>>   for MMU platforms, so they can be usable in NOMMU configurations
>>
>> Cc: Hartley Sweeten <hsweeten@visionengravers.com>
>> Cc: Ryan Mallon <rmallon@gmail.com>
>> Cc: Tony Lindgren <tony@atomide.com>
>> Cc: Thierry Reding <thierry.reding@gmail.com>
>> Cc: Alexander Shiyan <shc_work@mail.ru>
>> Cc: Shawn Guo <shawnguo@kernel.org>
>> Cc: Sascha Hauer <kernel@pengutronix.de>
>> Cc: Fabio Estevam <fabio.estevam@nxp.com>
>> Cc: Linus Walleij <linus.walleij@linaro.org>
>> Cc: Russell King <linux@armlinux.org.uk>
>> Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
>> ---
>>  arch/arm/Kconfig |   21 +++++++++++++++++++--
>>  1 file changed, 19 insertions(+), 2 deletions(-)
>>
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index e78c822..bc6f406 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -327,9 +327,9 @@ choice
>>  
>>  config ARCH_MULTIPLATFORM
>>  	bool "Allow multiple platforms to be selected"
>> -	depends on MMU
>> +	depends on MMU || EXPERT
>>  	select ARM_HAS_SG_CHAIN
>> -	select ARM_PATCH_PHYS_VIRT
>> +	select ARM_PATCH_PHYS_VIRT if MMU
>>  	select AUTO_ZRELADDR
>>  	select CLKSRC_OF
>>  	select COMMON_CLK
>> @@ -339,6 +339,23 @@ config ARCH_MULTIPLATFORM
>>  	select PCI_DOMAINS if PCI
>>  	select SPARSE_IRQ
>>  	select USE_OF
>> +	help
>> +	  Please, read carefully if you've selected CONFIG_MMU=n!
>> +
>> +	  Multiplatform with !MMU configuration *is not* meant that
>> +	  kernel built to support every platform will boot on them. It
>> +	  is because physical address space layouts (particularly where
>> +	  RAM is located) are different between platforms and there is
>> +	  no MMU to work that around.
>> +
>> +	  You must specify where RAM start (via DRAM_BASE config
>> +	  option) and appropriate size of RAM (via DRAM_SIZE config
>> +	  option) which are valid for the platform you are building
>> +	  for.
>> +
>> +	  This feature is *EXPERIMENTAL*, please, consider building
>> +	  with CONFIG_MMU=y unless you know what you do or want to
>> +	  help with testing.
> 
> Do you actually see this help text anywhere?  I don't think multiple-choice
> options show help for individual choices.
> 

Yes I can: "System Type" -> "ARM system type" -> "Allow multiple platforms to
be selected" -> "?". Probably not the best place, but I failed to find
anything better :(

Cheers
Vladimir

  reply	other threads:[~2016-11-30 10:01 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-29 12:39 [RFC v2 PATCH 00/23] Allow NOMMU for MULTIPLATFORM Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 01/23] ARM: NOMMU: define stubs for fixup Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 02/23] ARM: NOMMU: define debug_ll_io_ini Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 03/23] ARM: NOMMU: define SECTION_xxx macros Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 04/23] ARM: NOMMU: define dummy user structure for feroceon Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 05/23] ARM: NOMMU: define __arm_ioremap_exec and pci_ioremap functions Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 06/23] ARM: NOMMU: relax restriction on MPU existence Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 07/23] ARM: NOMMU: fix head-nommu build for pre-ARMv7 CPUs Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 08/23] ARM: NOMMU: implement secondary_startup_arm Vladimir Murzin
2016-11-29 17:14   ` Russell King - ARM Linux
2016-11-30  9:57     ` Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 09/23] ARM: move arm_heavy_mb to MMU/noMMU neutral place Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 10/23] ARM: tlbflush: drop dependency on CONFIG_SMP Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 11/23] ARM: sleep: allow it to be build for R-class Vladimir Murzin
2016-11-29 17:11   ` Russell King - ARM Linux
2016-11-30  9:54     ` Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 12/23] ARM: setup: move call to erratum_a15_798181_init under CONFIG_MMU Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 13/23] ARM: kexec: disallow kexec for NOMMU builds Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 14/23] ARM: ep93xx: select ARM_PATCH_PHYS_VIRT for MMU builds only Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 15/23] ARM: omap: do not select HIGHMEM explicitly Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 16/23] ARM: sa1100: move CPU specific copy code under its own config Vladimir Murzin
2016-11-29 12:39 ` [RFC v2 PATCH 17/23] ARM: sa11x0: assabet: add dependency on MMU Vladimir Murzin
2016-11-29 12:40 ` [RFC v2 PATCH 18/23] ARM: i.MX: remove map_io callback Vladimir Murzin
2016-11-29 12:40 ` [RFC v2 PATCH 19/23] PCI: tegra: limit to MMU build only Vladimir Murzin
2016-11-29 12:40 ` [RFC v2 PATCH 20/23] IB: add dependency on MMU Vladimir Murzin
2016-11-29 12:40 ` [RFC v2 PATCH 21/23] cnic: " Vladimir Murzin
2016-11-29 12:40 ` [RFC v2 PATCH 22/23] scsi: bnx2i: bnx2fc: " Vladimir Murzin
2016-11-29 12:40 ` [RFC v2 PATCH 23/23] ARM: Allow ARCH_MULTIPLATFORM to be selected for NOMMU Vladimir Murzin
2016-11-29 17:22   ` Russell King - ARM Linux
2016-11-30 10:01     ` Vladimir Murzin [this message]
2016-12-01 20:11       ` Chris Brandt

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=583EA390.7000705@arm.com \
    --to=vladimir.murzin@arm.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).