summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-01-28doc: develop: process: Move Custodians sectionTom Rini
Move the "Custodians" section to be after the "Review Process, Git Tags" section, in preparation for more re-organization. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2026-01-28doc: develop: process: Explain when/how Custodians may edit patchesTom Rini
As seen with commit d503633a3676 ("Revert "doc: board: starfive: update jh7110 common description""), it has not always been clear what is and isn't allowed by custodians, and what the expectations are. To prevent further unintentional conflicts, document the limited cases where custodians are allowed to modify patches directly, and how to do that. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2026-01-28doc: develop: process: Rework the custodian feedback sectionTom Rini
Now that we have two items here, rework this slightly to be using bullet points, and so easier to expand on. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2026-01-28doc: develop: process: Move the existing block about patch applicationTom Rini
We have a long block about the expectations and feedback about a patch applying, or not, as part of the Custodian workflow. Move this to the Custodians section from the Workflow of a custodian section. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2026-01-28doc: describe QEMU VGA emulationHeinrich Schuchardt
Describe how the QEMU defconfigs can be used with an emulated GPU. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2026-01-28arm: Remove rel.dyn from SPL linker scriptsTom Rini
As of v2026.01, no platforms contain any rel.dyn sections in their xPL phase images. Their inclusion in linker scripts initially was an oversight as part of taking the full U-Boot linker scripts and modifying them down. Then in commit 8b0ebe054bb3 ("arm: Update linker scripts to ensure appended device tree is aligned") these sections were used to force correct alignment for the device tree. This however, lead to a different problem. That problem is that when we do not have a separate BSS section in SPL we instead would overlay the BSS with the rel.dyn section, in the common linker script case. This in turn lead to creating an incorrectly sized BSS "pad" file sometimes (depending on arbitrary changes within the rest of the binary itself). This in turn lead to the dtb being in the wrong location in the binary and not found at run time. This commit fixes a few things: - Remove the rel.dyn section from all ARM SPL linker scripts. - In turn, this moves the dtb alignment statement in to another section. - For ast2600 which uses CONFIG_POSITION_INDEPENDENT we need to keep the symbols however. Tested-by: Fabio Estevam <[email protected]> Reported-by: Fabio Estevam <[email protected]> Co-developed-by: Ilias Apalodimas <[email protected]> Reviewed-by: Chia-Wei, Wang <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2026-01-28.b4-config: Add some patchwork related settingsTom Rini
To make it easier for custodians to use b4 with patchwork, add some defaults to the in-tree .b4-config. The API key will still have to be configured. Suggested-by: Quentin Schulz <[email protected]> Acked-by: Quentin Schulz <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2026-01-28Merge patch series "dm: core: Support same compatible in host/gadget musb ↵Tom Rini
drivers" Markus Schneider-Pargmann (TI.com) <[email protected]> says: musb currently uses a wrapper driver that binds on the parent device of the actual musb devices to manage the differentiation between gadget and host modes. However in the upstream devicetree this parent devicetree node can not be used to match the wrapper driver. To be able to probe the musb devices in host/gadget mode directly, this series introduces support for returning -ENODEV in bind functions resulting in iterating the remaining drivers potentially binding to other drivers that match the compatible. Link: https://lore.kernel.org/r/20260127-topic-musb-probing-v2026-01-v4-0-ea3201e0f809@baylibre.com
2026-01-28test: dm: Add compatible multimatch testMarkus Schneider-Pargmann (TI.com)
Add a test for binding of multiple drivers with the same compatible. If one of the drivers returns -ENODEV the other one needs to be bound. Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Signed-off-by: Markus Schneider-Pargmann (TI.com) <[email protected]>
2026-01-28dm: core: lists_bind_fdt: Indent continuation debug log messageMarkus Schneider-Pargmann (TI)
The loop in lists_bind_fdt uses an indented style for log messages within the loop and normal messages for errors that lead to the exit of the function. Due to the change of the previous patch that adds support for continuation on -ENODEV returned by bind, the log message should be indented. Signed-off-by: Markus Schneider-Pargmann (TI) <[email protected]>
2026-01-28dm: core: Support multiple drivers with same compatiblesMarkus Schneider-Pargmann (TI.com)
Currently once a driver matched the compatible string of a device, other drivers are ignored. If the first matching driver returns -ENODEV, no other possibly matching drivers are iterated with that compatible of the device. Instead the next compatible in the list of compatibles is selected, assuming only one driver matches one compatible at a time. To be able to use the bind function to return -ENODEV and continue matching other drivers with the same compatible, move the for loop a bit to continue the for loop after -ENODEV was returned. The loop had to be adjusted a bit to still support the 'drv' argument properly. Some simplifications were done as well. The modification will only add additional loop iterations if -ENODEV is returned. Otherwise the exit and continue conditions for the loop stay the same and do not cause any additional iterations and should not impact performance. This is required for ti-musb-host and ti-musb-peripheral which both match on the same device but differ based on the dr_mode DT property. Depending on this property, the driver is either UCLASS_USB or UCLASS_USB_GADGET_GENERIC. By checking the DT property in the bind function and returning -ENODEV the other driver can probe instead. Reviewed-by: Simon Glass <[email protected]> Acked-by: Dinesh Maniyam <[email protected]> Signed-off-by: Markus Schneider-Pargmann (TI.com) <[email protected]>
2026-01-28dm: core: lists_bind_fdt: Replace found variableMarkus Schneider-Pargmann (TI.com)
'found' is only used at the end of the function to print a debug message. No need to maintain a variable if we can just return 0 immediately when a driver was bound successfully. Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Signed-off-by: Markus Schneider-Pargmann (TI.com) <[email protected]>
2026-01-28dm: core: lists_bind_fdt: Remove unused variableMarkus Schneider-Pargmann (TI.com)
'result' is unused in this function, remove it. Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Signed-off-by: Markus Schneider-Pargmann (TI.com) <[email protected]>
2026-01-28Merge tag 'fsl-qoriq-for-2026.04-rc2' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-fsl-qoriq - Rename freescale to nxp - Add CPLD support via IFC to the ls1021a-iot board - Use scmi_clk_state_in_v2 in sandbox
2026-01-28firmware: scmi: sandbox: Use scmi_clk_state_in_v2Peng Fan
The sandbox scmi clock protocol use version 3.0, so need to use scmi_clk_state_in_v2. Signed-off-by: Peng Fan <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2026-01-28board: nxp: Rename board directory from board/freescale to board/nxpAlice Guo
This patch renames the board directory from board/freescale to board/nxp because NXP now provides Board Support Packages (BSPs) and tools for the former Freescale i.MX and other i.MX products. All relevant references have been updated accordingly. This change does not affect functionality. Signed-off-by: Alice Guo <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2026-01-28armv7: Add CPLD support via IFC to the ls1021a-iot board.Mateus Lima Alves
This patch adds CPLD support via IFC to the ls1021a-iot board. Signed-off-by: Mateus Lima Alves <[email protected]>
2026-01-27binman: Regenerate expired test certificateSimon Glass
The test certificate expired on Feb 13, 2024. This just used for testing, so regenerate it with a 100-year validity period. Suggested-by: Quentin Schulz <[email protected]> Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2026-01-27configs: apple: Enable SMBIOS / sysinfoJanne Grunau
Enable verbose SMBIOS table generation so that user space applications can use the SMBIOS table to provide details about the system. The desired information is chassis-type to determine whether the system is laptop. Adding the chassis-type property is proposed for the upstream device trees in the Linux kernel in [1]. Enable CMD_SMBIOS as debugging aid as the platform can easily deal with large u-boot binaries. Link: https://lore.kernel.org/asahi/[email protected]/ [1] Reviewed-by: Tom Rini <[email protected]> Signed-off-by: Janne Grunau <[email protected]> Reviewed-by: Neal Gompa <[email protected]> Reviewed-by: Mark Kettenis <[email protected]>
2026-01-27boot/fit: print name of config node not foundFrank Wunderlich
Show name of configuration node which was not found. current state gives no hint if fit image is wrong or the requested name. Could not find configuration node load of <NULL> failed After this patch we see name like this: Could not find configuration node '#ov-test' load of <NULL> failed Signed-off-by: Frank Wunderlich <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2026-01-27fit: Rework SPL_LOAD_FIT_ADDRESS slightlyTom Rini
Options which deal with memory locations and have a default value of 0x0 are dangerous, as that is often not a valid memory location. Rework SPL_LOAD_FIT_ADDRESS as follows: - Add SPL_HAS_LOAD_FIT_ADDRESS to guard prompting the question as the case of loading a FIT image does not strictly require setting an address and allows for a malloc()'d area to be used. - For SPL_RAM_SUPPORT, select the new guard symbol if SPL_LOAD_FIT is enabled because in that case an address must be provided. - Update defconfigs for these new changes. Largely this means some defconfigs need to enable SPL_HAS_LOAD_FIT_ADDRESS to maintain their current status. In the case of sandbox, we also need to set SPL_LOAD_FIT_ADDRESS to 0x0. Signed-off-by: Tom Rini <[email protected]>
2026-01-27Kconfig: select SPL_USE_TINY_PRINTF_POINTER_SUPPORT for K3Anshul Dalal
Since the commit 1e24e84db41a ("tiny-printf: Handle formatting of %p with an extra Kconfig"), SPL_USE_TINY_PRINTF_POINTER_SUPPORT has been made mandatory in order to use %p which would earlier have defaulted to a 'long' print. Without this config symbol, k3_sysfw_dfu_download fails to set the correct value for the DFU string with: sprintf(dfu_str, "sysfw.itb ram 0x%p 0x%x", addr, CONFIG_K3_SYSFW_IMAGE_SIZE_MAX); The value we get "sysfw.itb ram 0x? 0x41c29d40" causes a boot failure. Therefore this patch sets SPL_USE_TINY_PRINTF_POINTER_SUPPORT for all K3 devices since the size impact is less than 100 bytes. Signed-off-by: Anshul Dalal <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2026-01-27Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-shTom Rini
- Updated UFS support for Renesas platforms
2026-01-27bootm: Remove BOOTM_NETBSD from defaultsTom Rini
After talking with someone from the NetBSD project, platforms that do not boot with a device tree (and so would be using our BOOTM_NETBSD support) a very few in number. So we can remove this option from being enabled by default and save a little space in most places with platforms that need it still being able to re-enable it, if needed. Ideally, in a few years we can instead just remove the code entirely. Link: https://lore.kernel.org/r/[email protected]/ Signed-off-by: Tom Rini <[email protected]>
2026-01-27scsi: ufs: renesas: Add reusable functionsYoshihiro Shimoda
Since some settings can be reused on other UFS controller (R-Car S4-8 ES1.2), add reusable functions. Ported from Linux kernel commit 44ca16f4970e ("scsi: ufs: renesas: Add reusable functions") Signed-off-by: Yoshihiro Shimoda <[email protected]> Signed-off-by: Geert Uytterhoeven <[email protected]> Link: https://lore.kernel.org/r/446d67b751a96645799de3aeefec539735aa78c8.1741179611.git.geert+renesas@glider.be Signed-off-by: Martin K. Petersen <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Neil Armstrong <[email protected]>
2026-01-27scsi: ufs: renesas: Refactor 0x10ad/0x10af PHY settingsYoshihiro Shimoda
Extract specific PHY setting of the 0x10a[df] registers into a new function. Ported from Linux kernel commit cca2b807c227 ("scsi: ufs: renesas: Refactor 0x10ad/0x10af PHY settings") Signed-off-by: Yoshihiro Shimoda <[email protected]> Signed-off-by: Geert Uytterhoeven <[email protected]> Link: https://lore.kernel.org/r/110eafd1ee24f9db0285a5e2bca224e35962268a.1741179611.git.geert+renesas@glider.be Signed-off-by: Martin K. Petersen <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Neil Armstrong <[email protected]>
2026-01-27scsi: ufs: renesas: Remove register control helper functionYoshihiro Shimoda
After refactoring the code, ufs_renesas_reg_control() is no longer needed, because all operations are simple and can be called directly. Remove the ufs_renesas_reg_control() helper function, and call udelay() directly. Ported from Linux kernel commit 855bde8ce5bc ("scsi: ufs: renesas: Remove register control helper function") with replaced readl_poll_timeout_atomic() with readl_poll_sleep_timeout(). Signed-off-by: Yoshihiro Shimoda <[email protected]> Signed-off-by: Geert Uytterhoeven <[email protected]> Link: https://lore.kernel.org/r/69500e4c18be1ca1de360f9e797e282ffef04004.1741179611.git.geert+renesas@glider.be Signed-off-by: Martin K. Petersen <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Neil Armstrong <[email protected]>
2026-01-27scsi: ufs: renesas: Add register read to remove save/set/restoreYoshihiro Shimoda
Add support for returning read register values from ufs_renesas_reg_control(), so ufs_renesas_set_phy() can use the existing ufs_renesas_write_phy() helper. Remove the now unused code to save to, set, and restore from a static array inside ufs_renesas_reg_control(). Ported from Linux kernel commit 5129aa627599 ("scsi: ufs: renesas: Add register read to remove save/set/restore") Signed-off-by: Yoshihiro Shimoda <[email protected]> Signed-off-by: Geert Uytterhoeven <[email protected]> Link: https://lore.kernel.org/r/9fa240a9dc0308d6675138f8434eccb77f051650.1741179611.git.geert+renesas@glider.be Signed-off-by: Martin K. Petersen <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Neil Armstrong <[email protected]>
2026-01-27scsi: ufs: renesas: Replace init data by init codeYoshihiro Shimoda
Since initialization of the UFS controller on R-Car S4-8 ES1.0 requires only static values, the driver uses initialization data stored in the const ufs_param[] array. However, other UFS controller variants (R-Car S4-8 ES1.2) require dynamic values, like those obtained from E-FUSE. Refactor the initialization code to prepare for this. This also reduces kernel size by almost 30 KiB. Ported from Linux kernel commit c4e83573c3d0 ("scsi: ufs: renesas: Replace init data by init code") Signed-off-by: Yoshihiro Shimoda <[email protected]> Signed-off-by: Geert Uytterhoeven <[email protected]> Link: https://lore.kernel.org/r/3520e27ac7ff512de6508f630eee3c1689a7c73d.1741179611.git.geert+renesas@glider.be Signed-off-by: Martin K. Petersen <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Neil Armstrong <[email protected]>
2026-01-27Revert a number of incorrect commitsTom Rini
As part of debugging the appended device tree failure, I inadvertently committed some changes as I was debugging to master, and not a private branch, and pushed them as part of the release. This reverts commit dc2d8423b19d30472b02e02b41504226908a4291 through 380ddb473c6bdf87e66c0fb93e256d1e233c6f5b. Signed-off-by: Tom Rini <[email protected]>
2026-01-26Prepare v2026.04-rc1v2026.04-rc1Tom Rini
Signed-off-by: Tom Rini <[email protected]>
2026-01-26count rel_dynTom Rini
Signed-off-by: Tom Rini <[email protected]>
2026-01-26Revert "arm: spl: Correct alignment of .rel.dyn section"Tom Rini
This reverts commit 380ddb473c6bdf87e66c0fb93e256d1e233c6f5b. Signed-off-by: Tom Rini <[email protected]>
2026-01-26arm: spl: Correct alignment of .rel.dyn sectionTom Rini
With commit 0535e46d55d7 ("scripts/dtc: Update to upstream version v1.7.2-35-g52f07dcca47c") we now require the correct, 8 byte alignment of a device tree in order to work with it ourselves. This has exposed a number of issues. In the case of using arch/arm/cpu/u-boot-spl.lds for an xPL phase and having the BSS be overlayed with the dynamic relocations sections (here, .rel.dyn) we had missed adding the comment about our asm memset requirements. Then, when adjusting ALIGN statements we later missed this one. In turn, when we use objcopy to create our binary image we end up in the situation where where the BSS must start out 8 byte aligned as well as end 8 byte aligned because for appended device tree the requirement is that the whole BSS (which we add as padding to the binary) must be 8 byte aligned. Otherwise we end up with the situation where __bss_end (where we look for the device tree at run time) is aligned but the size of the BSS we add Fixes: 7828a1eeb2a1 ("arm: remove redundant section alignments") Fixes: 52caad0d14a3 ("ARM: Align image end to 8 bytes to fit DT alignment") Reported-by: Fabio Estevam <[email protected]> Tested-by: Fabio Estevam <[email protected]> Signed-off-by: Tom Rini <[email protected]> --- Cc: Ilias Apalodimas <[email protected]> Cc: Marek Vasut <[email protected]>
2026-01-26Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sunxiTom Rini
Some improvements for some boards' DRAM setup, to allow boards with "odd" DRAM sizes (1.5GB or 3GB), and to support the T113-s4 with double the co-packaged DRAM. Support for a new board (X96Q TV box), and a fix for the DT name prefix. Also we support the new AXP318W PMIC, which is used on new boards with the A733 SoC. There are some preliminary support patches for this SoC, but they are not quite ready yet - though maybe I push some uncontroversial ones a bit later still.
2026-01-25board: sunxi: Add X96Q supportJ. Neuschäfer
The X96Q is a set-top box with an H313 SoC, AXP305 PMIC, 1 or 2 GiB RAM, 8 or 16 GiB eMMC flash, 2x USB A, Micro-SD, HDMI, Ethernet, audio/video output, and infrared input. https://x96mini.com/products/x96q-tv-box-android-10-set-top-box This commit adds a defconfig and some documentation. The devicetree is already in dts/upstream. The CONFIG_DRAM_SUNXI_* settings are chosen such that the register values in the DRAM PHY's MMIO space are as close as possible to those observed when booting with the preinstalled vendor U-Boot. The DRAM clock frequency of 600 MHz was reported in the vendor U-Boot's output. Signed-off-by: J. Neuschäfer <[email protected]> Reviewed-by: Andre Przywara <[email protected]>
2026-01-25power: regulator: enable AWP318W SPL supportYixun Lan
Add the descriptions for the DC/DC regulators of the AXP318W, and enable it when CONFIG_AXP318W_POWER is enabled. Signed-off-by: Yixun Lan <[email protected]> Reviewed-by: Andre Przywara <[email protected]>
2026-01-25power: regulator: add AXP318W supportYixun Lan
The PMIC is also known as AXP819 in vendor pmu code For DCDC6, 8, 9, the underlying hardware support more than two levels voltage step tuning, but for now only first two levels are implemented in this driver, hence highest voltage will be limited at seccond level. It actual meets board requirement in current design, and we've verified it in Radxa Cubie A7A board. Following are detail explanation of voltage tuning stpes for those DCDCs: DCDC | voltage range | units | steps | implemented 6 | 0.5 - 1.2 | 10 mV | 71 | Y . | 1.22 - 1.54 | 20 mV | 17 | Y . | 1.8 - 2.4 | 20 mV | 31 | N . | 2.44 - 2.76 | 40 mV | 9 | N -------------------------------------------------- 8/9 | 0.5 - 1.2 | 10 mV | 71 | Y . | 1.22 - 1.84 | 20 mV | 32 | Y . | 1.9 - 3.4 | 100mV | 16 | N Signed-off-by: Yixun Lan <[email protected]> Reviewed-by: Andre Przywara <[email protected]>
2026-01-25sunxi: avoid double vendor prefix when CONFIG_OF_UPSTREAM is enabledBohdan Chubuk
When CONFIG_OF_UPSTREAM is enabled, the device tree name provided by SPL already includes the vendor directory (e.g., "allwinner/board-name"). The existing logic in misc_init_r() unconditionally prepends "allwinner/" for ARM64 builds, resulting in an incorrect path like "allwinner/allwinner/board-name.dtb". This patch modifies the logic to only prepend the vendor prefix if CONFIG_OF_UPSTREAM is NOT enabled. This ensures compatibility with both legacy builds and the new upstream devicetree structure. Signed-off-by: Bohdan Chubuk <[email protected]> Reviewed-by: Andre Przywara <[email protected]>
2026-01-25sunxi: dram: detect non-power-of-2 sized DRAM chipsAndre Przywara
Some boards feature an "odd" DRAM size, where the total RAM is 1.5GB or 3GB. Our existing DRAM size detection routines can only detect power-of-2 sized configuration, and on those boards the DRAM size is overestimated, so this typically breaks the boot quite early. There doesn't seem to be an easy explicit way to detect those odd-sized chips, but we can test whether the later part of the memory behaves like memory, by verifying that a written pattern can be read back. Experiments show that there is no aliasing effect here, as all locations in the unimplemented range always return some fixed pattern, and cannot be changed. Also so far all those boards use a factor of 3 of some lower power-of-2 number, or 3/4th of some higher number. The size detection routine discovers the higher number, so we can check for some memory cells beyond 75% of the detected size to be legit. Add a routine the inverts all bits at a given location in memory, and reads that back to prove that the new value was stored. Then test the memory cell at exactly 3/4th of the detected size, and cap the size of the memory to 75% when this test fails. For good measure also make sure that memory just below the assumed memory end really works. This enables boards which ship with such odd memory sizes. Signed-off-by: Andre Przywara <[email protected]> Reviewed-by: Jernej Skrabec <[email protected]>
2026-01-25sunxi: extend R528/T113-s3/D1(s) DRAM initialisationLukas Schmid
The T113-s4 SoC is using the same die as the T113-s3, but comes with 256MiB of co-packaged DRAM. Besides the doubled size, the DRAM chip seems to be connected slightly differently, which requires to use a different pin remapping. Extend the DRAM initialisation code to add support for the T113-S4 aka T113M4020DC0 by checking the SoC's CHIPID, which is stored in the first word of the SID efuses. Signed-off-by: Lukas Schmid <[email protected]> Tested-by: John Watts <[email protected]> Reviewed-by: John Watts <[email protected]> Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2026-01-25Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-shTom Rini
- DTS bugfix for r8a779g3 Sparrow Hawk
2026-01-25Merge branch 'master' of git://source.denx.de/u-boot-usbTom Rini
- XHCI DMA bugfix
2026-01-25arm64: dts: renesas: r8a779g3: Reinstate basic PCIe clock description for ↵Marek Vasut
Sparrow Hawk The 9FGV0441 PCIe clock generator can operate in autonomous mode, which is the default mode. U-Boot currently does not have a driver for this PCIe clock generator, but Linux 6.17 DT does describe the clock generator in Sparrow Hawk board DT and this DT is included in U-Boot since commit eea470fd7f6a ("Subtree merge tag 'v6.17-dts' of dts repo [1] into dts/upstream"). Reinstate basic PCIe clock description which matches the behavior of Linux DT before Linux 6.17.y release in in U-Boot DT extras to allow PCIe to be used on Sparrow Hawk board in U-Boot until the 9FGV0441 driver gets implemented or ported from Linux. Signed-off-by: Marek Vasut <[email protected]>
2026-01-25usb: xhci: fix DMA address corruption in abort_tdANANDHAKRISHNAN S
When aborting a Transfer Descriptor (TD), the xHCI driver updates the device dequeue pointer by converting the virtual enqueue TRB pointer into a DMA address. Previously, the code OR-ed the ring's Dequeue Cycle State (DCS) bit into the virtual TRB pointer before passing it to xhci_trb_virt_to_dma(). This produced an unaligned virtual address (e.g. ending in 0x...1). Inside xhci_trb_virt_to_dma(), the offset calculation: segment_offset = trb - seg->trbs; operated on this unaligned pointer, resulting in an incorrect TRB index. In wraparound cases, this caused the bounds check to fail and the function to return 0. As a result, a SET_DEQ_PTR command was issued with a DMA address of 0x0, leading to controller hangs and transfer timeouts, most commonly when aborting TDs near the end of a ring segment (e.g. index 63). Fix this by translating the aligned virtual TRB pointer to a DMA address first, and only then applying the DCS bit to the resulting physical address. Reviewed-by: Marek Vasut <[email protected]> Signed-off-by: ANANDHAKRISHNAN S <[email protected]>
2026-01-24scripts/dtc: Fix pkg-config behavior under sysrootGreg Malysa
When building with a toolchain that uses a modified sysroot (such as a Yocto-generated SDK) that does not include libyaml, on a host that does have libyaml, building dtc will fail with errors like: HOSTLD scripts/dtc/dtc /usr/lib/gcc/x86_64-pc-linux-gnu/14/../../../../x86_64-pc-linux-gnu/bin/ld: scripts/dtc/yamltree.o: in function `yaml_propval_int': yamltree.c:(.text+0x167): undefined reference to `yaml_sequence_start_event_initialize' /usr/lib/gcc/x86_64-pc-linux-gnu/14/../../../../x86_64-pc-linux-gnu/bin/ld: yamltree.c:(.text+0x172): undefined reference to `yaml_emitter_emit' /usr/lib/gcc/x86_64-pc-linux-gnu/14/../../../../x86_64-pc-linux-gnu/bin/ld: yamltree.c:(.text+0x1e8): undefined reference to `yaml_scalar_event_initialize' /usr/lib/gcc/x86_64-pc-linux-gnu/14/../../../../x86_64-pc-linux-gnu/bin/ld: yamltree.c:(.text+0x1f5): undefined reference to `yaml_emitter_emit' (... rest of errors truncated ...) This happens because the test looks for the file in the default path but uses pkg-config, which is affected by changing sysroot, to determine the correct linker arguments. This does not happen when building entirely within yocto, as pseudo will intercept and rewrite the file path when trying to test for /usr/include/yaml.h to match the sysroot and thus generate consistent behavior. This commit adds the PKG_CONFIG_SYSROOT_DIR prefix to the file path in order to test against the same conditions that are used to resolve the build flags for libyaml. In linux commit ef8795f3f1c ("dt-bindings: kbuild: Use DTB files for validation"), including yaml is disabled again anyway because of other problems that it causes, so this problem can also be addressed by partially backporting that commit instead and simply disabling the yaml support. Fixes: 0535e46d55d7 ("scripts/dtc: Update to upstream version v1.7.2-35-g52f07dcca47c") Signed-off-by: Greg Malysa <[email protected]>
2026-01-24video: add DejaVu Mono fontHeinrich Schuchardt
A TrueType font for U-Boot should fulfill the following requirements: * mono spaced * support full code page 437 * easily readable Unfortunately none of the fonts provided with U-Boot fulfills all of these requirements. Let's add the DejaVu Mono font. To reduce the code size the characters are limited to code page 437. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2026-01-23Merge patch series "sc5xx: Add complete board support for all ADI SC5xx boards"Tom Rini
Greg Malysa <[email protected]> says: This series adds the final pieces to enable mainline U-Boot to build and boot all Analog Devices SC5xx SoCs and supports the associated carrier board options. At this point it should be viable for new users for these platforms to start with the latest version of U-Boot rather than our vendor fork, however some features (such as OSPI support and falcon boot) remain unavailable until we are able to unify our implementations with the mainline implementations. Link: https://lore.kernel.org/r/[email protected] [trini: Rebuild CI containers to have new tools] Signed-off-by: Tom Rini <[email protected]>
2026-01-23MAINTAINERS: Update ADI entries for new boardsGreg Malysa
This adds missing maintainers entries for the ADI SC5xx defconfigs and for a device tree binding file that was previously missed. Signed-off-by: Greg Malysa <[email protected]>
2026-01-23board: adi: Add support for SC594Greg Malysa
This adds support for the Analog Devices SC594 SOM and configurations for using it with both the SOMCRR-EZKIT and SOMCRR-EZLITE. Signed-off-by: Vasileios Bimpikas <[email protected]> Signed-off-by: Utsav Agarwal <[email protected]> Signed-off-by: Arturs Artamonovs <[email protected]> Signed-off-by: Nathan Barrett-Morrison <[email protected]> Signed-off-by: Caleb Ethridge <[email protected]> Signed-off-by: Philip Molloy <[email protected]> Signed-off-by: Greg Malysa <[email protected]>