All of lore.kernel.org
 help / color / mirror / Atom feed
From: stefan@agner.ch (Stefan Agner)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 08/12] ARM: allow MULTIPLATFORM with !MMU
Date: Tue, 30 Dec 2014 23:02:31 +0100	[thread overview]
Message-ID: <8ec6bcf0fe2ec13898cf6c259d9da559@agner.ch> (raw)
In-Reply-To: <CAL_JsqK94Pk2xPF1MMX0GU0CQEiwiDD2qv9v3k4WLg2znDVjgA@mail.gmail.com>

On 2014-12-30 22:42, Rob Herring wrote:
> On Mon, Dec 29, 2014 at 5:32 PM, Stefan Agner <stefan@agner.ch> wrote:
>> In order to support SoC with heterogenous CPU architectures (such
>> as Freescale Vybrid/i.MXSX) it is preferable to use the same
>> architecture (ARCH_MXC in this case) for the MMU enabled and !MMU
>> CPU. Hence allow to select MULTIPLATFORM even without MMU.
> 
> This has been submitted before[1], but you obviously have a better
> reason now. I also need this for my Versatile series to fix
> allnoconfig. However, there are some issues with your implementation.
> 
>> Signed-off-by: Stefan Agner <stefan@agner.ch>
>> ---
>>  arch/arm/Kconfig | 21 ++++++++++-----------
>>  1 file changed, 10 insertions(+), 11 deletions(-)
>>
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 97d07ed..95007b9 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -228,7 +228,7 @@ config VECTORS_BASE
>>           in size.
>>
>>  config ARM_PATCH_PHYS_VIRT
>> -       bool "Patch physical to virtual translations at runtime" if EMBEDDED
>> +       bool "Patch physical to virtual translations at runtime" if EMBEDDED || (ARCH_MULTIPLATFORM && MMU)
>>         default y
>>         depends on !XIP_KERNEL && MMU
>>         depends on !ARCH_REALVIEW || !SPARSEMEM
>> @@ -303,15 +303,12 @@ config MMU
>>  #
>>  choice
>>         prompt "ARM system type"
>> -       default ARCH_VERSATILE if !MMU
>> -       default ARCH_MULTIPLATFORM if MMU
>> +       default ARCH_MULTIPLATFORM
>>
>>  config ARCH_MULTIPLATFORM
>>         bool "Allow multiple platforms to be selected"
>> -       depends on MMU
>>         select ARCH_WANT_OPTIONAL_GPIOLIB
>>         select ARM_HAS_SG_CHAIN
>> -       select ARM_PATCH_PHYS_VIRT
>>         select AUTO_ZRELADDR
>>         select CLKSRC_OF
>>         select COMMON_CLK
>> @@ -783,13 +780,13 @@ comment "CPU Core family selection"
>>
>>  config ARCH_MULTI_V4
>>         bool "ARMv4 based platforms (FA526)"
>> -       depends on !ARCH_MULTI_V6_V7
>> +       depends on !ARCH_MULTI_V6_V7 && MMU
> 
> This is not right. !MMU does not mean the ARM arch does not have an
> MMU, but rather the MMU is already setup with identity mapping (or
> some other static mapping).

Yes, I'm aware of that. However, there are several configuration
depending on "!MMU". Allowing !MMU on ARCH_MULTI_V4...V7 would open up
new combination of configurations... This patch avoids this as much as
possible, by making !MMU only available for ARCH_MULTI_V7M.

I'm not sure what tests/verification would be expected before allowing
those new configurations... Personally, I also don't see much value in
allowing these configurations.

--
Stefan

> 
> Rob
> 
> [1] http://patchwork.ozlabs.org/patch/278996/

