All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] configs/arcturus_ucp1020: Enabling gcc-8.x & support for BR2_powerpc_8548 cores
@ 2020-10-15 14:48 Michael Durrant
  2020-10-25  9:29 ` Thomas Petazzoni
  2020-10-26 15:52 ` [Buildroot] [PATCH v2] " Michael Durrant
  0 siblings, 2 replies; 5+ messages in thread
From: Michael Durrant @ 2020-10-15 14:48 UTC (permalink / raw)
  To: buildroot

Enabling GCC-8.x with support for BR2_powerpc_8548 cores

The GCC-7.x compiler series was the last to support BR2_powerpc_SPE CPUs
within GCC.? After GCC-7.x support was removed as a default in buildroot,
some boards, including the arcturus_ucp1020_defconfig and
freescale_p1025twr_defconfig will fail to compile.

The GCC-8.x compiler series continues to support powerpc_8548 CPU
cores, but only as an --enable-obsoleted instruction set.?
This patch is enables the use of GCC-8.x and asserts the required
option to enable the powerpc_8548 instruction set for the?
arcturus_ucp1020 platform.

This Patch passes compilation and run tests with the arcturus/ppc-ucp1020
board.? This patch should address a noted job failure on GitLab CI
https://gitlab.com/buildroot.org/buildroot/-/jobs/779210821

Tested-by: Oleksandr G Zhadan <Oleks@ArcturusNetworks.com>
Signed-off-by: Oleksandr G Zhadan <Oleks@ArcturusNetworks.com>
Signed-off-by: Michael Durrant <mdurrant@ArcturusNetworks.com>
---
?configs/arcturus_ucp1020_defconfig | 1 +
?package/gcc/Config.in.host???????? | 2 +-
?2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/configs/arcturus_ucp1020_defconfig
b/configs/arcturus_ucp1020_defconfig
index 8b90f44750..4e4a84f9e9 100644
--- a/configs/arcturus_ucp1020_defconfig
+++ b/configs/arcturus_ucp1020_defconfig
@@ -6,6 +6,7 @@ BR2_powerpc_8548=y
?BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_4=y
?
?# System settings
+BR2_EXTRA_GCC_CONFIG_OPTIONS="--enable-obsolete"
?BR2_TARGET_GENERIC_HOSTNAME="UCP1020"
?BR2_TARGET_GENERIC_ISSUE="Welcome to Arcturus uCP1020 System on Module"
?BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
index 74999c800b..a21ba006ce 100644
--- a/package/gcc/Config.in.host
+++ b/package/gcc/Config.in.host
@@ -27,7 +27,7 @@ config BR2_GCC_VERSION_8_X
??????? depends on !BR2_or1k
??????? # powerpc spe support has been deprecated since gcc 8.x.
??????? # https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html
-?????? depends on !BR2_powerpc_SPE
+?????? depends on !BR2_powerpc_SPE || BR2_powerpc_8548
??????? select BR2_TOOLCHAIN_GCC_AT_LEAST_8
?
?config BR2_GCC_VERSION_9_X
-- 
2.26.2

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

* [Buildroot] [PATCH] configs/arcturus_ucp1020: Enabling gcc-8.x & support for BR2_powerpc_8548 cores
  2020-10-15 14:48 [Buildroot] [PATCH] configs/arcturus_ucp1020: Enabling gcc-8.x & support for BR2_powerpc_8548 cores Michael Durrant
@ 2020-10-25  9:29 ` Thomas Petazzoni
  2020-10-26 15:52 ` [Buildroot] [PATCH v2] " Michael Durrant
  1 sibling, 0 replies; 5+ messages in thread
From: Thomas Petazzoni @ 2020-10-25  9:29 UTC (permalink / raw)
  To: buildroot

Hello Michael,

On Thu, 15 Oct 2020 10:48:33 -0400
Michael Durrant <mdurrant@ArcturusNetworks.com> wrote:

