summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
8 hoursconfigs: Resync with savedefconfigHEADmasterTom Rini
Resync all defconfig files using qconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
8 hoursMerge branch 'next'Tom Rini
13 hoursPrepare v2025.07v2025.07Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
3 daysconfigs: legoev3: adjust to reduce binary sizeDavid Lechner
Adjust legoev3_defconfig to reduce the binary output size. As u-boot has bloated a bit over the years, the legoev3_defconfig can no longer build something that fits in the 256kB size limit of the EV3. This drops a few unused features, but the real difference-makers are enabling thumb instructions and using link time optimization to reduce the size. This reduced u-boot.bin from 279,920 to 198,416 bytes on my local machine with arm-none-eabi-gcc (15:13.2.rel1-2) 13.2.1 20231009. HAS_BOARD_SIZE_LIMIT is also added to catch any future regressions. Signed-off-by: David Lechner <david@lechnology.com>
3 daysmx6sabresd: Reduce U-Boot proper size to fix boot regressionFabio Estevam
The mx6sabresd U-Boot proper binary size has grown beyond the CONFIG_BOARD_SIZE_LIMIT. Reduce its size by removing the CONFIG_MULTI_DTB_FIT, BOOTM_PLAN9 and BOOTM_RTEMS options. According to doc/README.multi-dtb-fit: "Usually the DTB is selected by the SPL and passed down to U-Boot. But some platforms don't use the SPL. In this case MULTI_DTB_FIT can used to provide U-Boot with a choice of DTBs" mx6sabresd uses SPL, so MULTI_DTB_FIT can be safely dropped as the DTB selection in SPL is done by board_fit_config_name_match(). Tested boot on the imx6dl and imx6q variants. Signed-off-by: Fabio Estevam <festevam@gmail.com>
5 daysMerge tag 'u-boot-dfu-next-20250703' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-dfu into next u-boot-dfu-next-20250703 CI job: - https://source.denx.de/u-boot/custodians/u-boot-dfu/-/pipelines/26938 Android: - Fix uninitialized vhdr pointer in image-android.c - Fix uninitialized vhdr pointer in abootimg cmd DFU: - Update maintainers file to include spl/spl_dfu
5 daysMerge branch 'next' of https://source.denx.de/u-boot/custodians/u-boot-riscv ↵Tom Rini
into next CI: https://source.denx.de/u-boot/custodians/u-boot-riscv/-/pipelines/26936 - RISC-V: Add big-endian build support - Board: aclint_ipi: Support T-Head C900 CLINT - Board: mpfs_icicle: Implement board_fdt_blob_setup()/board_fit_config_name_match() - Driver: pinctrl: Port pin controller driver for T-Head TH1520 SoC - Driver: cache: Update dependency for ANDES_L2_CACHE
5 daysMerge tag 'efi-next-03072025' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-tpm into next Sughosh added EFI HTTP(s) support into our eficonfig application. Up to now we could only enable that via our efidebug command. Users now get that option on the eficonfig menu. Javier implemented support for the EFI_PARTITION_INFO_PROTOCOL, to provide cached partition information for GPT partition types. The protocol describes legacy MBR partition types, but that's for backward compatibility and not implemented by this series. The protocol is needed by [0], an implementation of a UEFI based A/B boot protocol for the root filesystem. Paul added support for EFI_DEBUG_IMAGE_INFO_TABLE. This is part of the EFI spec and is defining a debug protocol that Google currently uses to debug their Generic Bootloader project [1][2], using EFI to load Android. Heinrich contributed a test EFI application for it as well. The efi_realloc() function he added will realloc any type of memory to BootServicesData, but keeping in mind the new protocol is the only consumer he will fix that on a followup patch. Finally another round of smatch fixes from Andrew cleans up coding errors. The CI https://source.denx.de/u-boot/custodians/u-boot-tpm/-/pipelines/26935 seems happy [0] https://gitlab.com/CentOS/automotive/src/ukiboot [1] https://lpc.events/event/18/contributions/1704/attachments/1550/3231/Android%20Generic%20Boot%20Loader.pdf [2] https://source.android.com/docs/core/architecture/bootloader/generic-bootloader
5 dayscache: Update dependency for ANDES_L2_CACHETom Rini
The cache driver here can only build on RISCV due to header dependencies. Express that requirement in Kconfig as well. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
5 daysboard: mpfs_icicle: implement ↵Conor Dooley
board_fdt_blob_setup()/board_fit_config_name_match() The firmware on the Icicle is capable of providing a devicetree in a1 to U-Boot, but until now the devicetree has been packaged in a "payload" [1] alongside U-Boot (or other bootloaders/RTOSes) and appended to the image. The address of this appended devicetree is placed in a1 by the firmware. This meant that the mechanism used by OF_SEPARATE to locate the devicetree at the end of the image would pick up the one provided by the firmware when u-boot-nodtb.bin was in the payload and U-Boot's devicetree when u-boot.bin was. The firmware is now going to be capable of providing a minimal devicetree (quite cut down due to severe space constraints), but this devicetree is linked into the firmware that runs out of the L2 rather than at the end of the U-Boot image. Implement board_fdt_blob_setup() so that this devicetree can be optionally used, and the devicetree provided in the "payload" can be used without relying on "happening" to implement the same strategy as OF_SEPARATE expects in combination with u-boot-nodtb.bin. Unlike other RISC-V boards, the firmware provided devicetree is only used when OF_BOARD is set, so that the almost certainly more complete devicetree in U-Boot will be used unless explicitly requested otherwise. Implement board_fit_config_name_match(), so that, using the firmware provided cut-down/minimal dtb, U-Boot can select one of several devicetrees when MULTI_DTB_FIT is enabled. Enabling both MULTI_DTB_FIT and OF_BOARD will lead to a conflict between the two options, with the latter taking priority due to board_fdt_blob_setup() being executed before board_fit_config_name_match(), which causes gd->fdt_blob to be overwritten with a pointer to the minimal devicetree rather than the location of the fit image containing the multiple dtbs. Let MULTI_DTB_FIT take priority in this case, by explicitly blocking the override when MULTI_DTB_FIT is enabled. Link: https://github.com/polarfire-soc/hart-software-services/blob/master/tools/hss-payload-generator/README.md [1] Signed-off-by: Conor Dooley <conor.dooley@microchip.com> Acked-by: Leo Yu-Chi Liang <ycliang@andestech.com>
5 daysriscv: cpu: th1520: Enable pinctrl by defaultYao Zi
Select PINCTRL_TH1520 in CPU Kconfig entry and update defconfig for existing TH1520-based boards to ensure PINCTRL is enabled. Signed-off-by: Yao Zi <ziyao@disroot.org> Acked-by: Leo Yu-Chi Liang <ycliang@andestech.com>
5 daysriscv: dts: th1520: Add pin controllersYao Zi
Describe the three pin controllers integrated in TH1520 SoC. Since we don't have support for clocks in the AON region, a dummy fixed-clock node is added to supply the pin controller locating in it. Signed-off-by: Yao Zi <ziyao@disroot.org> Acked-by: Leo Yu-Chi Liang <ycliang@andestech.com>
5 dayspinctrl: Port pin controller driver for T-Head TH1520 SoCYao Zi
The SoC pads of TH1520 are separated into three groups (AP 1, AP 2 and AON) controlled by independent pin controllers. This patch ports their driver from Linux kernel with most code for setting pinconf and pinmux kept as is. The dt-binding of TH1520 pin controller uses a schema where pins to configure are specfied as strings and looked up at runtime, which the generic pinctrl helpers of U-Boot cannot parse, thus a customized set_state() callback is implemented to parse pinconfig nodes and setup the configuration. Signed-off-by: Yao Zi <ziyao@disroot.org> Acked-by: Leo Yu-Chi Liang <ycliang@andestech.com>
5 daysriscv: byteorder: add test for big-endianBen Dooks
Test for big-endian either via __RISCVEB__ which migth be rather old, or check the BYTE_ORDER if the compiler defines it (which should be any modern gcc like v12) Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk> Acked-by: Leo Yu-Chi Liang <ycliang@andestech.com>
5 daysriscv: add build support for big-endianBen Dooks
Add support to build code big-endian if the board supports it. Updates the makefile to pass the correct compiler and elf flags. Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk> Reviewed-by: Tom Rini <trini@konsulko.com>
5 daysefi_loader: add dbginfodump.efiHeinrich Schuchardt
Provide a test application to dump the EFI_DEBUG_IMAGE_INFO_TABLE as implemented in EDK II. EFI_DEBUG_IMAGE_INFO is not packed in contrast to many other EFI structures. As of today EDK II when removing an entry in the EfiDebugImageInfoTable just sets NormalImage = NULL but does not compact the array. So TableSize reflects the number of non-NULL entries and not the array size as reported independently in https://github.com/tianocore/edk2/pull/11013 and https://github.com/tianocore/edk2/pull/11019. The current implementation tolerates this deviation from the UEFI specification. This is what the output may look like: Debug Info Table Dump ===================== => dump Modified Number of entries: 0x0000004a Info type 0x00000001 Address: [0x000000008315a000, 0x00000000831bafff] File: FvFile(D6A2CB7F-6A18-4E2F-B43B-9920A733700A) Handle: 0x000000017fe3cb18 ... Info type 0x00000001 Address: [0x000000017e8db000, 0x000000017ea00f3f] File: FvFile(7C04A583-9E3E-4F1C-AD65-E05268D0B4D1) Handle: 0x000000017f358e98 Info type 0x00000001 Address: [0x000000017eae5000, 0x000000017eae81ff] File: \dbginfodump.efi Handle: 0x000000017eaf0298 => Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
5 daysefi: selftest: add selftest for EFI_DEBUG_SUPPORTYing-Chun Liu (PaulLiu)
Add selftest to check the installed configuration table that has the correct GUID. Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: Ying-Chun Liu (PaulLiu) <paul.liu@linaro.org> Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
5 daysefi: add EFI_DEBUG_IMAGE_INFO for debugYing-Chun Liu (PaulLiu)
This commit adds the functionality of generate EFI_DEBUG_IMAGE_INFO while loading the image. This feature is described in UEFI Spec 2.10. Section 18.4.3. The implementation ensures support for hardware-assisted debugging and provides a standardized mechanism for debuggers to discover the load address of an EFI application. Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org> Cc: Peter Robinson <pbrobinson@gmail.com> Cc: Simon Glass <sjg@chromium.org> Signed-off-by: Ying-Chun Liu (PaulLiu) <paul.liu@linaro.org> Tested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
5 dayslib: efi_loader: efi_memory.c: add efi_realloc() for realloc memoryYing-Chun Liu (PaulLiu)
Add efi_realloc() for realloc memory that previously alloc by efi_alloc(). Note that if realloced memory is explicitly allocated as BootServicesData. Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org> Cc: Peter Robinson <pbrobinson@gmail.com> Cc: Simon Glass <sjg@chromium.org> Signed-off-by: Ying-Chun Liu (PaulLiu) <paul.liu@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
5 daysefi: add EFI_DEBUG_IMAGE_INFO_TABLE for debugYing-Chun Liu (PaulLiu)
EFI_DEBUG_IMAGE_INFO_TABLE is used to store EFI_LOADED_IMAGE for debug purpose. This commit adds the table to the EFI_CONFIGURATION_TABLE. This feature is described in UEFI Spec version 2.10. Section 18.4. The implementation ensures support for hardware-assisted debugging and provides a standardized mechanism for debuggers to discover and interact with system-level debug resources. Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Cc: Peter Robinson <pbrobinson@gmail.com> Cc: Simon Glass <sjg@chromium.org> Signed-off-by: Ying-Chun Liu (PaulLiu) <paul.liu@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
5 daysefi: add EFI_SYSTEM_TABLE_POINTER for debugYing-Chun Liu (PaulLiu)
Add EFI_SYSTEM_TABLE_POINTER structure for remote debugger to locate the address of EFI_SYSTEM_TABLE. This feature is described in UEFI SPEC version 2.10. Section 18.4.2. The implementation ensures support for hardware-assisted debugging and provides a standardized mechanism for debuggers to discover the EFI system table. Cc: Peter Robinson <pbrobinson@gmail.com> Cc: Simon Glass <sjg@chromium.org> Signed-off-by: Ying-Chun Liu (PaulLiu) <paul.liu@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Tested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> # change memset(systab_pointer, 0 ...) -> systab_pointer->crc32 = 0; Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
5 daystest: wget: add a test case for validating URISughosh Ganu
The wget module has a function wget_validate_uri() which is used for validating the URI to be used by wget. Add a basic test case for this function. Signed-off-by: Sughosh Ganu <sughosh.ganu@linaro.org> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
5 dayscmd: eficonfig: add support for URI device path based boot optionsSughosh Ganu
The eficonfig command provides a menu based interface for maintenance of the EFI boot options. Add support for adding a URI based boot option. This boot option can then be used for HTTP boot. Signed-off-by: Sughosh Ganu <sughosh.ganu@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Tested-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
5 daysefi_loader: Prevent free of uninitialised pointerAndrew Goodbody
Taking a goto to out_of_resources before receive_lengths is assigned will result in an attempt to free an unitialised pointer. Instead initialise receive_lengths to NULL on declaration to prevent this from occurring. This issue was found by Smatch. Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
5 daysefi_loader: Prevent dereference of uninitialised variableAndrew Goodbody
If phandler is returned as NULL from efi_search_protocol then protocol_interface is never assigned to. Instead return EFI_UNSUPPORTED as per the spec. This issue found by Smatch. Also eliminate the use of the variable protocol_interface as it is not needed. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
5 daysefi_loader: Prevent dereferencing NULL pointerAndrew Goodbody
Taking the first goto error: in file_open could either result in an attempt to dereference fh when NULL or else free fh->path which has not been assigned to and so will be unknown. Avoid both of these problems by passing path to free instead of fh->path. This issue found by Smatch. Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
5 daysefi_selftest: Add basic partition info check to block io testJavier Martinez Canillas
Test the EFI_PARTITION_INFO_PROTOCOL in the existing EFI_BLOCK_IO_PROTOCOL unit test. It is fairly basic, since it only checks that the values of the struct efi_partition_info .revision, .type and .system fields are correct. It doesn't check the MBR partition record information, because that's not supported by the EFI_PARTITION_INFO_PROTOCOL implementation yet. The test can be extended once the support is implemented, or if the in-memory disk image used for the test is modified to have a GPT partition type instead. Suggested-by: Tom Rini <trini@konsulko.com> Signed-off-by: Javier Martinez Canillas <javierm@redhat.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
5 daysefi_loader: disk: add EFI_PARTITION_INFO_PROTOCOL supportJavier Martinez Canillas
The UEFI 2.10 specification mentions that this protocol shall be installed along with EFI_BLOCK_IO_PROTOCOL. It provides cached partition information for MBR and GPT partition types. This patch just implements support for GPT partition types. The legacy MBR partition types is only needed for backward compatibility and can be added as a follow-up if needed, to make it fully compliant with the EFI spec. Signed-off-by: Javier Martinez Canillas <javierm@redhat.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
5 daysdisk: efi: expose the part_get_gpt_pte() helper functionJavier Martinez Canillas
This function will be used by the EFI application disk support code to provide data required by the EFI_PARTITION_INFORMATION_PROTOCOL. Signed-off-by: Javier Martinez Canillas <javierm@redhat.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
5 daysdisk: efi: Move logic to get a GPT entry into a helper functionJavier Martinez Canillas
Factor out the logic to get the Partition Table Entry (PTE) of a given partition into a helper function, since it could be used by other code. Signed-off-by: Javier Martinez Canillas <javierm@redhat.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
5 daysboard: thead: licheepi4a: Bring up secondary cores in SPLYao Zi
Setup core information and bring secondary HARTs up for a functional multi-core system. Signed-off-by: Yao Zi <ziyao@disroot.org> Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
5 daysriscv: dts: th1520: Preserve CLINT node for SPLYao Zi
Preserve CLINT node for SPL, whose IPI functionality is essential for operation of a multi-core system. Signed-off-by: Yao Zi <ziyao@disroot.org> Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
5 daysriscv: cpu: th1520: Add a routine to bring up secondary coresYao Zi
On coldboot, only HART 0 among the four HARTs of TH1520 is brought up by hardware, and the remaining HARTs are in reset states, requiring manual setup of reset address and deassertion to function normal. Introduce a routine to do the work. Signed-off-by: Yao Zi <ziyao@disroot.org> Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
5 daysriscv: cpu: th1520: Setup CPU feature CSRs in harts_early_initYao Zi
C910 cores integrated in TH1520 SoC provide various customized CSRs for configuring core behavior, including cache coherency and timing, branch predication, and clock gating for internal components. This patch sets them up for efficient operation and satisfying requirements of an SMP system. Signed-off-by: Yao Zi <ziyao@disroot.org> Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
5 daysriscv: aclint_ipi: Support T-Head C900 CLINTYao Zi
Although timer component of the CLINT isn't fully compatible with the generic RISC-V ACLINT, the IPI component behaves the same. As the CLINT doesn't have corresponding riscv_aclint_timer driver available, let's try looking for a compatible SYSCON device directly when no riscv_aclint_timer device could be found on IPI initialization. Signed-off-by: Yao Zi <ziyao@disroot.org> Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
6 daysMerge tag 'mmc-next-2025-07-02' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-mmc into next CI: https://source.denx.de/u-boot/custodians/u-boot-mmc/-/pipelines/26911 - Get clock manager address via DT for socfpga_dw_mmc - Revert "drivers: mmc: rpmb: Use R1 response" - Fix offsets relative to the end of the partition for mmc env
6 daysboot: android: Prevent use of unintialised variableAndrew Goodbody
Initialise vhdr to prevent its use when uninitialised. This issue was found with Smatch. Fixes: e058176be32b (android: boot: add vendor boot image to prepare for v3, v4 support) Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org> Link: https://lore.kernel.org/r/20250625-abootimg_fix-v4-2-df7af00e87b0@linaro.org Signed-off-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
6 dayscmd: abootimg: Prevent use of unintialised variableAndrew Goodbody
Initialise vhdr to prevent its use when uninitialised. This issue was found with Smatch. Fixes: 636da2039aea (android: boot: support boot image header version 3 and 4) Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Link: https://lore.kernel.org/r/20250625-abootimg_fix-v4-1-df7af00e87b0@linaro.org [mkorpershoek: fixed trivial typo in commit msg] Signed-off-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
6 daysMAINTAINERS: Add common/spl/spl_dfu to DFU entryMattijs Korpershoek
This was not listed as part of the DFU entry. Add it to make sure that the DFU maintainers get CC'ed on patches for spl_dfu. Link: https://lore.kernel.org/r/20250618-maintainers-dfu-spl-v1-1-03f4bc745e36@kernel.org Signed-off-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
6 daysmmc: socfpga_dw_mmc: Retrieve clock manager address via DTAlif Zakuan Yuslaimi
Update the MMC driver to retrieve the clock manager base address via probing the clock manager node in the device tree. Signed-off-by: Alif Zakuan Yuslaimi <alif.zakuan.yuslaimi@altera.com> Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 daysRevert "drivers: mmc: rpmb: Use R1 response"Jan Kiszka
This reverts commit ae93d8106bdb5926efef9222d553adb295ebce96. It is no longer needed since 24b1e0c7e2e3. Since the obsolete include pulled in byteorder.h which is needed by now, include this one directly. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 daysenv: mmc: fix offsets relative to the end of the partitionMichael Walle
According to the help text, you can set negative offsets to indicated that the offset is relative to the end of the parition. But kconfig doesn't let you specify negative hex values. I think this fell through the cracks when converting the symbol from a '#define' to a kconfig option. Introduce a new boolean kconfig option to switch on the "relative to the end" behavior. Signed-off-by: Michael Walle <mwalle@kernel.org> Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 daysMerge patch series "binman: properly error out if path provided to ↵Tom Rini
key-name-hint in signature nodes" Quentin Schulz <foss+uboot@0leil.net> says: I misunderstood the documentation and put the signing key in a keys/ directory while setting key-name-hint property in the signature node and u-boot-spl-pubkey-dtb to a path. mkimage doesn't fail if it cannot find the public key when signing a FIT but returns something on stderr to notify the user it couldn't find the key. The issue is that bintool currently discards stderr if the command successfully returns, so the FIT is not signed AND the user isn't made aware of it unless the image is manually inspected. mkimage does fail when trying to insert a public key in a DTB if it isn't found but we can have a better error message. Link: https://lore.kernel.org/r/20250418-binman-pubkey-dir-v2-0-b6b90a765ffe@cherry.de
6 daysbinman: etype: u_boot_spl_pubkey_dtb: provide more explicit error for ↵Quentin Schulz
key-name-hint with path key-name-hint property in u-boot-spl-pubkey-dtb binman entry may contain a path instead of a filename due to user mistake. Because we currently assume it is a filename instead of a path, binman will find the full path to the key based on that path, and return the dirname of the full path but keeps the path in key-name-hint instead of stripping the directories from it. This means mkimage will fail with the following error message if we have key-name-hint set to keys/dev: binman: Error 1 running 'fdt_add_pubkey -a sha256,rsa2048 -k /home/qschulz/work/upstream/u-boot/keys -n keys/dev -r conf /home/qschulz/work/upstream/u-boot/build/ringneck/u-boot-spl-dtbdhsfx3mf': Couldn't open RSA certificate: '/home/qschulz/work/upstream/u-boot/keys/keys/dev.crt': No such file or directory Let's make it a bit more obvious what the error is by erroring out in binman if a path is provided in key-name-hint (it is named key-name-hint and not key-path-hint after all). Fixes: 5609843b57a4 ("binman: etype: Add u-boot-spl-pubkey-dtb etype") Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Reviewed-by: Simon Glass <sjg@chromium.org>
6 daysbinman: etype: fit: raise ValueError if key-name-hint is a pathQuentin Schulz
mkimage doesn't fail if it cannot find the public key but it prints to stderr. Considering that btool.run() discards stderr, it means binman happily returns an unsigned FIT and doesn't tell you something went wrong. Binman will actually find the file if there's a path in the key-name-hint property but the current logic expects key-name-hint to be a filename and thus returns the dirname of the found path for the key, but with the original key-name-hint appended. This means we can have the following: - key-name-hint = "keys/dev" - name = "/home/qschulz/work/upstream/u-boot/keys/" so we pass /home/qschulz/work/upstream/u-boot/keys/ to the -k option of mkimage but the FIT still contains "keys/dev" in key-name-hint which means mkimage will try to find the key at /home/qschulz/work/upstream/u-boot/keys/keys/, which doesn't exist. Let's assume paths are simply not supported (it is named key-name-hint and not key-path-hint after all) and raise an error if the property contains a path so that the build fails and not quietly. Fixes: 133c000ca334 ("binman: implement signing FIT images during image build") Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Reviewed-by: Simon Glass <sjg@chromium.org>
6 daysbuildman: Support an in-tree build in the current dirSimon Glass
Allow -w to be used with -i to do a build without a separate output directory. Signed-off-by: Simon Glass <sjg@chromium.org>
6 daysbuildman: Correct behaviour of --in-treeSimon Glass
This option doesn't work as expected since it sets the cwd to the work directory, which does not necessarily hold the source code. It should be left unset, so that the current directory is the source directory. Signed-off-by: Simon Glass <sjg@chromium.org>
6 daysmtd/spinand: gigadevice: sync supported chips with linux 6.9Chuanhong Guo
Adding support for: GD5F1GQ4RExxG GD5F2GQ4UExxG GD5F2GQ4RExxG GD5F1GQ5RExxG GD5F2GQ5UExxG GD5F2GQ5RExxG GD5F4GQ6UExxG GD5F4GQ6RExxG GD5F1GM7UExxG GD5F1GM7RExxG GD5F2GM7UExxG GD5F2GM7RExxG GD5F4GM8UExxG GD5F4GM8RExxG GD5F2GQ5xExxH GD5F1GQ5RExxH GD5F1GQ4RExxH Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 daysMerge tag 'tpm-next-01072025' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-tpm into next CI: https://source.denx.de/u-boot/custodians/u-boot-tpm/-/pipelines/26897 Updates from Andrew fixing issues reported by smatch. It picked up cases of enum functions returning integers instead of enum values.
7 daysMerge tag 'u-boot-imx-next-20250630' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx into next CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/26882 - Add capsule update support for i.MX8M EVKs. - Fixes for Vybrid BK4 board. - Use common gpio.h in i.MXRT.