mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Sascha Hauer <s.hauer@pengutronix.de>
To: Barebox List <barebox@lists.infradead.org>
Subject: v2026.02.0
Date: Thu, 26 Feb 2026 13:57:02 +0100	[thread overview]
Message-ID: <aaBDHkpK8p8fkWWN@pengutronix.de> (raw)


Hi All,

We have a barebox for February, right before February is over: v2026.02.0

This time I am happy to announce that we now have EFI loader support in
barebox, which means we can not only act as EFI consumer, but also as
provider. Thanks for the tremendous work, Ahmad.

We have made some changes in the Arm MMU initialization. barebox proper
is no longer put as a raw binary into the PBL, but as an ELF file
instead which gives the PBL the informations necessary to configure the
MMU for barebox proper which allows us to get rid of some knotty code
in barebox proper.

Also we gained support for the QNAP ts-433 4bay NAS. If you have one of
those, try it out.

As usual see below for a detailed list of changes that went into this
release.

Have Fun!
  Sascha

Migration notes for Release v2026.02.0
======================================

CONFIG_SHELL_NONE
-----------------

If there's nothing to do for a shell-less barebox, it will now attempt
to poweroff the system instead of busy-looping indefinitely.
This changes behavior for systems that rely on a watchdog to reset
a hanging barebox in this situation. If this breaks anything for you,
please reach out.

