From: Arnd Bergmann <arnd@arndb.de>
To: Will Deacon <will.deacon@arm.com>
Cc: "kgene.kim@samsung.com" <kgene.kim@samsung.com>,
Russell King - ARM Linux <linux@arm.linux.org.uk>,
Chen Gang <gang.chen@asianux.com>,
"dhowells@redhat.com" <dhowells@redhat.com>,
"linux-samsung-soc@vger.kernel.org"
<linux-samsung-soc@vger.kernel.org>,
"plagnioj@jcrosoft.com" <plagnioj@jcrosoft.com>,
"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 12:53:20 +0200 [thread overview]
Message-ID: <201304171253.20284.arnd@arndb.de> (raw)
In-Reply-To: <20130417100136.GB19492@mudshark.cambridge.arm.com>
On Wednesday 17 April 2013, Will Deacon wrote:
> > arm-linux-gnu-gcc -Wp,-MD,arch/arm/vfp/.vfphw.o.d -nostdinc -isystem /usr/lib/gcc/arm-linux-gnueabi/4.7.1/include -I/root/linux-next/arch/arm/include -Iarch/arm/include/generated -Iinclude -I/root/linux-next/arch/arm/include/uapi -Iarch/arm/include/generated/uapi -I/root/linux-next/include/uapi -Iinclude/generated/uapi -include /root/linux-next/include/linux/kconfig.h -D__KERNEL__ -mlittle-endian -Iarch/arm/mach-s5pv210/include -Iarch/arm/plat-samsung/include -D__ASSEMBLY__ -mabi=apcs-gnu -mno-thumb-interwork -marm -D__LINUX_ARM_ARCH__=4 -march=armv4t -mtune=arm9tdmi -include asm/unified.h -Wa,-mfpu=softvfp+vfp -mfloat-abi=soft -c -o arch/arm/vfp/vfphw.o arch/arm/vfp/vfphw.S
> >
> >
> > compiling err:
> >
> > arch/arm/vfp/vfphw.S: Assembler messages:
> > arch/arm/vfp/vfphw.S:295: Error: selected processor does not support ARM mode `mrrc p11,3,r0,r1,c0'
> > arch/arm/vfp/vfphw.S:295: Error: selected processor does not support ARM mode `mrrc p11,3,r0,r1,c1'
>
> The problem here is that you've ended up targetting a platform (s5pv210)
> that selects CPU_V7. VFP is then subsequently selected, but CONFIG_MMU=n, so
> 7TDMI and 9TDMI (v4 CPUs, no VFP) are selectable. Selecting either of those,
> causes these warnings.
>
> Unfortunately, I'm not sure how best to fix this. Most of the !MMU CPUs are
> tied to a particular board (lots of `if ARCH_INTEGRATOR' predicates), but we
> don't want to do that for 7tdmi.
>
> If we could enforce the strict exclusion of {<= ARMv5} and {ARMv6+} in the
> Kconfig, that would solve your problem.
I have not tried to get no-MMU kernels to build in general. I think the way
it should be done is to not offer any user-selectable CPU types at all but
always select the CPU from the board.
For randconfig tests, I would recommend turning on CONFIG_MMU unconditionally
using an appropriate KCONFIG_ALLCONFIG= file.
The alternative is to use the patch below, but it may be incomplete: I could
not find anything other than AT91x40 in the kernel that actually has an
ARM7TDMI or ARM9TDMI.
Arnd
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 84af266..c5e4ef0 100644
--- a/arch/arm/mm/Kconfig
+++ b/arch/arm/mm/Kconfig
@@ -6,7 +6,6 @@ comment "Processor Type"
# ARM7TDMI
config CPU_ARM7TDMI
- bool "Support ARM7TDMI processor"
depends on !MMU
select CPU_32v4T
select CPU_ABRT_LV4T
@@ -56,7 +55,6 @@ config CPU_ARM740T
# ARM9TDMI
config CPU_ARM9TDMI
- bool "Support ARM9TDMI processor"
depends on !MMU
select CPU_32v4T
select CPU_ABRT_NOMMU
WARNING: multiple messages have this Message-ID (diff)
From: arnd@arndb.de (Arnd Bergmann)
To: linux-arm-kernel@lists.infradead.org
Subject: [Suggestion] ARM:S5pv210: compiling issue for s5pv210 by using randconfig
Date: Wed, 17 Apr 2013 12:53:20 +0200 [thread overview]
Message-ID: <201304171253.20284.arnd@arndb.de> (raw)
In-Reply-To: <20130417100136.GB19492@mudshark.cambridge.arm.com>
On Wednesday 17 April 2013, Will Deacon wrote:
> > arm-linux-gnu-gcc -Wp,-MD,arch/arm/vfp/.vfphw.o.d -nostdinc -isystem /usr/lib/gcc/arm-linux-gnueabi/4.7.1/include -I/root/linux-next/arch/arm/include -Iarch/arm/include/generated -Iinclude -I/root/linux-next/arch/arm/include/uapi -Iarch/arm/include/generated/uapi -I/root/linux-next/include/uapi -Iinclude/generated/uapi -include /root/linux-next/include/linux/kconfig.h -D__KERNEL__ -mlittle-endian -Iarch/arm/mach-s5pv210/include -Iarch/arm/plat-samsung/include -D__ASSEMBLY__ -mabi=apcs-gnu -mno-thumb-interwork -marm -D__LINUX_ARM_ARCH__=4 -march=armv4t -mtune=arm9tdmi -include asm/unified.h -Wa,-mfpu=softvfp+vfp -mfloat-abi=soft -c -o arch/arm/vfp/vfphw.o arch/arm/vfp/vfphw.S
> >
> >
> > compiling err:
> >
> > arch/arm/vfp/vfphw.S: Assembler messages:
> > arch/arm/vfp/vfphw.S:295: Error: selected processor does not support ARM mode `mrrc p11,3,r0,r1,c0'
> > arch/arm/vfp/vfphw.S:295: Error: selected processor does not support ARM mode `mrrc p11,3,r0,r1,c1'
>
> The problem here is that you've ended up targetting a platform (s5pv210)
> that selects CPU_V7. VFP is then subsequently selected, but CONFIG_MMU=n, so
> 7TDMI and 9TDMI (v4 CPUs, no VFP) are selectable. Selecting either of those,
> causes these warnings.
>
> Unfortunately, I'm not sure how best to fix this. Most of the !MMU CPUs are
> tied to a particular board (lots of `if ARCH_INTEGRATOR' predicates), but we
> don't want to do that for 7tdmi.
>
> If we could enforce the strict exclusion of {<= ARMv5} and {ARMv6+} in the
> Kconfig, that would solve your problem.
I have not tried to get no-MMU kernels to build in general. I think the way
it should be done is to not offer any user-selectable CPU types at all but
always select the CPU from the board.
For randconfig tests, I would recommend turning on CONFIG_MMU unconditionally
using an appropriate KCONFIG_ALLCONFIG= file.
The alternative is to use the patch below, but it may be incomplete: I could
not find anything other than AT91x40 in the kernel that actually has an
ARM7TDMI or ARM9TDMI.
Arnd
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 84af266..c5e4ef0 100644
--- a/arch/arm/mm/Kconfig
+++ b/arch/arm/mm/Kconfig
@@ -6,7 +6,6 @@ comment "Processor Type"
# ARM7TDMI
config CPU_ARM7TDMI
- bool "Support ARM7TDMI processor"
depends on !MMU
select CPU_32v4T
select CPU_ABRT_LV4T
@@ -56,7 +55,6 @@ config CPU_ARM740T
# ARM9TDMI
config CPU_ARM9TDMI
- bool "Support ARM9TDMI processor"
depends on !MMU
select CPU_32v4T
select CPU_ABRT_NOMMU
next prev parent reply other threads:[~2013-04-17 10:53 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 [this message]
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
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=201304171253.20284.arnd@arndb.de \
--to=arnd@arndb.de \
--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=linux@arm.linux.org.uk \
--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.