WARNING: multiple messages have this Message-ID (diff)
From: Stefan Agner <stefan-XLVq0VzYD2Y@public.gmane.org>
To: Rob Herring <robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: "Shawn Guo" <shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
	kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org,
	"Russell King - ARM Linux"
	<linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org>,
	"Uwe Kleine-König"
	<u.kleine-koenig-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>,
	"Jason Cooper" <jason-NLaQJdtUoK4Be96aLqz0jA@public.gmane.org>,
	"Olof Johansson" <olof-nZhT3qVonbNeoWH0uzbU5w@public.gmane.org>,
	"Arnd Bergmann" <arnd-r2nGTMty4D4@public.gmane.org>,
	"Daniel Lezcano"
	<daniel.lezcano-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
	"Thomas Gleixner" <tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>,
	"Mark Rutland" <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
	"Pawel Moll" <pawel.moll-5wv7dgnIgG8@public.gmane.org>,
	"Rob Herring" <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	"Ian Campbell"
	<ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org>,
	"Kumar Gala" <galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>,
	"Marc Zyngier" <marc.zyngier-5wv7dgnIgG8@public.gmane.org>,
	devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH v2 08/12] ARM: allow MULTIPLATFORM with !MMU
Date: Tue, 30 Dec 2014 23:02:31 +0100	[thread overview]
Message-ID: <8ec6bcf0fe2ec13898cf6c259d9da559@agner.ch> (raw)
In-Reply-To: <CAL_JsqK94Pk2xPF1MMX0GU0CQEiwiDD2qv9v3k4WLg2znDVjgA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

On 2014-12-30 22:42, Rob Herring wrote:
> On Mon, Dec 29, 2014 at 5:32 PM, Stefan Agner <stefan-XLVq0VzYD2Y@public.gmane.org> wrote:
>> In order to support SoC with heterogenous CPU architectures (such
>> as Freescale Vybrid/i.MXSX) it is preferable to use the same
>> architecture (ARCH_MXC in this case) for the MMU enabled and !MMU
>> CPU. Hence allow to select MULTIPLATFORM even without MMU.
> 
> This has been submitted before[1], but you obviously have a better
> reason now. I also need this for my Versatile series to fix
> allnoconfig. However, there are some issues with your implementation.
> 
>> Signed-off-by: Stefan Agner <stefan-XLVq0VzYD2Y@public.gmane.org>
>> ---
>>  arch/arm/Kconfig | 21 ++++++++++-----------
>>  1 file changed, 10 insertions(+), 11 deletions(-)
>>
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 97d07ed..95007b9 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -228,7 +228,7 @@ config VECTORS_BASE
>>           in size.
>>
>>  config ARM_PATCH_PHYS_VIRT
>> -       bool "Patch physical to virtual translations at runtime" if EMBEDDED
>> +       bool "Patch physical to virtual translations at runtime" if EMBEDDED || (ARCH_MULTIPLATFORM && MMU)
>>         default y
>>         depends on !XIP_KERNEL && MMU
>>         depends on !ARCH_REALVIEW || !SPARSEMEM
>> @@ -303,15 +303,12 @@ config MMU
>>  #
>>  choice
>>         prompt "ARM system type"
>> -       default ARCH_VERSATILE if !MMU
>> -       default ARCH_MULTIPLATFORM if MMU
>> +       default ARCH_MULTIPLATFORM
>>
>>  config ARCH_MULTIPLATFORM
>>         bool "Allow multiple platforms to be selected"
>> -       depends on MMU
>>         select ARCH_WANT_OPTIONAL_GPIOLIB
>>         select ARM_HAS_SG_CHAIN
>> -       select ARM_PATCH_PHYS_VIRT
>>         select AUTO_ZRELADDR
>>         select CLKSRC_OF
>>         select COMMON_CLK
>> @@ -783,13 +780,13 @@ comment "CPU Core family selection"
>>
>>  config ARCH_MULTI_V4
>>         bool "ARMv4 based platforms (FA526)"
>> -       depends on !ARCH_MULTI_V6_V7
>> +       depends on !ARCH_MULTI_V6_V7 && MMU
> 
> This is not right. !MMU does not mean the ARM arch does not have an
> MMU, but rather the MMU is already setup with identity mapping (or
> some other static mapping).

Yes, I'm aware of that. However, there are several configuration
depending on "!MMU". Allowing !MMU on ARCH_MULTI_V4...V7 would open up
new combination of configurations... This patch avoids this as much as
possible, by making !MMU only available for ARCH_MULTI_V7M.

I'm not sure what tests/verification would be expected before allowing
those new configurations... Personally, I also don't see much value in
allowing these configurations.

--
Stefan