----------------------------------------------------------------
Ahmad Fatoum (147):
      ARM64: elf: set ELF_CLASS64 for ARM64
      ARM: remove unused constructor support
      ARM: virt: add DEBUG_LL support
      common: elf: use strdup_const for symmetry
      common: elf: use memcmp for fixed-size comparison
      ARM: socfpga: replace select of undefined symbols
      malloc: make malloc_add_pool return void
      startup: attempt poweroff if no shell and nothing to do
      Documentation: split Rockchip documentation
      Documentation: rk35xx: expand on supported SoCs/boards
      usb: dwc3: export dwc3_core_probe/dwc3_core_remove like Linux
      usb: dwc3: add support for Global SoC Bus Configuration Register
      ARM: cpu: common: skip R_ARM_NONE relocations
      ARM: cpu: common: define generic relocate_image
      tee: drivers: rksecure: move header to soc/rockchip/
      bootm: set image_data::initrd_res at a single place
      bootm: fit: split support into dedicated file
      bootm: uimage: split support into dedicated file
      filetype: introduce filetype_fit
      bootm: refactor for readability and extensibility
      memory: move release_sdram_region into header
      resource: make NULL in release_[sdram_]region a no-op
      common: elf: use release_region unconditionally
      memory: always print errors on request_sdram_region failure
      memory: drop now duplicate request_sdram_region error messages
      ci: drop workaround for missing opensbi-riscv32-generic-fw_dynamic.bin
      commands: test: implement test -s for non-zero size check
      test: arm: multi_v8_efiloader_defconfig: use qcow2 image
      test: py: strategy: add helpers for booting kernel and bootm
      test: py: efiloader: prepare get_dmesg for more general usage
      test: py: add more kernel boot tests
      ci: add Debian ARM64 EFI loader boot test
      debug_ll: pl011: add PBL console helper
      ARM: cpu: setupc: implement 32-bit relocate_to_adr_full
      regulator: bcm2835: register only on Raspberry Pi
      pbl: decomp: report errors on PBL console as well
      openrisc: bump reserved size to 1M
      commands: delpart: return success when no error occurred
      lib: cmdlinepart: support RO both in lower and upper case
      ARM: mmu: panic after pr_debug_remap if base address is unaligned
      ARM: layerscape: defconfig: refresh defconfig
      kbuild: fold rmdirs into rmfiles
      boards: qemu-virt: reserve BIOS device tree
      clk: implement and use clk_bulk_get_all_enabled helper
      usb: dwc3: add DesignWare USB3 generic platform driver
      Revert "ARM64: dts: Layerscape: workaround v6.19-rc1 DT sync DWC3 breakage"
      gitignore: ignore Labgrid --lg-log's console_main
      firmware: qemu_fw_cfg: use wider PIO reads if applicable
      param: support uuid/guid parameter type
      lib: smbios: add support for setting product UUID
      common: boards: qemu: process some standard fw_cfg keys
      firmware: qemu_fw_cfg: add proper DMA and PIO bidirectional operating modes
      ARM: configs: multi: enable QEMU FW_CFG
      boards: qemu-virt: drop unused __dtb_fitimage_pubkey_start
      boards: qemu-virt: add overlay for when first flash is secure-world only
      efi: payload: enable both efi loader and payload for *_efi_defconfig
      ARM: mmu: optimize dma_alloc_coherent for cache-coherent DMA masters
      virtio: use DMA coherent APIs
      ARM: qemu-virt: add image for use as -bios
      kbuild: build *.mod.c with -std=gnu11
      ARM32: mark modules as incompatible with ARM_MMU_PERMISSIONS
      treewide: fix some missing EXPORT_SYMBOL
      pci: ecam: enable build as module
      kbuild: add support for installing and stripping modules
      ARM32: module: handle more relocations
      commands: pm_domain: make command tristate
      test: conftest: add support for describing FW_CFG environment in YAML
      defaultenv: add barebox_modules_env target
      test: arm: add simple driver/command module test
      include: asm-generic/bug.h: allow disabling CONFIG_DEBUG_BUGVERBOSE
      ARMv7: hyp: allow disabling support for invoking barebox in HYP mode
      ARM: socfpga: shrink socfpga-xload configs in size
      pmdomain: rockchip: enable driver by default
      arm64: rockchip: qnap-tsx33: support USB installer with EFI
      partitions: efi: allow refresh without command support
      efi: loader: protocol: gop: guard behind CONFIG_EFI_LOADER_GOP
      efi: loader: remove dependency on LIBFDT
      scripts: add helper for generating Origin-URL references
      elf: rename elf.h to <linux/elf.h>
      common: elf: split barebox proper-only ELF support from the rest
      common: elf: reorganize barebox proper parts in struct elf_image
      boot: do not attempt booting bootsource more than once
      FIT: fix double free issue with >1 reference count
      FIT: fuzz: fix reference count underflow
      net: phy: mdio_bus: fix freeing of cdev name before devfs_remove
      bootm: fix bootm override saving/restoring
      ci: container: install isoinfo package into container
      efi: payload: bootm: fix memory corruption on initrd load error
      ci: container: set LLVM_SUFFIX instead of CROSS_COMPILE_llvm
      ci: container: fix various breakage in container build
      of: overlay: propagate error unflattening DTBO
      efi: fix potential NULL dereference
      efi: trace: fix EFI_EXIT2 to not evaluate output value on error
      efi: loader: fix CRC32 computation in table header update
      efi: loader: fix pointer vs value comparison in free_efi_only
      efi: loader: fix disk write return value check
      efi: loader: fix EFI_ENTRY/EFI_EXIT ordering in efi_set_time
      efi: runtime: fix missing EFI_EXIT in efirt_query_variable_info
      efi: loader: fix file handle leak in efi_file_from_path
      efi: loader: fix missing field init in deferred protocol add
      efi: loader: fix memory leak in efi_var_to_file
      efi: loader: fix multiple bugs in efi_loader_bootm
      efi: loader: fix return type and memory leak in efi_smbios_register
      efi: loader: fix memory leak in efi_dp_split_file_path
      efi: loader: fix HII string table realloc and memset bugs
      efi: loader: fix format specifier and missing EFI_EXIT in boot services
      efi: fix unreachable free in efi_set_variable_printf
      efi: payload: fix missing NULL check after read_file in handover
      efi: payload: fix EFI page leak in efi_read_file
      efi: payload: fix inverted error check after state_load
      efi: fix out-of-bounds read in device path unknown node printing
      efi: payload: fix wrong page count in efi_unload_fdt
      efi: fix out-of-bounds read in 1394 device path printing
      efi: loader: initialize block IO ops before installing protocol
      efi: runtime: fix variable store bounds check to account for alignment
      efi: fix Fibre Channel device path type vs sub_type comparison
      efi: loader: fix file open mode always setting O_RDWR
      efi: loader: fix NULL pointer dereference when deleting root volume handle
      efi: loader: fix memory leak of variable file buffer on success
      efi: loader: fix memory leak in efi_var_collect on buffer overflow
      efi: fix signed format specifier for uint64_t timestamp
      efi: payload: fix possible memory leaks during init
      efi: payload: protect against missing state alias
      efi: loader: fix stale return value in console out-of-memory path
      efi: loader: fix off-by-one in FAT codepage translation
      efi: loader: fix co-existence with EFI payload support
      efi: payload: skip ELF MMU handling when booted via stub
      efi: payload: register dummy device tree
      console: introduce helper for printing binary buffers as-is
      efi: loader: protocol: console: don't turn LF into CRLF
      ci: container: add qemu-efi-aarch64 for testing against EDK-II
      gitignore: ignore /vmbarebox
      FIT: fix potential uninitialized read during fuzzing
      FIT: fix potential underflow of stack array
      of: fdt: fix double free in fdt_ensure_space
      of: overlay: initialize ret to fix garbage return value
      video: mode-helpers: preserve sync polarity in fb_videomode conversion
      video: dw_mipi_dsi: remove VPG workaround for panel initialization
      ci: container: include qemu-system-ppc
      boot: guard net in global.boot.default behind CONFIG_NET
      scripts: container.sh: explicitly pass build dir as volume
      regulator: bcm2835: fix USB-breaking regression
      net: am65-cpsw-nuss: fix up PHY mode for fixed RGMII TX delay
      Documentation: migration-guides: split off 2026.02.0 into own file
      Documentation: migration-guides: 2026.01.0: clarify fsdev linux.bootargs change
      ARM: Layerscape: LS1046: re-enable USB bus snooping
      ARM: Layerscape: icid: fixup ICID also for new fsl,ls1028a-dwc3 compat

