mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-09-30 14:01:57 -09:00
boot/mv-ddr-marvell: fix build with gcc 12
gcc 12 added a warning that triggers on access to low addresses. Add a
patch to allow access since this is normal for low level code.
Rebase our existing patch on top. While at it, add also a proper
Upstream tag.
Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/4795673785
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 651429d0b8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
committed by
Peter Korsgaard
parent
31fa0dcce5
commit
5a94d7c160
@@ -0,0 +1,49 @@
|
|||||||
|
From 4796a1eacc6a5ccb623e7d2e46a5196f8335e496 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Baruch Siach <baruch@tkos.co.il>
|
||||||
|
Date: Fri, 11 Aug 2023 11:19:49 +0300
|
||||||
|
Subject: [PATCH] Allow access to low addresses with gcc 12
|
||||||
|
|
||||||
|
gcc 12 added a warning that triggers on access to low addresses. Add a
|
||||||
|
compile option that allows access to lower addresses.
|
||||||
|
|
||||||
|
Add the 'cc_option' macro to avoid the compile option when the compiler
|
||||||
|
does not support it.
|
||||||
|
|
||||||
|
This fixes build with TF-A. TF-A added a similar fix in commit
|
||||||
|
dea23e245fb89.
|
||||||
|
|
||||||
|
See some more details in
|
||||||
|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105523
|
||||||
|
|
||||||
|
Upstream: https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell/pull/42
|
||||||
|
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
|
||||||
|
---
|
||||||
|
Makefile | 5 +++++
|
||||||
|
1 file changed, 5 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/Makefile b/Makefile
|
||||||
|
index 3f0dd89a7381..045284c30cbc 100644
|
||||||
|
--- a/Makefile
|
||||||
|
+++ b/Makefile
|
||||||
|
@@ -108,6 +108,10 @@ MV_DDR_VER_CSRC = mv_ddr_build_message.c
|
||||||
|
# create mv_ddr build message and version string source file
|
||||||
|
$(shell $(MV_DDR_ROOT)/scripts/localversion.sh $(MV_DDR_ROOT) $(MV_DDR_VER_CSRC) 2> /dev/null)
|
||||||
|
|
||||||
|
+define cc_option
|
||||||
|
+ $(shell if $(CC) $(1) -c -x c /dev/null -o /dev/null >/dev/null 2>&1; then echo $(1); fi )
|
||||||
|
+endef
|
||||||
|
+
|
||||||
|
# ******************
|
||||||
|
# U-BOOT SPL SUPPORT
|
||||||
|
# ******************
|
||||||
|
@@ -331,6 +335,7 @@ OBJ_DIR ?= $(MV_DDR_ROOT)
|
||||||
|
CFLAGS = -DMV_DDR_ATF -DCONFIG_DDR4
|
||||||
|
CFLAGS += -Wall -Werror -Os -ffreestanding -mlittle-endian -g -gdwarf-2 -nostdinc
|
||||||
|
CFLAGS += -march=armv8-a -fpie
|
||||||
|
+CFLAGS += $(call cc_option, --param=min-pagesize=0)
|
||||||
|
|
||||||
|
# PLATFORM is set in ble/ble.mk
|
||||||
|
ifneq ($(findstring a80x0,$(PLATFORM)),)
|
||||||
|
--
|
||||||
|
2.40.1
|
||||||
|
|
||||||
@@ -10,25 +10,24 @@ routines.
|
|||||||
The mv-ddr-marvell Makefile provides no way to add custom CFLAGS. Patch
|
The mv-ddr-marvell Makefile provides no way to add custom CFLAGS. Patch
|
||||||
Makefile to disable stack protection.
|
Makefile to disable stack protection.
|
||||||
|
|
||||||
|
Upstream: not applicable; Buildroot specific
|
||||||
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
|
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
|
||||||
---
|
|
||||||
Upstream status: not applicable; Buildroot specific
|
|
||||||
---
|
---
|
||||||
Makefile | 1 +
|
Makefile | 1 +
|
||||||
1 file changed, 1 insertion(+)
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
diff --git a/Makefile b/Makefile
|
diff --git a/Makefile b/Makefile
|
||||||
index 3f0dd89a7381..feae75cc16e4 100644
|
index 045284c30cbc..9641354bcf86 100644
|
||||||
--- a/Makefile
|
--- a/Makefile
|
||||||
+++ b/Makefile
|
+++ b/Makefile
|
||||||
@@ -331,6 +331,7 @@ OBJ_DIR ?= $(MV_DDR_ROOT)
|
@@ -336,6 +336,7 @@ CFLAGS = -DMV_DDR_ATF -DCONFIG_DDR4
|
||||||
CFLAGS = -DMV_DDR_ATF -DCONFIG_DDR4
|
|
||||||
CFLAGS += -Wall -Werror -Os -ffreestanding -mlittle-endian -g -gdwarf-2 -nostdinc
|
CFLAGS += -Wall -Werror -Os -ffreestanding -mlittle-endian -g -gdwarf-2 -nostdinc
|
||||||
CFLAGS += -march=armv8-a -fpie
|
CFLAGS += -march=armv8-a -fpie
|
||||||
|
CFLAGS += $(call cc_option, --param=min-pagesize=0)
|
||||||
+CFLAGS += -fno-stack-protector
|
+CFLAGS += -fno-stack-protector
|
||||||
|
|
||||||
# PLATFORM is set in ble/ble.mk
|
# PLATFORM is set in ble/ble.mk
|
||||||
ifneq ($(findstring a80x0,$(PLATFORM)),)
|
ifneq ($(findstring a80x0,$(PLATFORM)),)
|
||||||
--
|
--
|
||||||
2.35.1
|
2.40.1
|
||||||
|
|
||||||
Reference in New Issue
Block a user