All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/2] package/xenomai: smp support needs at least armv6
@ 2021-02-02 20:56 Romain Naour
  2021-02-02 20:56 ` [Buildroot] [PATCH 2/2] package/xenomai: disable cobalt for armv8 Romain Naour
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Romain Naour @ 2021-02-02 20:56 UTC (permalink / raw)
  To: buildroot

There are no autobuilder failures for this issue, but the following
defconfig:

BR2_arm=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_PACKAGE_XENOMAI=y
BR2_PACKAGE_XENOMAI_COBALT=y

See:
https://gitlab.denx.de/Xenomai/xenomai/-/blob/v3.1/lib/cobalt/arch/arm/include/asm/xenomai/features.h#L56

Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
 package/xenomai/Config.in | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/package/xenomai/Config.in b/package/xenomai/Config.in
index b655733528..b1b02373c3 100644
--- a/package/xenomai/Config.in
+++ b/package/xenomai/Config.in
@@ -110,6 +110,8 @@ endchoice
 config BR2_PACKAGE_XENOMAI_ENABLE_SMP
 	bool "Enable SMP support"
 	default y
+	# SMP not supported below armv6
+	depends on !BR2_ARM_CPU_ARMV4 || !BR2_ARM_CPU_ARMV5
 	help
 	  This option enables SMP support in Xenomai userspace.
 
-- 
2.29.2

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

* [Buildroot] [PATCH 2/2] package/xenomai: disable cobalt for armv8
  2021-02-02 20:56 [Buildroot] [PATCH 1/2] package/xenomai: smp support needs at least armv6 Romain Naour
@ 2021-02-02 20:56 ` Romain Naour
  2021-02-05  9:03   ` Yann E. MORIN
  2021-02-10 18:53   ` Peter Korsgaard
  2021-02-05  9:01 ` [Buildroot] [PATCH 1/2] package/xenomai: smp support needs at least armv6 Yann E. MORIN
  2021-02-10 18:53 ` Peter Korsgaard
  2 siblings, 2 replies; 6+ messages in thread
From: Romain Naour @ 2021-02-02 20:56 UTC (permalink / raw)
  To: buildroot

When a armv8 target is used in 32bits mode, xenomai fail to
detect the ARM architecture and abord the build.
(__ARM_ARCH_7A__ is not defined for armv8 cpus).

There are no autobuilder failures for this issue since cobalt
is never selected, but the following defconfig:

BR2_arm=y
BR2_cortex_a53=y
BR2_ARM_FPU_NEON_VFPV4=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_PACKAGE_XENOMAI=y
BR2_PACKAGE_XENOMAI_COBALT=y

This was initialy reproduced using the raspberrypi3_defconfig
with Xenomai package with cobalt selected.

In order to use Xenomai on raspberrypi3 in 32 bits mode,
you have to select BR2_cortex_a7. This partially revert the
commit a13a388dd444ee047f0e7b8c10f5e6c235ec5004.

See:
https://gitlab.denx.de/Xenomai/xenomai/-/blob/v3.1/lib/cobalt/arch/arm/include/asm/xenomai/features.h#L52

Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
 package/xenomai/Config.in | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/xenomai/Config.in b/package/xenomai/Config.in
index b1b02373c3..e060bcc46f 100644
--- a/package/xenomai/Config.in
+++ b/package/xenomai/Config.in
@@ -1,8 +1,8 @@
 config BR2_PACKAGE_XENOMAI_COBALT_ARCH_SUPPORTS
 	bool
 	default y
-	depends on BR2_i386 || BR2_x86_64 || (BR2_arm && !BR2_ARM_CPU_ARMV7M) || \
-		BR2_powerpc
+	depends on BR2_i386 || BR2_x86_64 || BR2_powerpc || \
+		(BR2_arm && !BR2_ARM_CPU_ARMV7M && !BR2_ARM_CPU_ARMV8A)
 
 comment "xenomai needs a glibc or uClibc toolchain w/ threads"
 	depends on BR2_USE_MMU
-- 
2.29.2

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