Alexander Shiyan (1):
      mtd: nand: mxc_nand: use clk_get_optional for clock handling

Enrico Jörns (2):
      Documentation: bootchooser: fix grammar and wording for 'attempts_locked'
      Documentation: bootchooser: move attempts locking to own section

Fabian Pflug (5):
      i.MX: HAB: fix field return unlock fuse uid
      arm: mach-imx6: use kconfig for field return
      nvmem: ocotp: extend support to query the sticky bit
      i.MX: HAB: extend field_return support to imx6
      commands: hab: extend by field_return fuse burn

Jonas Rebmann (1):
      common: tlv: drop unused field void *driverata

Marco Felsch (6):
      pbl: fdt: fix fdt_fixup_mem error handling
      pbl: compressed-dtb: add missing includes
      ARM: atf: add missing includes in atf_common.h
      ARM: i.MX8M: cosmetic cleanup
      pbl: string: add strncmp
      bootm: fix initrd pr_info

Maud Spierings (1):
      RISC-V: dts: fix generation of dtbs-list

Michael Tretter (5):
      scripts: rockchip: add script to calculate key hash
      tee: drivers: add driver for Rockchip Secure Boot PTA
      commands: implement rksecure command
      tee: drivers: rksecure: make ta_uuid static
      ARM: rockchip: fix SD card startup for Radxa ROCK 5T

Robert Schwebel (1):
      Documentation: spell out what TLV actually means

Sascha Hauer (49):
      ARM: i.MX6: Riotboard: ungate peripheral clocks
      ARM: i.MX6: Riotboard: Add hint how to enable DEBUG_LL
      ARM: boards: remove #define DEBUG in board files
      gpio: Fix GPIOD_ASIS flag
      dts: update to v6.19-rc2
      dts: update to v6.19-rc3
      test/strategy.py: optionally don't activate BareboxDriver
      scripts/k3img: Add workaround for erratum i2474
      ARM: k3: am62l: Detect DRAM from controller
      ARM: i.MX: remove barebox,provide-mac-address property
      dts: update to v6.19-rc5
      Merge branch 'for-next/elf' into for-next/arm
      Makefile.compiler: add objcopy-option
      elf: only accept images matching the native ELF_CLASS
      elf: build for PBL as well
      elf: add elf segment iterator
      elf: add dynamic relocation support
      ARM: implement elf_apply_relocations() for ELF relocation support
      riscv: define generic relocate_image
      riscv: implement elf_apply_relocations() for ELF relocation support
      elf: implement elf_load_inplace()
      elf: create elf_open_binary_into()
      Makefile: add vmbarebox build target
      PBL: allow to link ELF image into PBL
      mmu: add MAP_CACHED_RO mapping type
      ARM: drop arm_fixup_vectors()
      ARM: linker script: create separate PT_LOAD segments for text, rodata, and data
      ARM: link ELF image into PBL
      ARM: cleanup barebox proper entry
      ARM: PBL: setup MMU with proper permissions from ELF segments
      riscv: linker script: create separate PT_LOAD segments for text, rodata, and data
      riscv: link ELF image into PBL
      riscv: Allwinner D1: Drop M-Mode
      ARM: i.MX8M: atf: add debug messages just before TF-A jump
      riscv: add ELF segment-based memory protection with MMU
      Merge branch 'for-next/arm' into HEAD
      Merge branch 'for-next/arm'
      Merge branch 'for-next/bootm'
      Merge branch 'for-next/dts'
      Merge branch 'for-next/dwc3'
      Merge branch 'for-next/imx'
      Merge branch 'for-next/misc'
      Merge branch 'for-next/modules'
      Merge branch 'for-next/qemu'
      Merge branch 'for-next/test'
      pbl/mmu: remove uninformative pr_debug()
      ARM: rockchip: dmc: use define instead of hardcoded value
      ARM: rockchip: atf: Fix memend
      Release v2026.02.0

Uwe Kleine-König (1):
      arm64: rockchip: Add support for QNAP's ts-433 4bay NAS

-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



             reply	other threads:[~2026-02-26 12:57 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-02-26 12:57 Sascha Hauer [this message]
2026-03-02  7:10 ` v2026.02.0 Ahmad Fatoum

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aaBDHkpK8p8fkWWN@pengutronix.de \
    --to=s.hauer@pengutronix.de \
    --cc=barebox@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox