diff mbox series

[1/3] arm-bsp/u-boot: update fvp-base patches

Message ID 20251210163332.66571-1-jon.mason@arm.com
State New
Headers show
Series [1/3] arm-bsp/u-boot: update fvp-base patches | expand

Commit Message

Jon Mason Dec. 10, 2025, 4:33 p.m. UTC
u-boot has accepted some of the fvp-base patches.  Take the upstream
versions and rebase the third patch to apply.

Signed-off-by: Jon Mason <jon.mason@arm.com>
---
 .../recipes-bsp/u-boot/u-boot-fvp-base.inc    |  2 +-
 ...1-vexpress64-Set-the-DM_RNG-property.patch | 29 ++++----
 ...64-Enable-SYSRESET-and-SYSRESET_PSCI.patch | 71 +++++++++++++++++++
 ...press64-Select-PSCI-RESET-by-default.patch | 46 ------------
 ...-Imply-CONFIG_ARM64_CRC32-by-default.patch | 48 +++++++++++--
 5 files changed, 129 insertions(+), 67 deletions(-)
 create mode 100644 meta-arm-bsp/recipes-bsp/u-boot/u-boot/fvp-base/0002-arm-vexpress64-Enable-SYSRESET-and-SYSRESET_PSCI.patch
 delete mode 100644 meta-arm-bsp/recipes-bsp/u-boot/u-boot/fvp-base/0002-vexpress64-Select-PSCI-RESET-by-default.patch

Comments

Jon Mason Dec. 11, 2025, 2:32 p.m. UTC | #1
On Wed, 10 Dec 2025 11:33:30 -0500, Jon Mason wrote:
> u-boot has accepted some of the fvp-base patches.  Take the upstream
> versions and rebase the third patch to apply.
> 
> 

Applied, thanks!

[1/3] arm-bsp/u-boot: update fvp-base patches
      commit: 5f8dd8c3e775acb5d95fac0947c61c8f80f5eee2
[2/3] arm/trusted-firmware-a: update git recipe to v2.14-rc1
      commit: 4a1969f3e52aefeb398adb92bc78fe8666ffadf0
[3/3] arm-bsp: add git recipe versions
      commit: 1baab2304144c97596498866e250377c0b792693

Best regards,
diff mbox series

Patch

diff --git a/meta-arm-bsp/recipes-bsp/u-boot/u-boot-fvp-base.inc b/meta-arm-bsp/recipes-bsp/u-boot/u-boot-fvp-base.inc
index d7558f4ff456..e7f2287797b6 100644
--- a/meta-arm-bsp/recipes-bsp/u-boot/u-boot-fvp-base.inc
+++ b/meta-arm-bsp/recipes-bsp/u-boot/u-boot-fvp-base.inc
@@ -3,6 +3,6 @@ 
 SRC_URI:append = " \
     file://virtio-boot.cfg \
     file://0001-vexpress64-Set-the-DM_RNG-property.patch \
-    file://0002-vexpress64-Select-PSCI-RESET-by-default.patch \
+    file://0002-arm-vexpress64-Enable-SYSRESET-and-SYSRESET_PSCI.patch \
     file://0003-vexpress64-Imply-CONFIG_ARM64_CRC32-by-default.patch \
     "
diff --git a/meta-arm-bsp/recipes-bsp/u-boot/u-boot/fvp-base/0001-vexpress64-Set-the-DM_RNG-property.patch b/meta-arm-bsp/recipes-bsp/u-boot/u-boot/fvp-base/0001-vexpress64-Set-the-DM_RNG-property.patch
index 4912491fb68a..dee48e1dd68c 100644
--- a/meta-arm-bsp/recipes-bsp/u-boot/u-boot/fvp-base/0001-vexpress64-Set-the-DM_RNG-property.patch
+++ b/meta-arm-bsp/recipes-bsp/u-boot/u-boot/fvp-base/0001-vexpress64-Set-the-DM_RNG-property.patch
@@ -1,28 +1,31 @@ 
-From 6813b56a11f423f3faa0e960bb044534e11d0104 Mon Sep 17 00:00:00 2001
-From: Debbie Martin <Debbie.Martin@arm.com>
-Date: Fri, 25 Aug 2023 15:09:33 +0100
+From 364d81afbf4fdc1b3d35c137f02ffa6f1ddd929d Mon Sep 17 00:00:00 2001
+From: Debbie Horsfall <debbie.horsfall@arm.com>
+Date: Wed, 17 Sep 2025 17:22:21 +0100
 Subject: [PATCH] vexpress64: Set the DM_RNG property
 
