All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] arch-armv4: Allow -march=armv4
@ 2021-06-10  2:17 Khem Raj
  2021-06-16 23:59 ` [OE-core] [PATCH] arch-armv4: Allow -march=armv4 --> remove qemuarmv5.conf ? Randy MacLeod
  0 siblings, 1 reply; 3+ messages in thread
From: Khem Raj @ 2021-06-10  2:17 UTC (permalink / raw)
  To: openembedded-core; +Cc: Khem Raj, Andrea Adami

Even though it is deprecated in GCC 6 [1] it has not yet been
removed from gcc upstream. We do have active machines in OE
ecosystem which use armv4 ( SA11xx ) e.g. collie in meta-handheld
so until upstream gcc takes next step to remove them
lets support armv4 again, we are still carrying the relevant gcc patch
to support v4 BX fix.

[1] https://gcc.gnu.org/gcc-6/changes.html#arm

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Andrea Adami <andrea.adami@gmail.com>
---
 meta/conf/machine/include/arm/arch-armv4.inc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/conf/machine/include/arm/arch-armv4.inc b/meta/conf/machine/include/arm/arch-armv4.inc
index fac2bdf952..b71739c20a 100644
--- a/meta/conf/machine/include/arm/arch-armv4.inc
+++ b/meta/conf/machine/include/arm/arch-armv4.inc
@@ -2,7 +2,7 @@ DEFAULTTUNE ?= "armv4"
 
 TUNEVALID[arm] = "Enable ARM instruction set"
 TUNEVALID[armv4] = "Enable instructions for ARMv4"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv4', ' -march=armv4t', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv4', ' -march=armv4${ARMPKGSFX_THUMB}', '', d)}"
 # enable --fix-v4bx when we have armv4 in TUNE_FEATURES, but then disable it when we have also armv5 or thumb
 # maybe we should extend bb.utils.contains to support check for any checkvalues in value, now it does 
 # checkvalues.issubset(val) which cannot be used for negative test of foo neither bar in value
-- 
2.32.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [OE-core] [PATCH] arch-armv4: Allow -march=armv4 --> remove qemuarmv5.conf ?
  2021-06-10  2:17 [PATCH] arch-armv4: Allow -march=armv4 Khem Raj
@ 2021-06-16 23:59 ` Randy MacLeod
  2021-06-17  0:40   ` Khem Raj
  0 siblings, 1 reply; 3+ messages in thread
From: Randy MacLeod @ 2021-06-16 23:59 UTC (permalink / raw)
  To: Khem Raj, openembedded-core, Jon Mason, Bruce Ashfield; +Cc: Andrea Adami

On 2021-06-09 10:17 p.m., Khem Raj wrote:
> Even though it is deprecated in GCC 6 [1] it has not yet been
> removed from gcc upstream. We do have active machines in OE
> ecosystem which use armv4 ( SA11xx ) e.g. collie in meta-handheld
> so until upstream gcc takes next step to remove them
> lets support armv4 again, we are still carrying the relevant gcc patch
> to support v4 BX fix.
> 
> [1] https://gcc.gnu.org/gcc-6/changes.html#arm


Huh, I was going to send an email about removing support for qemuarmv5.
Do we follow gcc or drop older arches before that?

Our current list of qemu machines on master is:

meta/conf/machine/qemuarm64.conf
meta/conf/machine/qemuarm.conf
meta/conf/machine/qemuarmv5.conf
meta/conf/machine/qemumips64.conf
meta/conf/machine/qemumips.conf
meta/conf/machine/qemuppc64.conf
meta/conf/machine/qemuppc.conf
meta/conf/machine/qemuriscv32.conf
meta/conf/machine/qemuriscv64.conf
meta/conf/machine/qemux86-64.conf
meta/conf/machine/qemux86.conf


qemuarmv5 was added in:

commit 6fc70eb4f3494bee2be10ee24fe3ea1c8b5ff988
Author: Jon Mason <jdmason@kudzu.us>
Date:   Tue Mar 5 17:32:19 2019

     qemuarm: Swap for an arm7ve (A15) configuration

     Add new QEMU BSP for a Arm Cortex-A15 system and use this as qemuarm,
     moving the old armv5te Versatile PB based machine to qemuarmv5.

     The new machine uses the QEMU virt machine type, which should be
     faster to emulate and updates the qemuarm support to a modern
     architecture.

     Signed-off-by: Jon Mason <jdmason@kudzu.us>
     Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>


../Randy

> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> Cc: Andrea Adami <andrea.adami@gmail.com>
> ---
>   meta/conf/machine/include/arm/arch-armv4.inc | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/meta/conf/machine/include/arm/arch-armv4.inc b/meta/conf/machine/include/arm/arch-armv4.inc
> index fac2bdf952..b71739c20a 100644
> --- a/meta/conf/machine/include/arm/arch-armv4.inc
> +++ b/meta/conf/machine/include/arm/arch-armv4.inc
> @@ -2,7 +2,7 @@ DEFAULTTUNE ?= "armv4"
>   
>   TUNEVALID[arm] = "Enable ARM instruction set"
>   TUNEVALID[armv4] = "Enable instructions for ARMv4"
> -TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv4', ' -march=armv4t', '', d)}"
> +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv4', ' -march=armv4${ARMPKGSFX_THUMB}', '', d)}"
>   # enable --fix-v4bx when we have armv4 in TUNE_FEATURES, but then disable it when we have also armv5 or thumb
>   # maybe we should extend bb.utils.contains to support check for any checkvalues in value, now it does
>   # checkvalues.issubset(val) which cannot be used for negative test of foo neither bar in value
> 
> 
> 
> 
> 


-- 
# Randy MacLeod
# Wind River Linux

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [OE-core] [PATCH] arch-armv4: Allow -march=armv4 --> remove qemuarmv5.conf ?
  2021-06-16 23:59 ` [OE-core] [PATCH] arch-armv4: Allow -march=armv4 --> remove qemuarmv5.conf ? Randy MacLeod