* [Buildroot] [PATCH 1/2] package/xenomai: smp support needs at least armv6
  2021-02-02 20:56 [Buildroot] [PATCH 1/2] package/xenomai: smp support needs at least armv6 Romain Naour
  2021-02-02 20:56 ` [Buildroot] [PATCH 2/2] package/xenomai: disable cobalt for armv8 Romain Naour
@ 2021-02-05  9:01 ` Yann E. MORIN
  2021-02-10 18:53 ` Peter Korsgaard
  2 siblings, 0 replies; 6+ messages in thread
From: Yann E. MORIN @ 2021-02-05  9:01 UTC (permalink / raw)
  To: buildroot

Romain, All,

On 2021-02-02 21:56 +0100, Romain Naour spake thusly:
> There are no autobuilder failures for this issue, but the following
> defconfig:
> 
> BR2_arm=y
> BR2_TOOLCHAIN_EXTERNAL=y
> BR2_PACKAGE_XENOMAI=y
> BR2_PACKAGE_XENOMAI_COBALT=y
> 
> See:
> https://gitlab.denx.de/Xenomai/xenomai/-/blob/v3.1/lib/cobalt/arch/arm/include/asm/xenomai/features.h#L56
> 
> Signed-off-by: Romain Naour <romain.naour@gmail.com>
> ---
>  package/xenomai/Config.in | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/package/xenomai/Config.in b/package/xenomai/Config.in
> index b655733528..b1b02373c3 100644
> --- a/package/xenomai/Config.in
> +++ b/package/xenomai/Config.in
> @@ -110,6 +110,8 @@ endchoice
>  config BR2_PACKAGE_XENOMAI_ENABLE_SMP
>  	bool "Enable SMP support"
>  	default y
> +	# SMP not supported below armv6
> +	depends on !BR2_ARM_CPU_ARMV4 || !BR2_ARM_CPU_ARMV5

This does not make sense:

  - if you are using armv4, then you are not using armv5, and thus the
    condition is true;

  - if you are using armv5, then you are not using armv4, and thus the
    condition is true;

  - if you are using neither armv4 nor armv5, then the condition is true.

So, the condition is always true...

I've changed that to:

    depends on !BR2_ARM_CPU_ARMV4 && !BR2_ARM_CPU_ARMV5

Applied to master with that fixed, thanks.

Regards,
Yann E. MORIN.

>  	help
>  	  This option enables SMP support in Xenomai userspace.
>  
> -- 
> 2.29.2
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

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

* [Buildroot] [PATCH 2/2] package/xenomai: disable cobalt for armv8
  2021-02-02 20:56 ` [Buildroot] [PATCH 2/2] package/xenomai: disable cobalt for armv8 Romain Naour
@ 2021-02-05  9:03   ` Yann E. MORIN
  2021-02-10 18:53   ` Peter Korsgaard
  1 sibling, 0 replies; 6+ messages in thread
From: Yann E. MORIN @ 2021-02-05  9:03 UTC (permalink / raw)
  To: buildroot

Romain, All,

On 2021-02-02 21:56 +0100, Romain Naour spake thusly:
> When a armv8 target is used in 32bits mode, xenomai fail to
> detect the ARM architecture and abord the build.
> (__ARM_ARCH_7A__ is not defined for armv8 cpus).
> 
> There are no autobuilder failures for this issue since cobalt
> is never selected, but the following defconfig:
> 
> BR2_arm=y
> BR2_cortex_a53=y
> BR2_ARM_FPU_NEON_VFPV4=y
> BR2_TOOLCHAIN_EXTERNAL=y
> BR2_PACKAGE_XENOMAI=y
> BR2_PACKAGE_XENOMAI_COBALT=y
> 
> This was initialy reproduced using the raspberrypi3_defconfig
> with Xenomai package with cobalt selected.
> 
> In order to use Xenomai on raspberrypi3 in 32 bits mode,
> you have to select BR2_cortex_a7. This partially revert the
> commit a13a388dd444ee047f0e7b8c10f5e6c235ec5004.
> 
> See:
> https://gitlab.denx.de/Xenomai/xenomai/-/blob/v3.1/lib/cobalt/arch/arm/include/asm/xenomai/features.h#L52
> 
> Signed-off-by: Romain Naour <romain.naour@gmail.com>
> ---
>  package/xenomai/Config.in | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/package/xenomai/Config.in b/package/xenomai/Config.in
> index b1b02373c3..e060bcc46f 100644
> --- a/package/xenomai/Config.in
> +++ b/package/xenomai/Config.in
> @@ -1,8 +1,8 @@
>  config BR2_PACKAGE_XENOMAI_COBALT_ARCH_SUPPORTS
>  	bool
>  	default y
> -	depends on BR2_i386 || BR2_x86_64 || (BR2_arm && !BR2_ARM_CPU_ARMV7M) || \
> -		BR2_powerpc
> +	depends on BR2_i386 || BR2_x86_64 || BR2_powerpc || \
> +		(BR2_arm && !BR2_ARM_CPU_ARMV7M && !BR2_ARM_CPU_ARMV8A)