-Enable the DM_RNG virtio random number generator driver in
-in order to consume entropy within u-boot. This is necessary
-in the case that the kernel is not configured to enable the
-virtio rng driver itself.
+Enable the DM_RNG virtio random number generator driver in order to
+consume entropy within U-Boot. This allows U-Boot to inject entropy to the
+kernel via UEFI, so the kernel can use that early, for instance for
+address layout randomisation, or when the kernel does not provide an
+entropy driver itself.
 
-Upstream-Status: Pending
-Signed-off-by: Debbie Martin <Debbie.Martin@arm.com>
+Signed-off-by: Debbie Horsfall <debbie.horsfall@arm.com>
+Reviewed-by: Andre Przywara <andre.przywara@arm.com>
+Upstream-Status: Backport [2767386806c254820ea22a812bb02e5405495a29]
 ---
- board/armltd/vexpress64/Kconfig | 1 +
- 1 file changed, 1 insertion(+)
+ board/armltd/vexpress64/Kconfig | 2 ++
+ 1 file changed, 2 insertions(+)
 
 diff --git a/board/armltd/vexpress64/Kconfig b/board/armltd/vexpress64/Kconfig
-index 7e8709444fe3..f413c51ac43b 100644
+index 7e8709444fe3..610ab0ac37dc 100644
 --- a/board/armltd/vexpress64/Kconfig
 +++ b/board/armltd/vexpress64/Kconfig
-@@ -21,6 +21,7 @@ config VEXPRESS64_BASE_MODEL
+@@ -21,6 +21,8 @@ config VEXPRESS64_BASE_MODEL
  	imply EFI_SET_TIME if DM_RTC
  	select LINUX_KERNEL_IMAGE_HEADER
  	select POSITION_INDEPENDENT
 +	imply DM_RNG
++	imply RNG_ARM_RNDR
  
  choice
  	prompt "VExpress64 board variant"