> diff --git a/configs/arcturus_ucp1020_defconfig
> b/configs/arcturus_ucp1020_defconfig
> index 8b90f44750..4e4a84f9e9 100644
> --- a/configs/arcturus_ucp1020_defconfig
> +++ b/configs/arcturus_ucp1020_defconfig
> @@ -6,6 +6,7 @@ BR2_powerpc_8548=y
> ?BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_4=y
> ?
> ?# System settings
> +BR2_EXTRA_GCC_CONFIG_OPTIONS="--enable-obsolete"
> ?BR2_TARGET_GENERIC_HOSTNAME="UCP1020"
> ?BR2_TARGET_GENERIC_ISSUE="Welcome to Arcturus uCP1020 System on Module"
> ?BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
> diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
> index 74999c800b..a21ba006ce 100644
> --- a/package/gcc/Config.in.host
> +++ b/package/gcc/Config.in.host
> @@ -27,7 +27,7 @@ config BR2_GCC_VERSION_8_X
> ??????? depends on !BR2_or1k
> ??????? # powerpc spe support has been deprecated since gcc 8.x.
> ??????? # https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html
> -?????? depends on !BR2_powerpc_SPE
> +?????? depends on !BR2_powerpc_SPE || BR2_powerpc_8548
> ??????? select BR2_TOOLCHAIN_GCC_AT_LEAST_8
> ?
> ?config BR2_GCC_VERSION_9_X

Thanks for proposing a fix, but your fix is not correct: it will only
work for your own defconfig. Your fix makes gcc 8.x selectable again
for BR2_powerpc_8548, but only if building your defconfig will
--enable-obsolete be passed.

So instead, I would suggest to re-enable gcc 8.x for BR2_powerpc_SPE,
and have package/gcc/gcc.mk pass --enable-obsolete when on a
BR2_powerpc_SPE platform.

Could you have a look at doing this ?

Also, what is your plan to support this platform moving forward ? gcc
upstream has dropped SPE support entirely as of gcc 9.x.

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH v2] configs/arcturus_ucp1020: Enabling gcc-8.x & support for BR2_powerpc_8548 cores
  2020-10-15 14:48 [Buildroot] [PATCH] configs/arcturus_ucp1020: Enabling gcc-8.x & support for BR2_powerpc_8548 cores Michael Durrant
  2020-10-25  9:29 ` Thomas Petazzoni
@ 2020-10-26 15:52 ` Michael Durrant
  2020-10-26 16:09   ` Thomas Petazzoni
  2020-10-26 18:56   ` [Buildroot] [PATCH 1/1] package/gcc: Enabling gcc-8.x support for, " Michael Durrant
  1 sibling, 2 replies; 5+ messages in thread
From: Michael Durrant @ 2020-10-26 15:52 UTC (permalink / raw)
  To: buildroot

Enabling GCC-8.x with support for BR2_powerpc_8548 cores

The GCC-7.x compiler series was the last to support BR2_powerpc_SPE CPUs
within GCC.? After GCC-7.x support was removed as a default in buildroot,
some boards, including the arcturus_ucp1020_defconfig and
freescale_p1025twr_defconfig will fail to compile.

The GCC-8.x compiler series continues to support powerpc_8548 CPU
cores, but only as an --enable-obsoleted instruction set.
This patch is enables the use of GCC-8.x and asserts the required
option to enable the powerpc_8548 instruction set for the
arcturus_ucp1020 platform.

This Patch passes compilation and run tests with the arcturus/ppc-ucp1020
board.? This patch should address a noted job failure on GitLab CI
https://gitlab.com/buildroot.org/buildroot/-/jobs/779210821

Fixes: https://gitlab.com/buildroot.org/buildroot/-/jobs/779210821
Tested-by: Oleksandr G Zhadan <Oleks@ArcturusNetworks.com>
Signed-off-by: Oleksandr G Zhadan <Oleks@ArcturusNetworks.com>
Signed-off-by: Michael Durrant <mdurrant@ArcturusNetworks.com>

