mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* [PATCH 1/3] test: Containerfile: add qemu-efi-aarch64.
@ 2025-10-22  5:25 chalianis1
  2025-10-22  5:25 ` [PATCH 2/3] test: arm: add efi v8 test for efi arm64 payload chalianis1
  2025-10-22  5:25 ` [PATCH 3/3] doc: efi: add efi armv8 payload documentation chalianis1
  0 siblings, 2 replies; 3+ messages in thread
From: chalianis1 @ 2025-10-22  5:25 UTC (permalink / raw)
  To: s.hauer; +Cc: barebox, Chali Anis

From: Chali Anis <chalianis1@gmail.com>

this will provide the uefi bios binaries to used for efi aarch64
payload test.

Signed-off-by: Chali Anis <chalianis1@gmail.com>
---
 test/Containerfile | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/test/Containerfile b/test/Containerfile
index c6c3c57596a6..3d277a147ad1 100644
--- a/test/Containerfile
+++ b/test/Containerfile
@@ -40,6 +40,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
 	qemu-system-misc \
 	qemu-system-mips \
 	qemu-system-x86 \
+	qemu-efi-aarch64 \
 	qemu-system-common \
 	ovmf \
 	python3 \
@@ -63,7 +64,7 @@ ENV LLVM_VERSION=21
 
 RUN apt-get update && apt-get install -y --no-install-recommends lsb-release gnupg \
 	&& wget https://apt.llvm.org/llvm.sh \
-	&& chmod +x llvm.sh && ./llvm.sh ${LLVM_VERSION} \
+	&& chmod +x llvm.sh && ./llvm.sh ${LLVM_VERSION} -n trixie \
 	&& apt-get remove -y lsb-release gnupg \
 	&& apt-get autoremove -y --purge \
 	&& apt-get clean \
-- 
2.34.1




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

* [PATCH 2/3] test: arm: add efi v8 test for efi arm64 payload.
  2025-10-22  5:25 [PATCH 1/3] test: Containerfile: add qemu-efi-aarch64 chalianis1
@ 2025-10-22  5:25 ` chalianis1
  2025-10-22  5:25 ` [PATCH 3/3] doc: efi: add efi armv8 payload documentation chalianis1
  1 sibling, 0 replies; 3+ messages in thread
From: chalianis1 @ 2025-10-22  5:25 UTC (permalink / raw)
  To: s.hauer; +Cc: barebox, Chali Anis

From: Chali Anis <chalianis1@gmail.com>

Add efi armv8 payload labgrid yaml and add it in the barebox ci.

Signed-off-by: Chali Anis <chalianis1@gmail.com>
---
 .github/workflows/test-labgrid-pytest.yml |  5 ++++
 test/arm/efi_v8_defconfig.yaml            | 31 +++++++++++++++++++++++
 2 files changed, 36 insertions(+)
 create mode 100644 test/arm/efi_v8_defconfig.yaml

diff --git a/.github/workflows/test-labgrid-pytest.yml b/.github/workflows/test-labgrid-pytest.yml
index ccf8ae172cef..f364ed1843d9 100644
--- a/.github/workflows/test-labgrid-pytest.yml
+++ b/.github/workflows/test-labgrid-pytest.yml
@@ -27,6 +27,11 @@ jobs:
             lgenv: test/arm/multi_v8_defconfig.yaml
             defconfig: multi_v8_defconfig
             lgargs: --runxfail
+
+          - ARCH: arm
+            lgenv: 'test/arm/efi_v8_defconfig.yaml'
+            defconfig: efi_v8_defconfig
+            lgargs: --runxfail
 
           - ARCH: mips
             lgenv: test/mips/qemu-malta_defconfig.yaml
diff --git a/test/arm/efi_v8_defconfig.yaml b/test/arm/efi_v8_defconfig.yaml
new file mode 100644
index 000000000000..21d0feaed8e1
--- /dev/null
+++ b/test/arm/efi_v8_defconfig.yaml
@@ -0,0 +1,31 @@
+targets:
+  main:
+    drivers:
+      QEMUDriver:
+        qemu_bin: qemu-system-aarch64
+        machine: virt
+        cpu: cortex-a57
+        memory: 1024M
+        kernel: barebox.efi
+        display: qemu-default
+        extra_args: '-L /usr/share/qemu-efi-aarch64 -bios QEMU_EFI.fd'
+      BareboxDriver:
+        prompt: 'barebox@[^:]+:[^ ]+ '
+        bootstring: 'commandline:'
+      BareboxTestStrategy: {}
+    features:
+      - virtio-mmio
+      - testfs
+    devices:
+      fb0: 'Type: primary'
+      fbconsole0: 'Parent: fb0'
+      wdog0: 'Parent: efi-wdt'
+      efivarfs0: 'Driver: efivarfs'
+      efifs0: 'Driver: efifs'
+    runner:
+      kconfig_add:
+        - CONFIG_FRAMEBUFFER_CONSOLE=y
+images:
+  barebox.efi: !template "$LG_BUILDDIR/barebox.efi"
+imports:
+  -  ../strategy.py
-- 
2.34.1




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