diff --git a/meta-arm-bsp/recipes-bsp/u-boot/u-boot/fvp-base/0002-arm-vexpress64-Enable-SYSRESET-and-SYSRESET_PSCI.patch b/meta-arm-bsp/recipes-bsp/u-boot/u-boot/fvp-base/0002-arm-vexpress64-Enable-SYSRESET-and-SYSRESET_PSCI.patch
new file mode 100644
index 000000000000..e6bd28d927f1
--- /dev/null
+++ b/meta-arm-bsp/recipes-bsp/u-boot/u-boot/fvp-base/0002-arm-vexpress64-Enable-SYSRESET-and-SYSRESET_PSCI.patch
@@ -0,0 +1,71 @@ 
+From bec13f424612ba01dace86fe4a4ab49eedaca4b2 Mon Sep 17 00:00:00 2001
+From: Debbie Horsfall <debbie.horsfall@arm.com>
+Date: Wed, 17 Sep 2025 17:22:22 +0100
+Subject: [PATCH] arm: vexpress64: Enable SYSRESET and SYSRESET_PSCI
+
+Select SYSRESET on Vexpress64 to enable system reset to support other
+features, such as capsule-on-disk. Select SYSRESET_PSCI if PSCI is
+inferred from the firmware (via ARM_PSCI_FW).
+Select ARM_SMCCC for Vexpress64 boards which in turn selects
+ARM_PSCI_FW.
+
+The sysreset uclass unconditionally implements a reset_cpu() function.
+Remove the empty reset_cpu() in vexpress64 board code.
+
+Signed-off-by: Debbie Horsfall <debbie.horsfall@arm.com>
+Upstream-Status: Backport [1f3f1e090a2695e0b17cbf9dc50ccb59d100458f]
+---
+ arch/arm/Kconfig                     | 2 ++
+ board/armltd/vexpress64/Kconfig      | 2 ++
+ board/armltd/vexpress64/vexpress64.c | 5 -----
+ 3 files changed, 4 insertions(+), 5 deletions(-)
+
+diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
+index 625d2e995d2f..68f37f633fdf 100644
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
+@@ -1418,6 +1418,8 @@ config ARCH_VEXPRESS64
+ 	select MTD_NOR_FLASH if MTD
+ 	select FLASH_CFI_DRIVER if MTD
+ 	select ENV_IS_IN_FLASH if MTD
++	select SYSRESET
++	select SYSRESET_PSCI if ARM_PSCI_FW
+ 	imply DISTRO_DEFAULTS
+ 
+ config TARGET_CORSTONE1000
+diff --git a/board/armltd/vexpress64/Kconfig b/board/armltd/vexpress64/Kconfig
+index 610ab0ac37dc..9ef3fa1b379f 100644
+--- a/board/armltd/vexpress64/Kconfig
++++ b/board/armltd/vexpress64/Kconfig
+@@ -23,6 +23,7 @@ config VEXPRESS64_BASE_MODEL
+ 	select POSITION_INDEPENDENT
+ 	imply DM_RNG
+ 	imply RNG_ARM_RNDR
++	select ARM_SMCCC
+ 
+ choice
+ 	prompt "VExpress64 board variant"
+@@ -48,6 +49,7 @@ config TARGET_VEXPRESS64_JUNO
+ 	select USB_EHCI_GENERIC if USB
+ 	select USB_OHCI_HCD if USB
+ 	select USB_OHCI_GENERIC if USB
++	select ARM_SMCCC
+ 	imply OF_HAS_PRIOR_STAGE
+ 
+ endchoice
+diff --git a/board/armltd/vexpress64/vexpress64.c b/board/armltd/vexpress64/vexpress64.c
+index 0b75c1358f0b..e8f1c2fe9fe2 100644
+--- a/board/armltd/vexpress64/vexpress64.c
++++ b/board/armltd/vexpress64/vexpress64.c
+@@ -206,11 +206,6 @@ int board_fdt_blob_setup(void **fdtp)
+ #endif
+ #endif
+ 
+-/* Actual reset is done via PSCI. */
+-void reset_cpu(void)
+-{
+-}
+-
+ /*
+  * Board specific ethernet initialization routine.
+  */
diff --git a/meta-arm-bsp/recipes-bsp/u-boot/u-boot/fvp-base/0002-vexpress64-Select-PSCI-RESET-by-default.patch b/meta-arm-bsp/recipes-bsp/u-boot/u-boot/fvp-base/0002-vexpress64-Select-PSCI-RESET-by-default.patch
deleted file mode 100644
index 822a308dd29a..000000000000
--- a/meta-arm-bsp/recipes-bsp/u-boot/u-boot/fvp-base/0002-vexpress64-Select-PSCI-RESET-by-default.patch
+++ /dev/null
@@ -1,46 +0,0 @@ 
-From ca70595913d7584605be1ea37362da25254fb829 Mon Sep 17 00:00:00 2001
-From: Diego Sueiro <diego.sueiro@arm.com>
-Date: Wed, 4 Oct 2023 06:31:50 +0100
-Subject: [PATCH] vexpress64: Select PSCI RESET by default
-
-Set SYSRESET and SYSRESET_PSCI config for vexpress64 by
-by default. This means that the reset_cpu function in
-vexpress64.c is no longer needed because it is called in
-sysreset-uclass.c instead.
-
-Upstream-Status: Pending
-Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
----
- board/armltd/vexpress64/Kconfig      | 2 ++
- board/armltd/vexpress64/vexpress64.c | 5 -----
- 2 files changed, 2 insertions(+), 5 deletions(-)
-
-diff --git a/board/armltd/vexpress64/Kconfig b/board/armltd/vexpress64/Kconfig
-index f413c51ac43b..d0733ba62432 100644
---- a/board/armltd/vexpress64/Kconfig
-+++ b/board/armltd/vexpress64/Kconfig
-@@ -30,6 +30,8 @@ config TARGET_VEXPRESS64_BASE_FVP
- 	bool "Support Versatile Express ARMv8a FVP BASE model"
- 	select VEXPRESS64_BASE_MODEL
- 	imply OF_HAS_PRIOR_STAGE if !BLOBLIST
-+	select SYSRESET
-+	select SYSRESET_PSCI
- 
- config TARGET_VEXPRESS64_BASER_FVP
- 	bool "Support Versatile Express ARMv8r64 FVP BASE model"
-diff --git a/board/armltd/vexpress64/vexpress64.c b/board/armltd/vexpress64/vexpress64.c
-index 0b75c1358f0b..e8f1c2fe9fe2 100644
---- a/board/armltd/vexpress64/vexpress64.c
-+++ b/board/armltd/vexpress64/vexpress64.c
-@@ -206,11 +206,6 @@ int board_fdt_blob_setup(void **fdtp)
- #endif
- #endif
- 
--/* Actual reset is done via PSCI. */
--void reset_cpu(void)
--{
--}
--
- /*
-  * Board specific ethernet initialization routine.
-  */
diff --git a/meta-arm-bsp/recipes-bsp/u-boot/u-boot/fvp-base/0003-vexpress64-Imply-CONFIG_ARM64_CRC32-by-default.patch b/meta-arm-bsp/recipes-bsp/u-boot/u-boot/fvp-base/0003-vexpress64-Imply-CONFIG_ARM64_CRC32-by-default.patch
index 5ebdda095dd4..5bb738982002 100644
--- a/meta-arm-bsp/recipes-bsp/u-boot/u-boot/fvp-base/0003-vexpress64-Imply-CONFIG_ARM64_CRC32-by-default.patch
+++ b/meta-arm-bsp/recipes-bsp/u-boot/u-boot/fvp-base/0003-vexpress64-Imply-CONFIG_ARM64_CRC32-by-default.patch
@@ -1,4 +1,4 @@ 
-From 9c98333d7c5f4c2611c76d60f5e7cb96bfdaca26 Mon Sep 17 00:00:00 2001
+From 67b2bcd428a13d14d4311bd1122e664f391af4d4 Mon Sep 17 00:00:00 2001
 From: Diego Sueiro <diego.sueiro@arm.com>
 Date: Wed, 4 Oct 2023 06:29:12 +0100
 Subject: [PATCH] vexpress64: Imply CONFIG_ARM64_CRC32 by default