This condition is starting to look pretty ugly, now... I've changed that
to a series of conditional 'default y if $ARCH' statements instead.

Applied to master, thanks.

Regards,
Yann E. MORIN.

>  comment "xenomai needs a glibc or uClibc toolchain w/ threads"
>  	depends on BR2_USE_MMU
> -- 
> 2.29.2
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

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

* [Buildroot] [PATCH 1/2] package/xenomai: smp support needs at least armv6
  2021-02-02 20:56 [Buildroot] [PATCH 1/2] package/xenomai: smp support needs at least armv6 Romain Naour
  2021-02-02 20:56 ` [Buildroot] [PATCH 2/2] package/xenomai: disable cobalt for armv8 Romain Naour
  2021-02-05  9:01 ` [Buildroot] [PATCH 1/2] package/xenomai: smp support needs at least armv6 Yann E. MORIN
@ 2021-02-10 18:53 ` Peter Korsgaard
  2 siblings, 0 replies; 6+ messages in thread
From: Peter Korsgaard @ 2021-02-10 18:53 UTC (permalink / raw)
  To: buildroot

>>>>> "Romain" == Romain Naour <romain.naour@gmail.com> writes:

 > There are no autobuilder failures for this issue, but the following
 > defconfig:

 > BR2_arm=y
 > BR2_TOOLCHAIN_EXTERNAL=y
 > BR2_PACKAGE_XENOMAI=y
 > BR2_PACKAGE_XENOMAI_COBALT=y

 > See:
 > https://gitlab.denx.de/Xenomai/xenomai/-/blob/v3.1/lib/cobalt/arch/arm/include/asm/xenomai/features.h#L56

 > Signed-off-by: Romain Naour <romain.naour@gmail.com>

Committed to 2020.02.x and 2020.11.x, thanks.

-- 
Bye, Peter Korsgaard

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

* [Buildroot] [PATCH 2/2] package/xenomai: disable cobalt for armv8
  2021-02-02 20:56 ` [Buildroot] [PATCH 2/2] package/xenomai: disable cobalt for armv8 Romain Naour
  2021-02-05  9:03   ` Yann E. MORIN
@ 2021-02-10 18:53   ` Peter Korsgaard
  1 sibling, 0 replies; 6+ messages in thread
From: Peter Korsgaard @ 2021-02-10 18:53 UTC (permalink / raw)
  To: buildroot

>>>>> "Romain" == Romain Naour <romain.naour@gmail.com> writes:

 > When a armv8 target is used in 32bits mode, xenomai fail to
 > detect the ARM architecture and abord the build.
 > (__ARM_ARCH_7A__ is not defined for armv8 cpus).

 > There are no autobuilder failures for this issue since cobalt
 > is never selected, but the following defconfig:

 > BR2_arm=y
 > BR2_cortex_a53=y
 > BR2_ARM_FPU_NEON_VFPV4=y
 > BR2_TOOLCHAIN_EXTERNAL=y
 > BR2_PACKAGE_XENOMAI=y
 > BR2_PACKAGE_XENOMAI_COBALT=y

 > This was initialy reproduced using the raspberrypi3_defconfig
 > with Xenomai package with cobalt selected.

 > In order to use Xenomai on raspberrypi3 in 32 bits mode,
 > you have to select BR2_cortex_a7. This partially revert the
 > commit a13a388dd444ee047f0e7b8c10f5e6c235ec5004.

 > See:
 > https://gitlab.denx.de/Xenomai/xenomai/-/blob/v3.1/lib/cobalt/arch/arm/include/asm/xenomai/features.h#L52

 > Signed-off-by: Romain Naour <romain.naour@gmail.com>

Committed to 2020.02.x and 2020.11.x, thanks.

-- 
Bye, Peter Korsgaard

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

end of thread, other threads:[~2021-02-10 18:53 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-02 20:56 [Buildroot] [PATCH 1/2] package/xenomai: smp support needs at least armv6 Romain Naour
2021-02-02 20:56 ` [Buildroot] [PATCH 2/2] package/xenomai: disable cobalt for armv8 Romain Naour
2021-02-05  9:03   ` Yann E. MORIN
2021-02-10 18:53   ` Peter Korsgaard
2021-02-05  9:01 ` [Buildroot] [PATCH 1/2] package/xenomai: smp support needs at least armv6 Yann E. MORIN
2021-02-10 18:53 ` Peter Korsgaard

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.