All of lore.kernel.org
 help / color / mirror / Atom feed
From: Russell King - ARM Linux <linux@arm.linux.org.uk>
To: Chen Gang <gang.chen@asianux.com>
Cc: Will Deacon <will.deacon@arm.com>,
	"dhowells@redhat.com" <dhowells@redhat.com>,
	"plagnioj@jcrosoft.com" <plagnioj@jcrosoft.com>,
	"kgene.kim@samsung.com" <kgene.kim@samsung.com>,
	"linux-samsung-soc@vger.kernel.org"
	<linux-samsung-soc@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [Suggestion] ARM:S5pv210: compiling issue for s5pv210 by using randconfig
Date: Wed, 17 Apr 2013 11:02:43 +0100	[thread overview]
Message-ID: <20130417100243.GV14496@n2100.arm.linux.org.uk> (raw)
In-Reply-To: <516E6A8E.3000001@asianux.com>

On Wed, Apr 17, 2013 at 05:25:34PM +0800, Chen Gang wrote:
> CONFIG_CPU_ARM7TDMI=y
> CONFIG_CPU_ARM9TDMI=y
> CONFIG_CPU_V7=y
> CONFIG_CPU_32v4T=y
> CONFIG_CPU_32v6K=y
> CONFIG_CPU_32v7=y

This is an invalid configuration.  A single kernel can not support ARMv7
and ARMv4T simultaneously.

The problem is caused by MMU=n, which exposes the CPU_ARM7TDMI and
CPU_ARM9TDMI options, which in turn select 32v4T.  This is in turn
caused by the incomplete integration of uclinux.

I think the only thing which can be done is to remove the ARM9TDMI
support code, which doesn't seem to be used by anything, and adjust
ARM7TDMI so that it isn't visible, but is selected by ARCH_AT91X40
(which seems to be its only user.)

Here's the slightly smaller version of that:

diff --git a/arch/arm/mach-at91/Kconfig.non_dt b/arch/arm/mach-at91/Kconfig.non_dt
index 6c24985..dc972e1 100644
--- a/arch/arm/mach-at91/Kconfig.non_dt
+++ b/arch/arm/mach-at91/Kconfig.non_dt
@@ -47,6 +47,7 @@ config ARCH_AT91X40
 	select ARCH_USES_GETTIMEOFFSET
 	select MULTI_IRQ_HANDLER
 	select SPARSE_IRQ
+	select CPU_ARM7TDMI
 
 endchoice
 
diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig
index cb812a1..deb6c6a 100644
--- a/arch/arm/mm/Kconfig
+++ b/arch/arm/mm/Kconfig
@@ -6,7 +6,7 @@ comment "Processor Type"
 
 # ARM7TDMI
 config CPU_ARM7TDMI
-	bool "Support ARM7TDMI processor"
+	bool
 	depends on !MMU
 	select CPU_32v4T
 	select CPU_ABRT_LV4T
@@ -56,7 +56,7 @@ config CPU_ARM740T
 
 # ARM9TDMI
 config CPU_ARM9TDMI
-	bool "Support ARM9TDMI processor"
+	bool
 	depends on !MMU
 	select CPU_32v4T
 	select CPU_ABRT_NOMMU

WARNING: multiple messages have this Message-ID (diff)
From: linux@arm.linux.org.uk (Russell King - ARM Linux)
To: linux-arm-kernel@lists.infradead.org
Subject: [Suggestion] ARM:S5pv210: compiling issue for s5pv210 by using randconfig
Date: Wed, 17 Apr 2013 11:02:43 +0100	[thread overview]
Message-ID: <20130417100243.GV14496@n2100.arm.linux.org.uk> (raw)
In-Reply-To: <516E6A8E.3000001@asianux.com>

On Wed, Apr 17, 2013 at 05:25:34PM +0800, Chen Gang wrote:
> CONFIG_CPU_ARM7TDMI=y
> CONFIG_CPU_ARM9TDMI=y
> CONFIG_CPU_V7=y
> CONFIG_CPU_32v4T=y
> CONFIG_CPU_32v6K=y
> CONFIG_CPU_32v7=y

This is an invalid configuration.  A single kernel can not support ARMv7
and ARMv4T simultaneously.

The problem is caused by MMU=n, which exposes the CPU_ARM7TDMI and
CPU_ARM9TDMI options, which in turn select 32v4T.  This is in turn
caused by the incomplete integration of uclinux.