@@ -10,18 +10,52 @@  feature of ARMv8.1 and newer.
 Upstream-Status: Pending
 Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
 ---
- board/armltd/vexpress64/Kconfig | 1 +
- 1 file changed, 1 insertion(+)
+ board/armltd/vexpress64/Kconfig  |  1 +
+ include/configs/vexpress_aemv8.h | 13 +++++++------
+ 2 files changed, 8 insertions(+), 6 deletions(-)
 
 diff --git a/board/armltd/vexpress64/Kconfig b/board/armltd/vexpress64/Kconfig
-index d0733ba62432..543cbdb5631b 100644
+index 9ef3fa1b379f..1a0e0a5018d8 100644
 --- a/board/armltd/vexpress64/Kconfig
 +++ b/board/armltd/vexpress64/Kconfig
-@@ -22,6 +22,7 @@ config VEXPRESS64_BASE_MODEL
- 	select LINUX_KERNEL_IMAGE_HEADER
- 	select POSITION_INDEPENDENT
+@@ -24,6 +24,7 @@ config VEXPRESS64_BASE_MODEL
  	imply DM_RNG
+ 	imply RNG_ARM_RNDR
+ 	select ARM_SMCCC
 +	imply ARM64_CRC32
  
  choice
  	prompt "VExpress64 board variant"
+diff --git a/include/configs/vexpress_aemv8.h b/include/configs/vexpress_aemv8.h
+index 5eee13b3fc01..5c271d239501 100644
+--- a/include/configs/vexpress_aemv8.h
++++ b/include/configs/vexpress_aemv8.h
+@@ -172,7 +172,7 @@
+  */
+ #define BOOTENV_DEV_SMH(devtypeu, devtypel, instance) \
+ 	"bootcmd_smh= " 						\
+-		"if load hostfs - ${boot_addr_r} ${boot_name}; then"		\
++		"if load hostfs - ${boot_addr_r} ${boot_name}; then"	\
+ 		"  setenv bootargs;"					\
+ 		"  abootimg addr ${boot_addr_r};"			\
+ 		"  abootimg get dtb --index=0 fdt_addr_r;"		\
+@@ -181,13 +181,14 @@
+ 		"  if load hostfs - ${kernel_addr_r} ${kernel_name}; then"	\
+ 		"    setenv fdt_high 0xffffffffffffffff;"		\
+ 		"    setenv initrd_high 0xffffffffffffffff;"		\
+-		"    if test -n load hostfs - ${fdt_addr_r} ${fdtfile}; then"			\
+-		"        fdt move $fdtcontroladdr $fdt_addr_r;"			\
+-		"    fi;"			\
+-		"    load hostfs - ${ramdisk_addr_r} ${ramdisk_name};" \
++		"    load hostfs - ${fdt_addr_r} ${fdtfile};"		\
++		"    if test $? -eq 1; then "                           \
++		"        fdt move $fdtcontroladdr $fdt_addr_r;"		\
++		"    fi;"						\
++		"    load hostfs - ${ramdisk_addr_r} ${ramdisk_name};" 	\
+ 		"    fdt addr ${fdt_addr_r};"				\
+ 		"    fdt resize;"					\
+-		"    fdt chosen ${ramdisk_addr_r} ${filesize};"	\
++		"    fdt chosen ${ramdisk_addr_r} ${filesize};"		\
+ 		"    booti $kernel_addr_r - ${fdt_addr_r};"		\
+ 		"  fi;"							\
+ 		"fi\0"