> 
> Rob
> 
> [1] http://patchwork.ozlabs.org/patch/278996/

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

WARNING: multiple messages have this Message-ID (diff)
From: Stefan Agner <stefan@agner.ch>
To: Rob Herring <robherring2@gmail.com>
Cc: "Shawn Guo" <shawn.guo@linaro.org>,
	kernel@pengutronix.de,
	"Russell King - ARM Linux" <linux@arm.linux.org.uk>,
	"Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>,
	"Jason Cooper" <jason@lakedaemon.net>,
	"Olof Johansson" <olof@lixom.net>,
	"Arnd Bergmann" <arnd@arndb.de>,
	"Daniel Lezcano" <daniel.lezcano@linaro.org>,
	"Thomas Gleixner" <tglx@linutronix.de>,
	"Mark Rutland" <mark.rutland@arm.com>,
	"Pawel Moll" <pawel.moll@arm.com>,
	"Rob Herring" <robh+dt@kernel.org>,
	"Ian Campbell" <ijc+devicetree@hellion.org.uk>,
	"Kumar Gala" <galak@codeaurora.org>,
	"Marc Zyngier" <marc.zyngier@arm.com>,
	devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 08/12] ARM: allow MULTIPLATFORM with !MMU
Date: Tue, 30 Dec 2014 23:02:31 +0100	[thread overview]
Message-ID: <8ec6bcf0fe2ec13898cf6c259d9da559@agner.ch> (raw)
In-Reply-To: <CAL_JsqK94Pk2xPF1MMX0GU0CQEiwiDD2qv9v3k4WLg2znDVjgA@mail.gmail.com>

On 2014-12-30 22:42, Rob Herring wrote:
> On Mon, Dec 29, 2014 at 5:32 PM, Stefan Agner <stefan@agner.ch> wrote:
>> In order to support SoC with heterogenous CPU architectures (such
>> as Freescale Vybrid/i.MXSX) it is preferable to use the same
>> architecture (ARCH_MXC in this case) for the MMU enabled and !MMU
>> CPU. Hence allow to select MULTIPLATFORM even without MMU.
> 
> This has been submitted before[1], but you obviously have a better
> reason now. I also need this for my Versatile series to fix
> allnoconfig. However, there are some issues with your implementation.
> 
>> Signed-off-by: Stefan Agner <stefan@agner.ch>
>> ---
>>  arch/arm/Kconfig | 21 ++++++++++-----------
>>  1 file changed, 10 insertions(+), 11 deletions(-)
>>
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 97d07ed..95007b9 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -228,7 +228,7 @@ config VECTORS_BASE
>>           in size.
>>
>>  config ARM_PATCH_PHYS_VIRT
>> -       bool "Patch physical to virtual translations at runtime" if EMBEDDED
>> +       bool "Patch physical to virtual translations at runtime" if EMBEDDED || (ARCH_MULTIPLATFORM && MMU)
>>         default y
>>         depends on !XIP_KERNEL && MMU
>>         depends on !ARCH_REALVIEW || !SPARSEMEM
>> @@ -303,15 +303,12 @@ config MMU
>>  #
>>  choice
>>         prompt "ARM system type"
>> -       default ARCH_VERSATILE if !MMU
>> -       default ARCH_MULTIPLATFORM if MMU
>> +       default ARCH_MULTIPLATFORM
>>
>>  config ARCH_MULTIPLATFORM
>>         bool "Allow multiple platforms to be selected"
>> -       depends on MMU
>>         select ARCH_WANT_OPTIONAL_GPIOLIB
>>         select ARM_HAS_SG_CHAIN
>> -       select ARM_PATCH_PHYS_VIRT
>>         select AUTO_ZRELADDR
>>         select CLKSRC_OF
>>         select COMMON_CLK
>> @@ -783,13 +780,13 @@ comment "CPU Core family selection"
>>
>>  config ARCH_MULTI_V4
>>         bool "ARMv4 based platforms (FA526)"
>> -       depends on !ARCH_MULTI_V6_V7
>> +       depends on !ARCH_MULTI_V6_V7 && MMU
> 
> This is not right. !MMU does not mean the ARM arch does not have an
> MMU, but rather the MMU is already setup with identity mapping (or
> some other static mapping).