---
Changes v1 -> v2:
Changes patch to address a common architecture instead of a specific
platform as recommended by Thomas Petazzoni.

Signed-off-by: Oleksandr G Zhadan <Oleks@ArcturusNetworks.com>
Signed-off-by: Michael Durrant <mdurrant@ArcturusNetworks.com>

---
?package/gcc/Config.in.host | 2 +-
?package/gcc/gcc.mk???????? | 4 ++++
?2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
index 74999c800b..a21ba006ce 100644
--- a/package/gcc/Config.in.host
+++ b/package/gcc/Config.in.host
@@ -27,7 +27,7 @@ config BR2_GCC_VERSION_8_X
??????? depends on !BR2_or1k
??????? # powerpc spe support has been deprecated since gcc 8.x.
??????? # https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html
-?????? depends on !BR2_powerpc_SPE
+?????? depends on !BR2_powerpc_SPE || BR2_powerpc_8548
??????? select BR2_TOOLCHAIN_GCC_AT_LEAST_8

?config BR2_GCC_VERSION_9_X
diff --git a/package/gcc/gcc.mk b/package/gcc/gcc.mk
index f372857916..0c5d30d55c 100644
--- a/package/gcc/gcc.mk
+++ b/package/gcc/gcc.mk
@@ -219,6 +219,10 @@ ifeq ($(BR2_powerpc_SPE),y)
?HOST_GCC_COMMON_CONF_OPTS += \
??????? --enable-e500_double \
??????? --with-long-double-128
+ifeq ($(BR2_powerpc_8548),y)
+HOST_GCC_COMMON_CONF_OPTS += \
+?????? --enable-obsolete
+endif
?endif

?# Set default to Secure-PLT to prevent run-time
-- 
2.26.2

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

* [Buildroot] [PATCH v2] configs/arcturus_ucp1020: Enabling gcc-8.x & support for BR2_powerpc_8548 cores
  2020-10-26 15:52 ` [Buildroot] [PATCH v2] " Michael Durrant
@ 2020-10-26 16:09   ` Thomas Petazzoni
  2020-10-26 18:56   ` [Buildroot] [PATCH 1/1] package/gcc: Enabling gcc-8.x support for, " Michael Durrant
  1 sibling, 0 replies; 5+ messages in thread
From: Thomas Petazzoni @ 2020-10-26 16:09 UTC (permalink / raw)
  To: buildroot

Hello,

Thanks for following up quickly with a new proposal!

The commit title is incorrect: it is not related to
configs/arcturus_ucp1020.

On Mon, 26 Oct 2020 11:52:27 -0400
Michael Durrant <mdurrant@ArcturusNetworks.com> wrote:

> ?package/gcc/Config.in.host | 2 +-
> ?package/gcc/gcc.mk???????? | 4 ++++
> ?2 files changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
> index 74999c800b..a21ba006ce 100644
> --- a/package/gcc/Config.in.host
> +++ b/package/gcc/Config.in.host
> @@ -27,7 +27,7 @@ config BR2_GCC_VERSION_8_X
> ??????? depends on !BR2_or1k
> ??????? # powerpc spe support has been deprecated since gcc 8.x.
> ??????? # https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html
> -?????? depends on !BR2_powerpc_SPE
> +?????? depends on !BR2_powerpc_SPE || BR2_powerpc_8548

Is there a reason here to make this conditional on BR2_powerpc_8548 and
not just drop the !BR2_powerpc_SPE dependency ?

> ?config BR2_GCC_VERSION_9_X
> diff --git a/package/gcc/gcc.mk b/package/gcc/gcc.mk
> index f372857916..0c5d30d55c 100644
> --- a/package/gcc/gcc.mk
> +++ b/package/gcc/gcc.mk
> @@ -219,6 +219,10 @@ ifeq ($(BR2_powerpc_SPE),y)
> ?HOST_GCC_COMMON_CONF_OPTS += \
> ??????? --enable-e500_double \
> ??????? --with-long-double-128
> +ifeq ($(BR2_powerpc_8548),y)
> +HOST_GCC_COMMON_CONF_OPTS += \
> +?????? --enable-obsolete
> +endif

Same question.

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH 1/1] package/gcc: Enabling gcc-8.x support for, BR2_powerpc_8548 cores
  2020-10-26 15:52 ` [Buildroot] [PATCH v2] " Michael Durrant
  2020-10-26 16:09   ` Thomas Petazzoni
@ 2020-10-26 18:56   ` Michael Durrant
  1 sibling, 0 replies; 5+ messages in thread
