summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-05-14i2c: Remove legacy CONFIG_SYS_I2C_SOFTTom Rini
The last users of this legacy i2c stack have been removed or converted to a modern part of the stack instead. Remove this code and references to it. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Heiko Schocher <[email protected]>
2026-05-14i2c: designware_i2c: Staticize driver opsMarek Vasut
Set the ops structure as static. The structure is not accessible from outside of this driver. Reviewed-by: Heiko Schocher <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2026-05-13Merge tag 'ab-master-12052026' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-tpm - A single UAF fix from Kory for out fwumdata tool
2026-05-13Merge tag 'u-boot-stm32-20260512' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-stm CI: https://source.denx.de/u-boot/custodians/u-boot-stm/-/pipelines/30081 - reset: stm32: Fix compilation error - Remove remaining non-existant STM32_RESET flag - configs: stm32mp13: Add SPI-NAND UBI boot support - Support metadata-driven A/B boot for STM32MP25
2026-05-13usb: gadget: f_acm: Fix memory leak in acm_addFrancois Berder
If udc_device_get_by_index fails, the f_acm struct was not released. Free it before returning the error. Signed-off-by: Francois Berder <[email protected]> Reviewed-by: Marek Vasut <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Link: https://patch.msgid.link/BESP194MB2805271AD5DBE47B322F8DC3DA3A2@BESP194MB2805.EURP194.PROD.OUTLOOK.COM Signed-off-by: Mattijs Korpershoek <[email protected]>
2026-05-12virtio: fix return value checkChristian Pötzsch
The virtio_blk_do_single_req function returns ulong, which normally is the processed size, but in an error case can be the actual error. Use the special IS_ERR_VALUE macro to test for error. Addresses-Coverity-ID: CID 645833 (DEADCODE) & CID 645834 (NO_EFFECT) Signed-off-by: Christian Pötzsch <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2026-05-12arm: apple: Add Apple M3 (t8122) supportJanne Grunau
Apple's M3 SoC is similar to M1 and M2 but uses a different memory map. The main difference is that RAM starts at 0x100_0000_0000 like on t600x and t602x (M1 and M2 Pro/Max/Ultra). Otherwise IO blocks have been rearranged. U-boot's existing drivers are compatible with the hardware and M3 device trees will carry "apple,t8103-*" compatible strings. Only apple-atcphy-reset might need a new compatible due to USB4 / DisplayPort changes the Linux driver has to deal with. Signed-off-by: Janne Grunau <[email protected]> Acked-by: Mark Kettenis <[email protected]>
2026-05-12Merge patch series "Switch Apple silicon boards to upstream device trees"Tom Rini
Janne Grunau <[email protected]> says: The Linux device trees for Apple silicon devices cover now most of the hardware as u-boot's internal device trees for M1 devices. Linux has in addition device trees M2 and M1 and M2 Pro/Max/Ultra devices which were never added in u-boot. The most common use case for u-boot on Apple silicon devices does not use DTBs from u-boot but passes runtime modified device trees from an earlier boot loader (m1n1). This change regresses support for the SPI on M1 and M1 Pro/Max notebooks as SPI keyboard support is not in upstream Linux. This regression is in my opinion acceptable due to the limited use of u-boot's DTBs for these targets. Link: https://lore.kernel.org/r/[email protected]
2026-05-12arm: dts: Switch Apple silicon devices to dts/upstreamJanne Grunau
The device tree on Apple silicon devices is passed from a previous bootloader stage. The bootloader fills in dynamic information so u-boot can not use its own device tree. As documented in doc/board/apple/m1.rst it is possible to build boot bundles (bootloader + device tree + gzipped u-boot binary). These are useful for testing. Instead of using u-boot's own device trees for M1 (t8103) devices use upstream device trees from dts/upstream/src/arm64/apple. The u-boot device trees have not seen updates since 2022. The upstream linux device trees have feature parity for the M1 devices. In addition linux has device trees for M1 Pro/Max/Ultra, M2 and M2 Pro/Max/Ultra devices. Keep t8103-j274 as default device tree to avoid further updates. Signed-off-by: Janne Grunau <[email protected]> Acked-by: Mark Kettenis <[email protected]>
2026-05-12doc: device-tree-bindings: Remove apple,pinctrl.yamlJanne Grunau
Remove outdated apple,pinctrl.yaml. The dts/upstream contains the current version of this binding. Signed-off-by: Janne Grunau <[email protected]> Acked-by: Mark Kettenis <[email protected]>
2026-05-12doc: board: apple: Mention M2 and M2 Pro/Max/Ultra SoCsJanne Grunau
These SoCs are supported since 2022/2023 but were never added to the documentation. The devices very similar to the equivalent M1 devices. The biggest difference is that the M2 and M2 Pro/Max based laptops no longer use SPI for the keyboard. Signed-off-by: Janne Grunau <[email protected]> Acked-by: Mark Kettenis <[email protected]>
2026-05-12arm: apple: Switch to board based text envJanne Grunau
The main use case for u-boot on Apple silicon based devices is to provide an EFI based bootloader for operating systems. This uses a generic u-boot image with DTBs passed from an earlier boot loader (m1n1). Use the generic board name "mac" for this purpose. Signed-off-by: Janne Grunau <[email protected]>
2026-05-12MAINTAINERS: Add Janne Grunau as reviewer for Apple M1 SoC supportJanne Grunau
I'm one of the co-maintainers of Apple silicon support in the Linux kernel and have contributed to u-boot's Apple SoC support. Signed-off-by: Janne Grunau <[email protected]> Acked-by: Mark Kettenis <[email protected]>
2026-05-12MAINTAINERS: Add missing Apple M1 specific filesJanne Grunau
The files weren't added to MAINTAINERS but clearly belong to Apple silicon (M1) support. Signed-off-by: Janne Grunau <[email protected]> Acked-by: Mark Kettenis <[email protected]>
2026-05-12watchdog: apple: Add "apple,t8103-wdt" compatibleJanne Grunau
After discussion with the devicetree maintainers we agreed to not extend lists with the generic compatible "apple,wdt" anymore [1]. Use "apple,t8103-wdt" as base compatible as it is the SoC driver and bindings were originally written for. The t602x (M2 Pro/Max/Ultra) devicetrees submitted in [2] use this compatible as fallback instead of "apple,wdt". Link: https://lore.kernel.org/asahi/[email protected]/ [1] Link: https://lore.kernel.org/asahi/[email protected]/ [2] Signed-off-by: Janne Grunau <[email protected]> Reviewed-by: Stefan Roese <[email protected]> Acked-by: Mark Kettenis <[email protected]>
2026-05-12spi: apple: Add "apple,t8103-spi" compatibleJanne Grunau
After discussion with the devicetree maintainers we agreed to not extend lists with the generic compatible "apple,spi" anymore [1]. Use "apple,t8103-spi" as base compatible as it is the SoC driver and bindings were originally written for. The t602x (M2 Pro/Max/Ultra) devicetrees submitted in [2] use this compatible as fallback instead of "apple,spi". Link: https://lore.kernel.org/asahi/[email protected]/ [1] Link: https://lore.kernel.org/asahi/[email protected]/ [2] Signed-off-by: Janne Grunau <[email protected]> Acked-by: Mark Kettenis <[email protected]>
2026-05-12power: domain: apple: Add "apple,t8103-pmgr-pwrstate" compatibleJanne Grunau
After discussion with the devicetree maintainers we agreed to not extend lists with the generic compatible "apple,pmgr-pwrstate" anymore [1]. Use "apple,t8103-pmgr-pwrstate" as base compatible as it is the SoC driver and bindings were originally written for. The t602x (M2 Pro/Max/Ultra) devicetrees submitted in [2] use this compatible as fallback instead of "apple,pmgr-pwrstate". Link: https://lore.kernel.org/asahi/[email protected]/ [1] Link: https://lore.kernel.org/asahi/[email protected]/ [2] Signed-off-by: Janne Grunau <[email protected]> Acked-by: Mark Kettenis <[email protected]>
2026-05-12pinctrl: apple: Add "apple,t8103-pinctrl" compatibleJanne Grunau
After discussion with the devicetree maintainers we agreed to not extend lists with the generic compatible "apple,pinctrl" anymore [1]. Use "apple,t8103-pinctrl" as fallback compatible as it is the SoC driver and bindings were originally written for. The t602x (M2 Pro/Max/Ultra) devicetrees submitted in [2] use this compatible as fallback instead of "apple,t8103-pinctrl". Link: https://lore.kernel.org/asahi/[email protected]/ [1] Link: https://lore.kernel.org/asahi/[email protected]/ [2] Signed-off-by: Janne Grunau <[email protected]> Acked-by: Mark Kettenis <[email protected]>
2026-05-12nvme: apple: add "apple,t8103-nvme-ans2" compatibleJanne Grunau
After discussion with the devicetree maintainers we agreed to not extend lists with the generic compatible "apple,nvme-ans2" anymore [1]. Add "apple,t8103-nvme-ans2" as fallback compatible as this is the SoC the driver and bindings were originally written for. The t602x (M2 Pro/Max/Ultra) devicetrees submitted in [2] use this compatible as fallback instead of "apple,t8103-nvme-ans2". Link: https://lore.kernel.org/asahi/[email protected]/ [1] Link: https://lore.kernel.org/asahi/[email protected]/ [2] Signed-off-by: Janne Grunau <[email protected]> Acked-by: Mark Kettenis <[email protected]>
2026-05-12arm: dts: k3-am69-aquila: add combined boot firmware imageErnest Van Hoecke
Add nodes to the binman configuration to create single binaries that combine tiboot3-am69-*-aquila.bin, tispl.bin and u-boot.img into firmware-aquila-am69-*.bin, with the proper offsets. These binaries can be used to flash U-Boot via a single binary of three, as it is done now. Signed-off-by: Ernest Van Hoecke <[email protected]> Reviewed-by: Neha Malcom Francis <[email protected]> Acked-by: Francesco Dolcini <[email protected]>
2026-05-12mmc: sdhci-cadence: trigger tuning for SD HS mode on SD6HC (v6) PHYTze Yee Ng
The Cadence SD6HC (SDHCI spec v4.20+) controller uses a soft PHY whose DLL delay characteristics vary with PVT (Process, Voltage, Temperature) and board-level trace routing. A static delay value programmed via device tree for SD High Speed mode is insufficient because the optimal sampling point varies per board, SD card, and operating conditions. Runtime calibration is required. While the SD Physical Layer Specification does not mandate tuning for SD HS mode (only for UHS-I SDR50/SDR104), the Cadence SD6HC PHY requires runtime calibration of its receive data delay line to find a valid sampling window under constrained clock conditions. The tuning is triggered from the set_ios_post callback because at that moment hardware has committed the new bus width, clock frequency, and speed mode to the controller registers. This ensuring the tuning sequence runs at the correct SD HS operating conditions. The tuning is gated by a device tree property "cdns,sd-hs-tuning" so that only boards requiring runtime calibration opt in. When enabled, the driver performs a 40-tap DLL sweep using CMD19 to find the largest consecutive passing window, then programs the midpoint into PHY_DLL_SLAVE_CTRL_REG. To enable on a board, add to the MMC node in device tree: &mmc { cdns,sd-hs-tuning; }; Signed-off-by: Tze Yee Ng <[email protected]>
2026-05-12reset: stm32: Fix compilation errorPatrice Chotard
The following compilation error occurs when environment variable KBUILD_OUTPUT is not set : drivers/reset/stm32/stm32-reset-mp21.c:8:10: fatal error: stm32-reset-core.h: No such file or directory 8 | #include <stm32-reset-core.h> | ^~~~~~~~~~~~~~~~~~~~ As stm32-reset-core.h is located in same directory than stm32-reset-mp21.c, we should use #include "stm32-reset-core.h". Signed-off-by: Patrice Chotard <[email protected]> Reviewed-by: Raphaël Gallais-Pou <[email protected]>
2026-05-12arm/mach-stm32: Remove remaining non-existent STM32_RESETPatrice Chotard
Symbol CONFIG_STM32_RESET does not exist. Don't select it. Signed-off-by: Patrice Chotard <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2026-05-12board: st: stm32mp25: support dynamic A/B bank bootupDario Binacchi
Enable automatic detection of the active A/B bank by retrieving partition GUIDs from FWU metadata. This ensures the system correctly identifies the bootable partitions even in multi-bank scenarios, falling back to a standard bootable flag scan if the UUIDs are missing. To enable A/B bank bootup on stm32mp25 boards, add the following Kconfig options to the stm32mp25_defconfig: CONFIG_FWU_MULTI_BANK_UPDATE=y CONFIG_FWU_MDATA=y CONFIG_FWU_NUM_BANKS=2 CONFIG_FWU_NUM_IMAGES_PER_BANK=3 CONFIG_CMD_FWU_METADATA=y CONFIG_FWU_MDATA_V2=y Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Patrice Chotard <[email protected]>
2026-05-12test: dm: fwu_mdata: add test for fwu_mdata_get_image_guidDario Binacchi
Add a new unit test for the fwu_mdata_get_image_guid() function. Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2026-05-12fwu: add helper to get image GUID by type and bank indexDario Binacchi
Introduce fwu_mdata_get_image_guid() to retrieve a specific image GUID from the FWU metadata based on the bank index and image type GUID. This allows identifying the correct partition in multi-bank (A/B) scenarios, ensuring the correct image is targeted depending on the current bank. Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Simon Glass <[email protected]> Acked-by: Ilias Apalodimas <[email protected]>
2026-05-12test: cmd: part: add UUID lookup testsDario Binacchi
Extend the 'part' command unit tests to include partition lookup via UUID. This ensures that the 'number', 'start', and 'size' subcommands consistently handle UUIDs as partition identifiers, maintaining parity with the name-based lookup functionality. Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2026-05-12cmd: part: support lookup by UUIDDario Binacchi
The 'part' command currently allows looking up a partition only by its number or name. Extend the 'number', 'start', and 'size' subcommands to support looking up the partition via its UUID. Unlike names, UUIDs guarantee unique partition identification, avoiding ambiguity. The logic is updated to check if the provided string is a valid UUID before falling back to a name-based search. The help strings for these subcommands are updated accordingly. Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2026-05-12test: cmd: add unit tests for part commandDario Binacchi
Add unit tests for the 'part' command, specifically for the 'number', 'start', and 'size' subcommands. These tests establish a baseline for the current partition lookup functionality by name. This foundation will be used by subsequent patches to extend the command, ensuring consistent behavior as new features are introduced. Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2026-05-12test: dm: part: add test for part_get_info_by_uuidDario Binacchi
Add a new unit test for the part_get_info_by_uuid() function. Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2026-05-12lib: uuid: add partition type GUID for extended bootloaderDario Binacchi
The Extended Boot Loader Partition (XBOOTLDR) is a standard defined by the Discoverable Partitions Specification (DPS) to host boot loader resources outside of the EFI System Partition ([1], [2]). Defining this GUID (bc13c2ff-59e6-4262-a352-b275fd6f7172) allows U-Boot to correctly identify and label these partitions using the "xbootldr" shorthand. [1] https://uapi-group.org/specifications/specs/discoverable_partitions_specification/#extended-boot-loader-partition:~:text=UEFI%20Specification.-,Extended%20Boot%20Loader%20Partition,-bc13c2ff%2D59e6%2D4262 [2] https://uapi-group.org/specifications/specs/boot_loader_specification/ Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2026-05-12configs: stm32mp13: add SPI-NAND UBI boot supportAustin Shirley
The STM32MP13 default environment only handles MMC and serial/USB boot. When TF-A reports BOOT_FLASH_SPINAND the boot_device variable is set to 'spi-nand' but bootcmd_stm32mp never redirects boot_targets to ubifs0, so distro_bootcmd falls through to MMC/USB. This change mirrors the STM32MP15 logic: - Add a BOOT_TARGET_UBIFS entry to BOOT_TARGET_DEVICES so that bootcmd_ubifs0 is defined (ubi part UBI; ubifsmount ubi0:boot). - Add the 'spi-nand' / 'nand' clause to bootcmd_stm32mp so that boot_targets is set to 'ubifs0' when booting from NAND. Signed-off-by: Austin Shirley <[email protected]> Cc: Patrick Delaunay <[email protected]> Cc: Patrice Chotard <[email protected]> Cc: Tom Rini <[email protected]> Cc: [email protected]
2026-05-12tools: fwumdata: Fix use-after-free in parse_config()Kory Maincent
In parse_config(), devname is dynamically allocated by sscanf(). When sscanf() fails to fill enough fields (rc < 3), devname is freed and the loop continues to the next line. However, if the next call to sscanf() fails to match (rc == 0), devname is not written and still holds the stale freed pointer. The subsequent free(devname) then operates on already-freed memory. Fix this by resetting devname to NULL before each sscanf() call, so that a non-matching call leaves a NULL pointer and the subsequent free() becomes a harmless no-op. Reported-by: Coverity Scan Link: https://lists.denx.de/pipermail/u-boot/2026-April/614161.html Signed-off-by: Kory Maincent <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2026-05-11Prepare v2026.07-rc2v2026.07-rc2Tom Rini
Signed-off-by: Tom Rini <[email protected]>
2026-05-11Merge tag 'dm-pull-11may26b' of git://git.denx.de/u-boot-dmTom Rini
CI: https://source.denx.de/u-boot/custodians/u-boot-dm/-/pipelines/30065 - Add missing bintool docstrings - Minor patman fix - Fix small ACPI bug
2026-05-11Merge patch series "j721s2: j784s4: Add workaround for errata i2437"Tom Rini
Udit Kumar <[email protected]> says: Add a necessary hardware errata workaround for J721S2 and J784S4. Bootlogs https://gist.github.com/uditkumarti/da2a489a78d3241ecd2791c9df1c1317 Link: https://lore.kernel.org/r/[email protected]
2026-05-11arch: mach-k3: j784s4_init: Add workaround for errata i2437Neha Malcom Francis
Add the workaround proposed for J784S4 errata i2437 (link) for SE clock-gating turning off too early. Without this, a hardware bug present in C7120 leads to C7120 CPU hanging. Link: https://www.ti.com/lit/pdf/sprz536 Signed-off-by: Neha Malcom Francis <[email protected]> Signed-off-by: Udit Kumar <[email protected]>
2026-05-11arch: mach-k3: j721s2_init: Add workaround for errata i2437Neha Malcom Francis
Add the workaround proposed for J721S2 errata i2437 (link) for SE clock-gating turning off too early. Without this, a hardware bug present in C7120 leads to C7120 CPU hanging. Link: https://www.ti.com/lit/pdf/sprz530 Signed-off-by: Neha Malcom Francis <[email protected]> Signed-off-by: Udit Kumar <[email protected]>
2026-05-11arm: mach-k3: arm: mach-k3: Add writel_verify macro for register write ↵Udit Kumar
verification Add a helper macro to write and verify a 32-bit value to a memory-mapped register. This is essential for hardware errata workarounds that require confirmation that register writes have taken effect before proceeding with initialization. Signed-off-by: Udit Kumar <[email protected]>
2026-05-11configs: Resync with savedefconfigTom Rini
Resync all defconfig files using qconfig.py Signed-off-by: Tom Rini <[email protected]>
2026-05-11fs: ubifs: fix bugs involving symlinks in ubifs_findfilePeter Collingbourne
When encountering a symlink pointing to an absolute path, ubifs_findfile would return the target of the symlink as the result instead of resolving any following components in the original path. Fix it by following the same code path that is used for relative paths except that we set the next inode to the root if we see a leading slash. The existing code used memcpy and sprintf to copy the symlink target into a fixed size stack buffer and was therefore vulnerable to buffer overflows with a sufficiently long symlink target. Fix it by using a heap buffer for the temporary path during path resolution. Signed-off-by: Peter Collingbourne <[email protected]> Fixes: 9d7952e4c636 ("ubifs: Add support for looking up directory and relative symlinks")
2026-05-11binman: Use bintool wrappers for PKCS#11 tools in testsSimon Glass
The PKCS#11 signing tests in ftest.py call tools.run('softhsm2-util', ...) directly (and the equivalent for pkcs11-tool and p11-kit), even though the test setup has already constructed the corresponding Bintool instances. As Quentin Schulz observed on v1, the bintool wrapper for these tools is currently used only as an "is this installed?" probe. Route the eight remaining call sites in ftest.py through <bintool>.run_cmd(...), which the Bintool base class already provides. The change is test-side only; no production binman code calls these tools. Suggested-by: Quentin Schulz <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2026-05-11binman: Flesh out the softhsm2-util bintool docstringSimon Glass
The Sphinx-generated bintools.rst currently produces an empty section for this bintool, since its class docstring is only a single line and so the body under the heading is blank. Extend the docstring with a short description of what softhsm2-util does and how binman uses it, so the generated documentation has useful content. Suggested-by: Heinrich Schuchardt <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2026-05-11binman: Flesh out the pkcs11-tool bintool docstringSimon Glass
The Sphinx-generated bintools.rst currently produces an empty section for this bintool, since its class docstring is only a single line and so the body under the heading is blank. Extend the docstring with a short description of what pkcs11-tool does and how binman uses it, so the generated documentation has useful content. Suggested-by: Heinrich Schuchardt <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2026-05-11binman: Flesh out the p11-kit bintool docstringSimon Glass
The Sphinx-generated bintools.rst currently produces an empty section for this bintool, since its class docstring is only a single line and so the body under the heading is blank. Extend the docstring with a short description of what p11-kit does and how binman uses it, so the generated documentation has useful content. Suggested-by: Heinrich Schuchardt <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2026-05-11patman: fix use in worktreeLudwig Nussel
When using a worktree '.git' actually is a file and pygit2 init_repository() does not like that. The intention is not to create a new git repo anyway so use normal constructor instead of init_repository(). Signed-off-by: Ludwig Nussel <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2026-05-11acpi: fix initial RSDT and XSDT sizeHeinrich Schuchardt
When creating the RSDT and the XSDT table they contain no entries. The table size therefore must equal the header size. Without this change a NULL deference has been observed in acpi_find_table() when running `ut dm` on sandbox64_defconfig executed via `sudo ./u-boot -D`. Fixes: 94ba15a3f13f ("x86: Move base tables to a writer function") Fixes: 7e586f69070d ("acpi: Put table-setup code in its own function") Fixes: ab5efd576c4e ("x86: acpi: Adjust order in acpi_table.c") Fixes: 867bcb63e79f ("x86: Generate a valid ACPI table") Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]> Update dm_test_acpi_ctx_and_base_tables() in test/dm/acpi.c to expect sizeof(struct acpi_table_header) for the initial table length (instead of sizeof(*rsdt) / sizeof(*xsdt)), and to compute the checksum over header->length bytes rather than the full struct size: Signed-off-by: Simon Glass <[email protected]>
2026-05-09Merge tag 'u-boot-at91-fixes-2026.07-a' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-at91 First set of u-boot-at91 fixes for the 2026.07 cycle: - Cleanup some useless code
2026-05-09Merge branch 'master' of git://source.denx.de/u-boot-usbTom Rini
- DWC3 crash fix, Kconfig logic corrections
2026-05-09usb: dwc3: Fix crash on fastboot exit due to incorrect memory freeBalaji Selvanathan
The dwc3_free_one_event_buffer() function incorrectly called free() on event buffer structures allocated with devm_kzalloc(). This caused heap corruption and a synchronous abort when exiting fastboot mode via "fastboot continue". Device-managed memory is automatically freed when the device is removed, so manual deallocation causes the heap allocator to access corrupted metadata. Fixes: 884b10e86a05 ("usb: dwc3: core: fix memory leaks in event buffer cleanup") Signed-off-by: Balaji Selvanathan <[email protected]> Reviewed-by: Marek Vasut <[email protected]>