Yes, I'm aware of that. However, there are several configuration
depending on "!MMU". Allowing !MMU on ARCH_MULTI_V4...V7 would open up
new combination of configurations... This patch avoids this as much as
possible, by making !MMU only available for ARCH_MULTI_V7M.

I'm not sure what tests/verification would be expected before allowing
those new configurations... Personally, I also don't see much value in
allowing these configurations.

--
Stefan

> 
> Rob
> 
> [1] http://patchwork.ozlabs.org/patch/278996/


  reply	other threads:[~2014-12-30 22:02 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-29 23:32 [PATCH v2 00/12] ARM: vf610m4: Add Vybrid Cortex-M4 support Stefan Agner
2014-12-29 23:32 ` Stefan Agner
2014-12-29 23:32 ` Stefan Agner
2014-12-29 23:32 ` [PATCH v2 01/12] genirq: generic chip: support hierarchy domain Stefan Agner
2014-12-29 23:32   ` Stefan Agner
2014-12-29 23:32   ` Stefan Agner
2014-12-29 23:32 ` [PATCH v2 02/12] irqchip: nvic: support hierarchy irq domain Stefan Agner
2014-12-29 23:32   ` Stefan Agner
2014-12-29 23:32 ` [PATCH v2 03/12] irqchip: vf610-mscm: support NVIC parent Stefan Agner
2014-12-29 23:32   ` Stefan Agner
2014-12-29 23:32 ` [PATCH v2 04/12] irqchip: nvic: increase number of external interrupts to 112 Stefan Agner
2014-12-29 23:32   ` Stefan Agner
2014-12-29 23:32   ` Stefan Agner
2014-12-29 23:32 ` [PATCH v2 05/12] clocksource: add dependencies for Vybrid pit clocksource Stefan Agner
2014-12-29 23:32   ` Stefan Agner
2014-12-29 23:32 ` [PATCH v2 06/12] ARM: unify MMU/!MMU addruart calls Stefan Agner
2014-12-29 23:32   ` Stefan Agner
2014-12-29 23:32 ` [PATCH v2 07/12] ARM: imx: depend MXC debug board on 3DS machines Stefan Agner
2014-12-29 23:32   ` Stefan Agner
2014-12-30 10:42   ` Sergei Shtylyov
2014-12-30 10:42     ` Sergei Shtylyov
2014-12-29 23:32 ` [PATCH v2 08/12] ARM: allow MULTIPLATFORM with !MMU Stefan Agner
2014-12-29 23:32   ` Stefan Agner
2014-12-30 21:42   ` Rob Herring
2014-12-30 21:42     ` Rob Herring
2014-12-30 21:42     ` Rob Herring
2014-12-30 22:02     ` Stefan Agner [this message]
2014-12-30 22:02       ` Stefan Agner
2014-12-30 22:02       ` Stefan Agner
2014-12-30 22:27       ` Arnd Bergmann
2014-12-30 22:27         ` Arnd Bergmann
2014-12-30 22:27         ` Arnd Bergmann
2014-12-29 23:32 ` [PATCH v2 09/12] ARM: efm32: move into multiplatform Stefan Agner
2014-12-29 23:32   ` Stefan Agner
2015-01-02  9:50   ` Uwe Kleine-König
2015-01-02  9:50     ` Uwe Kleine-König
2015-01-02  9:50     ` Uwe Kleine-König
2014-12-29 23:32 ` [PATCH v2 10/12] ARM: vf610: enable Cortex-M4 on Vybrid SoC Stefan Agner
2014-12-29 23:32   ` Stefan Agner
2014-12-29 23:32 ` [PATCH v2 11/12] ARM: dts: add support for Vybrid running on Cortex-M4 Stefan Agner
2014-12-29 23:32   ` Stefan Agner
2014-12-29 23:32 ` [PATCH v2 12/12] ARM: vf610m4: add defconfig for Linux on Vybrids Cortex-M4 Stefan Agner
2014-12-29 23:32   ` Stefan Agner
2014-12-29 23:32   ` Stefan Agner

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=8ec6bcf0fe2ec13898cf6c259d9da559@agner.ch \
    --to=stefan@agner.ch \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.