I think the only thing which can be done is to remove the ARM9TDMI
support code, which doesn't seem to be used by anything, and adjust
ARM7TDMI so that it isn't visible, but is selected by ARCH_AT91X40
(which seems to be its only user.)

Here's the slightly smaller version of that:

diff --git a/arch/arm/mach-at91/Kconfig.non_dt b/arch/arm/mach-at91/Kconfig.non_dt
index 6c24985..dc972e1 100644
--- a/arch/arm/mach-at91/Kconfig.non_dt
+++ b/arch/arm/mach-at91/Kconfig.non_dt
@@ -47,6 +47,7 @@ config ARCH_AT91X40
 	select ARCH_USES_GETTIMEOFFSET
 	select MULTI_IRQ_HANDLER
 	select SPARSE_IRQ
+	select CPU_ARM7TDMI
 
 endchoice
 
diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig
index cb812a1..deb6c6a 100644
--- a/arch/arm/mm/Kconfig
+++ b/arch/arm/mm/Kconfig
@@ -6,7 +6,7 @@ comment "Processor Type"
 
 # ARM7TDMI
 config CPU_ARM7TDMI
-	bool "Support ARM7TDMI processor"
+	bool
 	depends on !MMU
 	select CPU_32v4T
 	select CPU_ABRT_LV4T
@@ -56,7 +56,7 @@ config CPU_ARM740T
 
 # ARM9TDMI
 config CPU_ARM9TDMI
-	bool "Support ARM9TDMI processor"
+	bool
 	depends on !MMU
 	select CPU_32v4T
 	select CPU_ABRT_NOMMU

  parent reply	other threads:[~2013-04-17 10:03 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-25  2:10 [Suggestion] ARM:S5pv210: compiling issue for s5pv210 by using randconfig Chen Gang
2013-03-25  2:10 ` Chen Gang
2013-04-03  9:46 ` Chen Gang
2013-04-03  9:46   ` Chen Gang
2013-04-03 10:10   ` Will Deacon
2013-04-03 10:10     ` Will Deacon
2013-04-03 10:29     ` Chen Gang
2013-04-03 10:29       ` Chen Gang
2013-04-17  9:25       ` Chen Gang
2013-04-17  9:25         ` Chen Gang
2013-04-17 10:01         ` Will Deacon
2013-04-17 10:01           ` Will Deacon
2013-04-17 10:11           ` Chen Gang
2013-04-17 10:11             ` Chen Gang
2013-04-17 10:53           ` Arnd Bergmann
2013-04-17 10:53             ` Arnd Bergmann
2013-04-17 11:02             ` Jean-Christophe PLAGNIOL-VILLARD
2013-04-17 11:02               ` Jean-Christophe PLAGNIOL-VILLARD
2013-04-19 11:56               ` Chen Gang
2013-04-19 11:56                 ` Chen Gang
2013-04-17 11:07             ` Chen Gang
2013-04-17 11:07               ` Chen Gang
2013-04-17 10:02         ` Russell King - ARM Linux [this message]
2013-04-17 10:02           ` Russell King - ARM Linux
2013-04-17 10:17           ` Chen Gang
2013-04-17 10:17             ` Chen Gang
2013-04-22  6:13           ` Chen Gang
2013-04-22  6:13             ` Chen Gang
2013-04-24  4:12             ` [PATCH] ARM: Kconfig: let ARM9TDMI and ARM7TDMI invisible Chen Gang
2013-04-24  4:12               ` Chen Gang
2013-04-24  4:16               ` Chen Gang
2013-04-24  4:16                 ` Chen Gang
2013-04-24  4:20               ` [PATCH v2] " Chen Gang
2013-04-24  4:20                 ` Chen Gang
2013-04-24 17:46                 ` Russell King - ARM Linux
2013-04-24 17:46                   ` Russell King - ARM Linux
2013-04-24 17:59                   ` Jean-Christophe PLAGNIOL-VILLARD
2013-04-24 17:59                     ` Jean-Christophe PLAGNIOL-VILLARD
2013-04-25  1:16                     ` Chen Gang
2013-04-25  1:16                       ` Chen Gang
2013-04-25  1:16                   ` Chen Gang
2013-04-25  1:16                     ` Chen Gang

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=20130417100243.GV14496@n2100.arm.linux.org.uk \
    --to=linux@arm.linux.org.uk \
    --cc=dhowells@redhat.com \
    --cc=gang.chen@asianux.com \
    --cc=kgene.kim@samsung.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=plagnioj@jcrosoft.com \
    --cc=will.deacon@arm.com \
    /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.