Add ARM11 MPCore CPU target support
PATCH 1/1 Add ARM11 MPCore CPU target support
--- arch/Config.in.arm | 8 ++++++++ 1 file changed, 8 insertions(+)
arch/Config.in.arm +8 -0
@@ -104,6 +104,13 @@ config BR2_arm1176jzf_s select BR2_ARM_CPU_HAS_THUMB select BR2_ARM_CPU_ARMV6 select BR2_ARCH_HAS_MMU_OPTIONAL +config BR2_arm11mpcore + bool "arm11mpcore" + select BR2_ARM_CPU_HAS_ARM + select BR2_ARM_CPU_HAS_VFPV2 + select BR2_ARM_CPU_HAS_THUMB + select BR2_ARM_CPU_ARMV6 + select BR2_ARCH_HAS_MMU_OPTIONAL config BR2_cortex_a5 bool "cortex-A5" select BR2_ARM_CPU_HAS_ARM
@@ -419,6 +426,7 @@ config BR2_GCC_TARGET_CPU default "arm1136jf-s" if BR2_arm1136jf_s default "arm1176jz-s" if BR2_arm1176jz_s default "arm1176jzf-s" if BR2_arm1176jzf_s + default "mpcore" if BR2_arm11mpcore default "cortex-a5" if BR2_cortex_a5 default "cortex-a7" if BR2_cortex_a7 default "cortex-a8" if BR2_cortex_a8
Signature · 1 line
2.6.2
PATCH 1/1 Add ARM11 MPCore CPU target support
Sergi, All,
On 2015-11-28 10:59 +0100, Sergi Granell spake thusly:
Quoted 10 lines
Signed-off-by Sergi Granell <[email protected]>--- arch/Config.in.arm | 8 ++++++++ 1 file changed, 8 insertions(+)arch/Config.in.arm +0
-0
arch/Config.in.arm config BR2_arm1176jzf_s · line 110
Quoted 7 lines
arch/Config.in.arm +4
-0@@ -104,6 +104,13 @@ config BR2_arm1176jzf_s select BR2_ARM_CPU_HAS_THUMB select BR2_ARM_CPU_ARMV6 select BR2_ARCH_HAS_MMU_OPTIONAL +config BR2_arm11mpcore + bool "arm11mpcore" + select BR2_ARM_CPU_HAS_ARM + select BR2_ARM_CPU_HAS_VFPV2
I wonder if we should not make VFP optional, and change the CPU nme on whether the user has enabled VFP, like:
config BR2_arm11mpcore
bool "mpcore"
[...]
select BR2_ARM_CPU_MAYBE_HAS_VFPV2
[...]
config BR2_GCC_TARGET_CPU
[...]
default "mpcore" if BR2_arm11mpcore && BR2_ARM_CPU_HAS_VFPV2
default "mpcorenovfp" if BR2_arm11mpcore
[...](note that the second default does not need !VFPV2, since Kconfig will stop on the first matching default, so the second will only match if the first does not, which means it would only match without a VFP).
(also note that I just named the prompt 'mpcore' instead of 'arm11mpcore', since that's how gcc knows it as).
Also, since the selection gets a bit more tricky, you need to explain that in the commit log, with something along the lines of (feel free to adapt to your own taste! ;-) ):
gcc differentiates the mpcore-with-vfp from the mcpore-without-vfp CPUs. The former is named just 'mpcore', while the latter is named 'mpcorenovfp'.
We only add one entry, 'mpcore' and let the user select whether or not to use the VFP. We then name the CPU according to the user's selection.
Care to fix and resend, please?
Regards,
Yann E. MORIN.
Quoted 21 lines
arch/Config.in.arm +4
-0+ select BR2_ARM_CPU_HAS_THUMB + select BR2_ARM_CPU_ARMV6 + select BR2_ARCH_HAS_MMU_OPTIONAL config BR2_cortex_a5 bool "cortex-A5" select BR2_ARM_CPU_HAS_ARM@@ -419,6 +426,7 @@ config BR2_GCC_TARGET_CPU default "arm1136jf-s" if BR2_arm1136jf_s default "arm1176jz-s" if BR2_arm1176jz_s default "arm1176jzf-s" if BR2_arm1176jzf_s + default "mpcore" if BR2_arm11mpcore default "cortex-a5" if BR2_cortex_a5 default "cortex-a7" if BR2_cortex_a7 default "cortex-a8" if BR2_cortex_a8Signature · 6 lines
2.6.2 _______________________________________________ buildroot mailing list buildroot at busybox.net http://lists.busybox.net/mailman/listinfo/buildroot
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH 1/1 Add ARM11 MPCore CPU target support
Yann,
Sergi sent a v2 of his patch... but your suggestion doesn't work. See below.
Quoted 14 lines · Yann E. MORIN
I wonder if we should not make VFP optional, and change the CPU nme on whether the user has enabled VFP, like:
config BR2_arm11mpcore bool "mpcore" [...] select BR2_ARM_CPU_MAYBE_HAS_VFPV2 [...] config BR2_GCC_TARGET_CPU [...] default "mpcore" if BR2_arm11mpcore && BR2_ARM_CPU_HAS_VFPV2 default "mpcorenovfp" if BR2_arm11mpcore [...]
This doesn't work, because BR2_ARM_CPU_HAS_VFPV2 is not a user visible option, and there is nothing that selects it in the current Buildroot. Therefore the "mpcore" case can never be reached.
Consequently, I am tempted to take v1 of Sergi's patch. Yes, it means we don't support the no-VFP variant of ARM11 MPCore, but I'm not sure there are lots of ARM11 MPCore without a VFP, so maybe supporting mpcorenovfp is not worth the effort for the moment.
Thoughts?
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 1/1 Add ARM11 MPCore CPU target support
Thomas, All,
On 2015-12-23 23:10 +0100, Thomas Petazzoni spake thusly:
Quoted 24 lines
Sergi sent a v2 of his patch... but your suggestion doesn't work. See below.
Quoted 14 lines · Yann E. MORIN
I wonder if we should not make VFP optional, and change the CPU nme on whether the user has enabled VFP, like:
config BR2_arm11mpcore bool "mpcore" [...] select BR2_ARM_CPU_MAYBE_HAS_VFPV2 [...] config BR2_GCC_TARGET_CPU [...] default "mpcore" if BR2_arm11mpcore && BR2_ARM_CPU_HAS_VFPV2 default "mpcorenovfp" if BR2_arm11mpcore [...]This doesn't work, because
BR2_ARM_CPU_HAS_VFPV2is not a user visible option, and there is nothing that selects it in the current Buildroot. Therefore the "mpcore" case can never be reached.
Quoted 6 lines
Consequently, I am tempted to take v1 of Sergi's patch. Yes, it means we don't support the no-VFP variant of ARM11 MPCore, but I'm not sure there are lots of ARM11 MPCore without a VFP, so maybe supporting mpcorenovfp is not worth the effort for the moment.
Thoughts?
I think that with the newly VFP stuff we committed today, we could slightly rework that patch and make it work, no? ;-)
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH 1/1 Add ARM11 MPCore CPU target support
Yann,
Quoted 2 lines · Yann E. MORIN
I think that with the newly VFP stuff we committed today, we could slightly rework that patch and make it work, no? ;-)
Absolutely :)
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com