@ 2021-06-17  0:40   ` Khem Raj
  0 siblings, 0 replies; 3+ messages in thread
From: Khem Raj @ 2021-06-17  0:40 UTC (permalink / raw)
  To: Randy MacLeod; +Cc: Andrea Adami, Bruce Ashfield, Jon Mason, openembedded-core

[-- Attachment #1: Type: text/plain, Size: 3548 bytes --]

On Wed, Jun 16, 2021 at 4:59 PM Randy MacLeod <randy.macleod@windriver.com>
wrote:

> On 2021-06-09 10:17 p.m., Khem Raj wrote:
> > Even though it is deprecated in GCC 6 [1] it has not yet been
> > removed from gcc upstream. We do have active machines in OE
> > ecosystem which use armv4 ( SA11xx ) e.g. collie in meta-handheld
> > so until upstream gcc takes next step to remove them
> > lets support armv4 again, we are still carrying the relevant gcc patch
> > to support v4 BX fix.
> >
> > [1] https://gcc.gnu.org/gcc-6/changes.html#arm
>
>
> Huh, I was going to send an email about removing support for qemuarmv5.
> Do we follow gcc or drop older arches before that?
>

We use armv5te for default tune for that
Machine which is still supported and so is armv4t
Armv4 is a special case where I kept it even after it’s deprecated since
there are users in OE community who are actively using it with master so we
will stretch it to the point where gcc removes it and then perhaps remove
it so no immediate action is needed

As far as armv5 ( without t ) is concerned we can remove it


> Our current list of qemu machines on master is:
>
> meta/conf/machine/qemuarm64.conf
> meta/conf/machine/qemuarm.conf
> meta/conf/machine/qemuarmv5.conf
> meta/conf/machine/qemumips64.conf
> meta/conf/machine/qemumips.conf
> meta/conf/machine/qemuppc64.conf
> meta/conf/machine/qemuppc.conf
> meta/conf/machine/qemuriscv32.conf
> meta/conf/machine/qemuriscv64.conf
> meta/conf/machine/qemux86-64.conf
> meta/conf/machine/qemux86.conf
>
>
> qemuarmv5 was added in:
>
> commit 6fc70eb4f3494bee2be10ee24fe3ea1c8b5ff988
> Author: Jon Mason <jdmason@kudzu.us>
> Date:   Tue Mar 5 17:32:19 2019
>
>      qemuarm: Swap for an arm7ve (A15) configuration
>
>      Add new QEMU BSP for a Arm Cortex-A15 system and use this as qemuarm,
>      moving the old armv5te Versatile PB based machine to qemuarmv5.
>
>      The new machine uses the QEMU virt machine type, which should be
>      faster to emulate and updates the qemuarm support to a modern
>      architecture.
>
>      Signed-off-by: Jon Mason <jdmason@kudzu.us>
>      Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
>
>
> ../Randy
>
> >
> > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > Cc: Andrea Adami <andrea.adami@gmail.com>
> > ---
> >   meta/conf/machine/include/arm/arch-armv4.inc | 2 +-
> >   1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/meta/conf/machine/include/arm/arch-armv4.inc
> b/meta/conf/machine/include/arm/arch-armv4.inc
> > index fac2bdf952..b71739c20a 100644
> > --- a/meta/conf/machine/include/arm/arch-armv4.inc
> > +++ b/meta/conf/machine/include/arm/arch-armv4.inc
> > @@ -2,7 +2,7 @@ DEFAULTTUNE ?= "armv4"
> >
> >   TUNEVALID[arm] = "Enable ARM instruction set"
> >   TUNEVALID[armv4] = "Enable instructions for ARMv4"
> > -TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv4', '
> -march=armv4t', '', d)}"
> > +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv4', '
> -march=armv4${ARMPKGSFX_THUMB}', '', d)}"
> >   # enable --fix-v4bx when we have armv4 in TUNE_FEATURES, but then
> disable it when we have also armv5 or thumb
> >   # maybe we should extend bb.utils.contains to support check for any
> checkvalues in value, now it does
> >   # checkvalues.issubset(val) which cannot be used for negative test of
> foo neither bar in value
> >
> >
> >
> > 
> >
>
>
> --
> # Randy MacLeod
> # Wind River Linux
>

[-- Attachment #2: Type: text/html, Size: 4924 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-06-17  0:40 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-10  2:17 [PATCH] arch-armv4: Allow -march=armv4 Khem Raj
2021-06-16 23:59 ` [OE-core] [PATCH] arch-armv4: Allow -march=armv4 --> remove qemuarmv5.conf ? Randy MacLeod
2021-06-17  0:40   ` Khem Raj

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.