mirror of
https://git.yoctoproject.org/meta-arm
synced 2026-06-05 14:30:10 +00:00
arm-bsp/fvp-baser-aemv8r64: Rebase u-boot patches onto v2022.10
* 0004-armv8-ARMV8_SWITCH_TO_EL1-improvements.patch config ARMV8_SWITCH_TO_EL1 already exists in upstream. Signed-off-by: Qi Feng <qi.feng@arm.com> Issue-Id: SCM-4874 Change-Id: I690484a031bc7bfa1c9a0d8a145271874b26239a Signed-off-by: Jon Mason <jon.mason@arm.com>
This commit is contained in:
@@ -9,7 +9,7 @@ require conf/machine/include/arm/armv8r/arch-armv8r64.inc
|
||||
EXTRA_IMAGEDEPENDS += "boot-wrapper-aarch64"
|
||||
|
||||
PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
|
||||
PREFERRED_VERSION_u-boot ?= "2022.07"
|
||||
PREFERRED_VERSION_u-boot ?= "2022.10"
|
||||
|
||||
KERNEL_IMAGETYPE = "Image"
|
||||
KERNEL_DEVICETREE = "arm/fvp-baser-aemv8r64.dtb"
|
||||
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
From 80c64d0c035a5cd0cb23c7b01be39f25e15c7193 Mon Sep 17 00:00:00 2001
|
||||
From 181f5efb401ffaa5ab0898b07a976796f75e502a Mon Sep 17 00:00:00 2001
|
||||
From: Qi Feng <qi.feng@arm.com>
|
||||
Date: Tue, 26 Jul 2022 18:13:23 +0800
|
||||
Subject: [PATCH 2/9] vexpress64: add MPU memory map for the BASER_FVP
|
||||
@@ -17,7 +17,7 @@ Signed-off-by: Qi Feng <qi.feng@arm.com>
|
||||
1 file changed, 22 insertions(+)
|
||||
|
||||
diff --git a/board/armltd/vexpress64/vexpress64.c b/board/armltd/vexpress64/vexpress64.c
|
||||
index 709ebf3fb0..1791cd986f 100644
|
||||
index af326dc6f4..2310d18eb7 100644
|
||||
--- a/board/armltd/vexpress64/vexpress64.c
|
||||
+++ b/board/armltd/vexpress64/vexpress64.c
|
||||
@@ -19,6 +19,7 @@
|
||||
|
||||
+6
-6
@@ -1,4 +1,4 @@
|
||||
From 61a2df4467c13bbc83bff8a3429e9ebb4b957b56 Mon Sep 17 00:00:00 2001
|
||||
From 07cc3e4af3def76d92faf39712d4fd8717b21d2b Mon Sep 17 00:00:00 2001
|
||||
From: Peter Hoyes <Peter.Hoyes@arm.com>
|
||||
Date: Fri, 10 Dec 2021 11:41:19 +0000
|
||||
Subject: [PATCH 3/9] armv8: Allow disabling exception vectors on non-SPL
|
||||
@@ -27,7 +27,7 @@ Change-Id: I0cf0fc6d7ef4d45791411cf1f67c65e198cc8b2b
|
||||
4 files changed, 13 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/cpu/armv8/Kconfig b/arch/arm/cpu/armv8/Kconfig
|
||||
index 09f3f50fa2..031faa909c 100644
|
||||
index 1305238c9d..dec4be0e30 100644
|
||||
--- a/arch/arm/cpu/armv8/Kconfig
|
||||
+++ b/arch/arm/cpu/armv8/Kconfig
|
||||
@@ -1,8 +1,8 @@
|
||||
@@ -55,7 +55,7 @@ index 09f3f50fa2..031faa909c 100644
|
||||
bool "Enable multiple CPUs to enter into U-Boot"
|
||||
|
||||
diff --git a/arch/arm/cpu/armv8/Makefile b/arch/arm/cpu/armv8/Makefile
|
||||
index 85fe0475c8..8b3f695835 100644
|
||||
index 2e4bf9e038..001a31cae7 100644
|
||||
--- a/arch/arm/cpu/armv8/Makefile
|
||||
+++ b/arch/arm/cpu/armv8/Makefile
|
||||
@@ -13,10 +13,8 @@ ifndef CONFIG_$(SPL_)SYS_DCACHE_OFF
|
||||
@@ -94,11 +94,11 @@ index 28f0df13f0..f831e77af3 100644
|
||||
adr x0, vectors
|
||||
switch_el x1, 3f, 2f, 1f
|
||||
diff --git a/configs/vexpress_aemv8r_defconfig b/configs/vexpress_aemv8r_defconfig
|
||||
index a1c5d88717..1d5b7411f0 100644
|
||||
index 495eb1dee3..683d983c36 100644
|
||||
--- a/configs/vexpress_aemv8r_defconfig
|
||||
+++ b/configs/vexpress_aemv8r_defconfig
|
||||
@@ -13,3 +13,4 @@ CONFIG_BOOTARGS="console=ttyAMA0 earlycon=pl011,0x9c090000 rootfstype=ext4 root=
|
||||
CONFIG_SYS_PROMPT="VExpress64# "
|
||||
@@ -16,3 +16,4 @@ CONFIG_SYS_CBSIZE=512
|
||||
CONFIG_SYS_PBSIZE=541
|
||||
# CONFIG_MMC is not set
|
||||
CONFIG_VIRTIO_MMIO=y
|
||||
+CONFIG_ARMV8_EXCEPTION_VECTORS=n
|
||||
|
||||
+8
-26
@@ -1,4 +1,4 @@
|
||||
From dbc1a218e9837e39cd50dd3c19f603f29a08ddba Mon Sep 17 00:00:00 2001
|
||||
From 30405f59881c73946b6b0ffdbf25804f9fbf1585 Mon Sep 17 00:00:00 2001
|
||||
From: Peter Hoyes <Peter.Hoyes@arm.com>
|
||||
Date: Wed, 14 Jul 2021 12:44:27 +0100
|
||||
Subject: [PATCH 4/9] armv8: ARMV8_SWITCH_TO_EL1 improvements
|
||||
@@ -17,29 +17,11 @@ Upstream-Status: Inappropriate [other]
|
||||
Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com>
|
||||
Change-Id: If98478148d6d8d1f732acac5439276700614815f
|
||||
---
|
||||
arch/arm/cpu/armv8/Kconfig | 8 +++++++
|
||||
arch/arm/cpu/armv8/exception_level.c | 21 ++++++++++++++--
|
||||
arch/arm/lib/bootm.c | 36 ++++++++++++++++------------
|
||||
configs/vexpress_aemv8r_defconfig | 1 +
|
||||
4 files changed, 49 insertions(+), 17 deletions(-)
|
||||
3 files changed, 41 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/cpu/armv8/Kconfig b/arch/arm/cpu/armv8/Kconfig
|
||||
index 031faa909c..110adf63b3 100644
|
||||
--- a/arch/arm/cpu/armv8/Kconfig
|
||||
+++ b/arch/arm/cpu/armv8/Kconfig
|
||||
@@ -191,4 +191,12 @@ config ARMV8_EA_EL3_FIRST
|
||||
Exception handling at all exception levels for External Abort and
|
||||
SError interrupt exception are taken in EL3.
|
||||
|
||||
+config ARMV8_SWITCH_TO_EL1
|
||||
+ bool "Switch to EL1 before booting the operating system"
|
||||
+ default n
|
||||
+ help
|
||||
+ Switch to EL1 before booting the operating system, if for example the
|
||||
+ operating system does not support booting at EL2, or you wish to prevent
|
||||
+ any hypervisors from running. Supported for bootm, booti and bootefi.
|
||||
+
|
||||
endif
|
||||
diff --git a/arch/arm/cpu/armv8/exception_level.c b/arch/arm/cpu/armv8/exception_level.c
|
||||
index b11936548f..4aad1550f4 100644
|
||||
--- a/arch/arm/cpu/armv8/exception_level.c
|
||||
@@ -84,10 +66,10 @@ index b11936548f..4aad1550f4 100644
|
||||
}
|
||||
}
|
||||
diff --git a/arch/arm/lib/bootm.c b/arch/arm/lib/bootm.c
|
||||
index a59a5e6c0e..e2cf2e6ec4 100644
|
||||
index 9f086f3b90..b044aeca88 100644
|
||||
--- a/arch/arm/lib/bootm.c
|
||||
+++ b/arch/arm/lib/bootm.c
|
||||
@@ -272,7 +272,6 @@ __weak void update_os_arch_secondary_cores(uint8_t os_arch)
|
||||
@@ -270,7 +270,6 @@ __weak void update_os_arch_secondary_cores(uint8_t os_arch)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -95,7 +77,7 @@ index a59a5e6c0e..e2cf2e6ec4 100644
|
||||
static void switch_to_el1(void)
|
||||
{
|
||||
if ((IH_ARCH_DEFAULT == IH_ARCH_ARM64) &&
|
||||
@@ -287,7 +286,6 @@ static void switch_to_el1(void)
|
||||
@@ -285,7 +284,6 @@ static void switch_to_el1(void)
|
||||
ES_TO_AARCH64);
|
||||
}
|
||||
#endif
|
||||
@@ -103,7 +85,7 @@ index a59a5e6c0e..e2cf2e6ec4 100644
|
||||
|
||||
/* Subcommand: GO */
|
||||
static void boot_jump_linux(bootm_headers_t *images, int flag)
|
||||
@@ -314,21 +312,29 @@ static void boot_jump_linux(bootm_headers_t *images, int flag)
|
||||
@@ -312,21 +310,29 @@ static void boot_jump_linux(bootm_headers_t *images, int flag)
|
||||
|
||||
update_os_arch_secondary_cores(images->os.arch);
|
||||
|
||||
@@ -147,10 +129,10 @@ index a59a5e6c0e..e2cf2e6ec4 100644
|
||||
#else
|
||||
unsigned long machid = gd->bd->bi_arch_number;
|
||||
diff --git a/configs/vexpress_aemv8r_defconfig b/configs/vexpress_aemv8r_defconfig
|
||||
index 1d5b7411f0..35e5e8a5e1 100644
|
||||
index 683d983c36..6044f82b00 100644
|
||||
--- a/configs/vexpress_aemv8r_defconfig
|
||||
+++ b/configs/vexpress_aemv8r_defconfig
|
||||
@@ -14,3 +14,4 @@ CONFIG_SYS_PROMPT="VExpress64# "
|
||||
@@ -17,3 +17,4 @@ CONFIG_SYS_PBSIZE=541
|
||||
# CONFIG_MMC is not set
|
||||
CONFIG_VIRTIO_MMIO=y
|
||||
CONFIG_ARMV8_EXCEPTION_VECTORS=n
|
||||
|
||||
+7
-7
@@ -1,4 +1,4 @@
|
||||
From f75060be04aaed4bb5a07cb40361d694b3775f4a Mon Sep 17 00:00:00 2001
|
||||
From a6daca56b77d7f1b26483f10eb33ebdd6e157d3e Mon Sep 17 00:00:00 2001
|
||||
From: Peter Hoyes <Peter.Hoyes@arm.com>
|
||||
Date: Fri, 10 Dec 2021 16:37:26 +0000
|
||||
Subject: [PATCH 5/9] armv8: Make disabling HVC configurable when switching to
|
||||
@@ -22,12 +22,12 @@ Change-Id: I463d82f1db8a3cafcab40a9c0c208753569cc300
|
||||
3 files changed, 18 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/cpu/armv8/Kconfig b/arch/arm/cpu/armv8/Kconfig
|
||||
index 110adf63b3..a821e219d8 100644
|
||||
index dec4be0e30..95c03487a2 100644
|
||||
--- a/arch/arm/cpu/armv8/Kconfig
|
||||
+++ b/arch/arm/cpu/armv8/Kconfig
|
||||
@@ -199,4 +199,13 @@ config ARMV8_SWITCH_TO_EL1
|
||||
operating system does not support booting at EL2, or you wish to prevent
|
||||
any hypervisors from running. Supported for bootm, booti and bootefi.
|
||||
@@ -208,4 +208,13 @@ config ARMV8_CE_SHA256
|
||||
|
||||
endif
|
||||
|
||||
+config ARMV8_DISABLE_HVC
|
||||
+ bool "Disable HVC calls before switching to EL1"
|
||||
@@ -70,10 +70,10 @@ index 1a1edc9870..7167739210 100644
|
||||
|
||||
/* Return to AArch32 Supervisor mode from EL2 */
|
||||
diff --git a/configs/vexpress_aemv8r_defconfig b/configs/vexpress_aemv8r_defconfig
|
||||
index 35e5e8a5e1..605a724a61 100644
|
||||
index 6044f82b00..6226f6b2c1 100644
|
||||
--- a/configs/vexpress_aemv8r_defconfig
|
||||
+++ b/configs/vexpress_aemv8r_defconfig
|
||||
@@ -15,3 +15,4 @@ CONFIG_SYS_PROMPT="VExpress64# "
|
||||
@@ -18,3 +18,4 @@ CONFIG_SYS_PBSIZE=541
|
||||
CONFIG_VIRTIO_MMIO=y
|
||||
CONFIG_ARMV8_EXCEPTION_VECTORS=n
|
||||
CONFIG_ARMV8_SWITCH_TO_EL1=y
|
||||
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
From db7d4cc91ae19d0cbd05c0ff1b9bf6a55ac0d04a Mon Sep 17 00:00:00 2001
|
||||
From 862d3f1ac66a75cdf48adbdebd8adbaf671a9366 Mon Sep 17 00:00:00 2001
|
||||
From: Qi Feng <qi.feng@arm.com>
|
||||
Date: Thu, 28 Jul 2022 17:47:18 +0800
|
||||
Subject: [PATCH 6/9] vexpress64: Do not set COUNTER_FREQUENCY
|
||||
@@ -18,7 +18,7 @@ Signed-off-by: Qi Feng <qi.feng@arm.com>
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/configs/vexpress_aemv8r_defconfig b/configs/vexpress_aemv8r_defconfig
|
||||
index 605a724a61..153fa14efc 100644
|
||||
index 6226f6b2c1..b902a6a7d9 100644
|
||||
--- a/configs/vexpress_aemv8r_defconfig
|
||||
+++ b/configs/vexpress_aemv8r_defconfig
|
||||
@@ -1,5 +1,4 @@
|
||||
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
From f4986ed954ffad36abfa27db5520e702cba2531e Mon Sep 17 00:00:00 2001
|
||||
From 32beea722c1167c9b33f1ecfdc28d360cabd6823 Mon Sep 17 00:00:00 2001
|
||||
From: Peter Hoyes <Peter.Hoyes@arm.com>
|
||||
Date: Tue, 22 Feb 2022 15:32:51 +0000
|
||||
Subject: [PATCH 7/9] vexpress64: Enable LIBFDT_OVERLAY in the vexpress_aemv8r
|
||||
@@ -14,10 +14,10 @@ Change-Id: Ide0532cf2de89f1bca9c8d4bd2ed0c1a1c57599f
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/configs/vexpress_aemv8r_defconfig b/configs/vexpress_aemv8r_defconfig
|
||||
index 153fa14efc..94651768b3 100644
|
||||
index b902a6a7d9..a58a9db385 100644
|
||||
--- a/configs/vexpress_aemv8r_defconfig
|
||||
+++ b/configs/vexpress_aemv8r_defconfig
|
||||
@@ -15,3 +15,4 @@ CONFIG_VIRTIO_MMIO=y
|
||||
@@ -18,3 +18,4 @@ CONFIG_VIRTIO_MMIO=y
|
||||
CONFIG_ARMV8_EXCEPTION_VECTORS=n
|
||||
CONFIG_ARMV8_SWITCH_TO_EL1=y
|
||||
CONFIG_ARMV8_DISABLE_HVC=n
|
||||
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
From af05764e7b64e0704291ba2e71138f2345737afa Mon Sep 17 00:00:00 2001
|
||||
From 01490ab8deb0f0b61eeb55a02ee5ea430cfe7eee Mon Sep 17 00:00:00 2001
|
||||
From: Peter Hoyes <Peter.Hoyes@arm.com>
|
||||
Date: Wed, 18 May 2022 15:24:19 +0100
|
||||
Subject: [PATCH 8/9] armv8: Allow PRBAR MPU attributes to be configured
|
||||
@@ -75,7 +75,7 @@ index 8de627cafd..dd4c689ea6 100644
|
||||
|
||||
extern struct mpu_region *mpu_mem_map;
|
||||
diff --git a/board/armltd/vexpress64/vexpress64.c b/board/armltd/vexpress64/vexpress64.c
|
||||
index 1791cd986f..7858521fec 100644
|
||||
index 2310d18eb7..531fa4d618 100644
|
||||
--- a/board/armltd/vexpress64/vexpress64.c
|
||||
+++ b/board/armltd/vexpress64/vexpress64.c
|
||||
@@ -42,15 +42,18 @@ static struct mpu_region vexpress64_aemv8r_mem_map[] = {
|
||||
|
||||
Reference in New Issue
Block a user