From: Michael Durrant @ 2020-10-26 18:56 UTC (permalink / raw)
  To: buildroot

package/gcc: Enabling gcc-8.x support for? BR2_powerpc_8548 cores

The GCC-7.x compiler series was the last to support BR2_powerpc_SPE CPUs
within GCC.? After GCC-7.x support was removed as a default in buildroot,
some boards, including the arcturus_ucp1020_defconfig and
freescale_p1025twr_defconfig will fail to compile.

The GCC-8.x compiler series continues to support powerpc_spe CPU
cores, but only as an --enable-obsoleted instruction set.
This patch enables the use of GCC-8.x and asserts the required
option to enable the powerpc_spe instruction set.

This Patch passes compilation and run tests with the
arcturus/ppc-ucp1020? board.

Tested-by: Oleksandr G Zhadan <Oleks@ArcturusNetworks.com>

This patch should address a noted job failure on GitLab CI
https://gitlab.com/buildroot.org/buildroot/-/jobs/805461732

Fixes: https://gitlab.com/buildroot.org/buildroot/-/jobs/805461732
Signed-off-by: Oleksandr G Zhadan <Oleks@ArcturusNetworks.com>
Signed-off-by: Michael Durrant <mdurrant@ArcturusNetworks.com>
---
?package/gcc/Config.in.host | 2 +-
?package/gcc/gcc.mk???????? | 1 +
?2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
index 74999c800b..8ae778437b 100644
--- a/package/gcc/Config.in.host
+++ b/package/gcc/Config.in.host
@@ -27,7 +27,7 @@ config BR2_GCC_VERSION_8_X
??????? depends on !BR2_or1k
??????? # powerpc spe support has been deprecated since gcc 8.x.
??????? # https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html
-?????? depends on !BR2_powerpc_SPE
+?????? # it can still be built with --enable-obsolete
??????? select BR2_TOOLCHAIN_GCC_AT_LEAST_8

?config BR2_GCC_VERSION_9_X
diff --git a/package/gcc/gcc.mk b/package/gcc/gcc.mk
index f372857916..beac27ede4 100644
--- a/package/gcc/gcc.mk
+++ b/package/gcc/gcc.mk
@@ -217,6 +217,7 @@ endif
?# Enable proper double/long double for SPE ABI
?ifeq ($(BR2_powerpc_SPE),y)
?HOST_GCC_COMMON_CONF_OPTS += \
+?????? --enable-obsolete \
??????? --enable-e500_double \
??????? --with-long-double-128
?endif
-- 
2.26.2

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

end of thread, other threads:[~2020-10-26 18:56 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-15 14:48 [Buildroot] [PATCH] configs/arcturus_ucp1020: Enabling gcc-8.x & support for BR2_powerpc_8548 cores Michael Durrant
2020-10-25  9:29 ` Thomas Petazzoni
2020-10-26 15:52 ` [Buildroot] [PATCH v2] " Michael Durrant
2020-10-26 16:09   ` Thomas Petazzoni
2020-10-26 18:56   ` [Buildroot] [PATCH 1/1] package/gcc: Enabling gcc-8.x support for, " Michael Durrant

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.