* [PATCH 3/3] doc: efi: add efi armv8 payload documentation.
  2025-10-22  5:25 [PATCH 1/3] test: Containerfile: add qemu-efi-aarch64 chalianis1
  2025-10-22  5:25 ` [PATCH 2/3] test: arm: add efi v8 test for efi arm64 payload chalianis1
@ 2025-10-22  5:25 ` chalianis1
  1 sibling, 0 replies; 3+ messages in thread
From: chalianis1 @ 2025-10-22  5:25 UTC (permalink / raw)
  To: s.hauer; +Cc: barebox, Chali Anis

From: Chali Anis <chalianis1@gmail.com>

Add how to compile armv8 efi payload and how to run it with qemu

Signed-off-by: Chali Anis <chalianis1@gmail.com>
---
 Documentation/boards/efi.rst | 21 +++++++++++++++++----
 1 file changed, 17 insertions(+), 4 deletions(-)

diff --git a/Documentation/boards/efi.rst b/Documentation/boards/efi.rst
index 869e5e88172f..a3a06b987f97 100644
--- a/Documentation/boards/efi.rst
+++ b/Documentation/boards/efi.rst
@@ -23,7 +23,7 @@ x86_64 binary currently is tested.
 Building barebox for EFI
 ------------------------
 
-Use the following to build barebox for EFI:
+Use the following to build barebox for EFI to target x86 machine:
 
 .. code-block:: sh
 
@@ -31,6 +31,14 @@ Use the following to build barebox for EFI:
   make efi_defconfig
   make
 
+Use the following to build barebox for EFI to target armv8 machine:
+
+.. code-block:: sh
+
+  export ARCH=arm
+  make efi_v8_defconfig
+  make
+
 The resulting EFI image is ``barebox.efi`` (or the barebox-flash-image link).
 
 Running barebox on EFI systems
@@ -39,8 +47,9 @@ Running barebox on EFI systems
 The simplest way to run barebox on a USB memory stick. (U)EFI only supports
 FAT filesystems, so make sure you either have a FAT16 or FAT32 filesystem on
 the memory stick. Put ``barebox.efi`` into the ``EFI/BOOT/`` directory and
-name it ``BOOTx64.EFI`` on 64bit architectures and ``BOOTIA32.EFI`` on 32bit
-architectures. Switching to USB boot in the BIOS should then be enough to
+name it, for x86 ``BOOTx64.EFI`` or ``BOOTIA32.EFI`` on 64bit or 32bit
+architectures recpectivly, for armv8 ``BOOTAA64.EFI``.
+Switching to USB boot in the BIOS should then be enough to
 start barebox via USB. Some BIOSes allow to specify a path to a binary to
 be executed, others have a "start UEFI shell" entry which executes
 EFI/Shellx64.efi on the :term:`ESP`. This can be a barebox binary as well.
@@ -87,9 +96,13 @@ necessary to make a copy first.
 To start it create a USB memory stick like above and execute:
 
 .. code-block:: sh
-
+
+  # On x86
   qemu-system-x86_64 -pflash OVMF.fd -nographic /dev/sdx
 
+  # On armv8
+  qemu-system-aarch64 -L /usr/share/qemu-efi-aarch64 -bios QEMU_EFI.fd -nographic /dev/sdx
+
 A plain VFAT image will work aswell, but in this case the UEFI BIOS won't
 recognize it as ESP and ``/boot`` won't be mounted.
 
-- 
2.34.1




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

end of thread, other threads:[~2025-10-22  5:25 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-10-22  5:25 [PATCH 1/3] test: Containerfile: add qemu-efi-aarch64 chalianis1
2025-10-22  5:25 ` [PATCH 2/3] test: arm: add efi v8 test for efi arm64 payload chalianis1
2025-10-22  5:25 ` [PATCH 3/3] doc: efi: add efi armv8 payload documentation chalianis1

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox