summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-02-23configs: am62dx_evm: Enable SPI flash supportParesh Bhagat
Enable SPI flash support for AM62DX EVM by adding Cadence QSPI driver, configuring 25MHz speed, and enabling SFDP support with Spansion S28HX-T flash compatibility. Enable required SPI and MTD configs for both A53 and R5 configurations to allow booting from SPI flash. Signed-off-by: Paresh Bhagat <[email protected]>
2026-02-23arm: dts: k3-am62d2-r5: Add DMA and OSPI configurationParesh Bhagat
Enable WKUP UART0 for DM firmware logs, configure DMA controllers with TI SCI references, and update OSPI0 register mapping. Signed-off-by: Paresh Bhagat <[email protected]>
2026-02-23Merge tag 'v2026.04-rc3' into nextTom Rini
Prepare v2026.04-rc3
2026-02-23Prepare v2026.04-rc3v2026.04-rc3Tom Rini
Signed-off-by: Tom Rini <[email protected]>
2026-02-23fs/squashfs: fix heap buffer overflow in sqfs_frag_lookup()Eric Kilmer
sqfs_frag_lookup() reads a 16-bit metadata block header whose lower 15 bits encode the data size. Unlike sqfs_read_metablock() in sqfs_inode.c, this function does not validate that the decoded size is within SQFS_METADATA_BLOCK_SIZE (8192). A malformed SquashFS image can set the size field to any value up to 32767, causing memcpy to write past the 8192-byte 'entries' heap buffer. Add the same bounds check used by sqfs_read_metablock(): reject any metadata block header with SQFS_METADATA_SIZE(header) exceeding SQFS_METADATA_BLOCK_SIZE. Found by fuzzing with libFuzzer + AddressSanitizer. Signed-off-by: Eric Kilmer <[email protected]> Reviewed-by: Miquel Raynal <[email protected]>
2026-02-23doc: board: samsung: exynos-mobile: remove requirement of stub device treeKaustabh Chakraborty
Flashing U-Boot for Exynos 7870 requires creating a stub device tree, where certain properties and nodes are defined which are populated by the previous bootloader in the phones. Since these properties are now available in the U-Boot device tree, it's now possible to use the same blob generated by U-Boot in place of the stub, when creating boot images. Update the build documentation to reflect the same. Signed-off-by: Kaustabh Chakraborty <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2026-02-23ARM: dts: exynos7870-on7xelte: add properties to make S-BOOT happyKaustabh Chakraborty
Add properties in the DTSI file which is required for S-BOOT when used an external device tree when booting into U-Boot. S-BOOT is Samsung's proprietary bootloader, which chainloads U-Boot. Since this device has multiple bank nodes, add memory nodes for each RAM bank. This is the format S-BOOT recognizes, and (re)populates it with the correct bank sizes. Signed-off-by: Kaustabh Chakraborty <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2026-02-23ARM: dts: exynos7870-j6lte: add properties to make S-BOOT happyKaustabh Chakraborty
Add properties in the DTSI file which is required for S-BOOT when used an external device tree when booting into U-Boot. S-BOOT is Samsung's proprietary bootloader, which chainloads U-Boot. Since this device has multiple bank nodes, add memory nodes for each RAM bank. This is the format S-BOOT recognizes, and (re)populates it with the correct bank sizes. Signed-off-by: Kaustabh Chakraborty <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2026-02-23ARM: dts: exynos7870-a2corelte: add properties to make S-BOOT happyKaustabh Chakraborty
Add properties in the DTSI file which is required for S-BOOT when used an external device tree when booting into U-Boot. S-BOOT is Samsung's proprietary bootloader, which chainloads U-Boot. Signed-off-by: Kaustabh Chakraborty <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2026-02-23doc: board: samsung: exynos-mobile: use u-boot-nodtb.bin for packaging processKaustabh Chakraborty
U-Boot for this board is programmed to use the external DTB if an internal device tree is not available. This makes it safe to build boot images using the non-DTB U-Boot binary, while taking up less space. Reflect this change in documentation. Signed-off-by: Kaustabh Chakraborty <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2026-02-23doc: board: samsung: exynos-mobile: add DEVICE_TREE make flag in buildKaustabh Chakraborty
Since there is only one internal device tree allowed in U-Boot, the DEVICE_TREE flag is required for building images for various devices. Document it in the build guide. Signed-off-by: Kaustabh Chakraborty <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2026-02-23configs: exynos-mobile: remove DEFAULT_DEVICE_TREE and add ↵Kaustabh Chakraborty
OF_UPSTREAM_BUILD_VENDOR Since the build documentation recommends using the DEVICE_TREE= make flag, and the "board" supports multiple devices, remove the default device tree option so as to enforce the make flag during build. OF_UPSTREAM_BUILD_VENDOR is added so as to build all device trees associated with the vendor with their U-Boot includes. Signed-off-by: Kaustabh Chakraborty <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2026-02-23board: samsung: exynos-mobile: enable OF_BOARD supportKaustabh Chakraborty
OF_BOARD allows to choose the internal device tree in runtime. Use it to pass the external FDT as an internal one if it is not present. This approach is also used by qcom-phone, and it reduces boot image size. It is expected that an external FDT is present as U-Boot is packaged as an Android boot image. Signed-off-by: Kaustabh Chakraborty <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2026-02-23board: samsung: exynos-mobile: disable MULTI_DTB_FIT supportKaustabh Chakraborty
MULTI_DTB_FIT allowed a single U-Boot image to be booted in multiple devices, but it was not a scalable solution; as more devices are added, the U-Boot binary is bound to increase, space taken up by devicetrees which are not even used. The other approach is to be able to build separate images for multiple devices using the same "board" defined in U-Boot. This is used by qcom_phone to support muitiple devices. Follow the said approach for Exynos devices as well, disable MULTI_DTB_FIT for this board. Signed-off-by: Kaustabh Chakraborty <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2026-02-23board: samsung: exynos-mobile: resolve env vars without board_info dataKaustabh Chakraborty
Move environment variable setup procedure to exynos_env_setup(). This function is independent of data from exynos_board_info as it is due for removal in the succeding commits. Signed-off-by: Kaustabh Chakraborty <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2026-02-23board: samsung: exynos-mobile: simplify parsing RAM banks from device treeKaustabh Chakraborty
Remove the baked-in bank addresses used for figuring out RAM banks from device tree. Instead, sequentially fill in the bank addresses and sizes, and doing away with an extra array for specifying bases. Signed-off-by: Kaustabh Chakraborty <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2026-02-20spl: fix stack placement in spl_relocate_stack_gd()Ronald Wahl
Currently when CONFIG_SPL_STACK_R and CONFIG_SPL_SYS_MALLOC_SIMPLE is enabled then spl_relocate_stack_gd() will setup a layout where the stack lays inside the heap and grows down to heap start. Also the global data is part of the heap. This can lead to corruption of stack and global data. The current layout is: 0x0 +-------------+ . . . . gd->malloc_base +- - - - - - -+ | |\ | HEAP/STACK | \ | | } SPL_STACK_R_MALLOC_SIMPLE_LEN gd->start_addr_sp +- - - - - - -+ / (gd->malloc_limit) | GLOBAL DATA |/ CONFIG_SPL_STACK_R_ADDR +-------------+ The above broken layout was actually introduced with commit adc421e4cee8 ("arm: move gd handling outside of C code"). This commit changes the layout so that the stack is below the heap and the global data. It is now similar to the one before relocation: 0x0+-------------+ . . . . +- - - - - - -+ | | | STACK | | | gd->start_addr_sp +-------------+ | GLOBAL DATA | gd->malloc_base +-------------+ | |\ | HEAP | } SPL_STACK_R_MALLOC_SIMPLE_LEN | |/ (gd->malloc_limit) CONFIG_SPL_STACK_R_ADDR +-------------+ Fixes: adc421e4cee8 ("arm: move gd handling outside of C code") Cc: Tom Rini <[email protected]> Cc: Anshul Dalal <[email protected]> Cc: Leo Yu-Chi Liang <[email protected]> Cc: Dhruva Gole <[email protected]> Cc: Simon Glass <[email protected]> Cc: Albert ARIBAUD <[email protected]> Signed-off-by: Ronald Wahl <[email protected]>
2026-02-20defconfigs: Remove default COFNIG_SPL_LDSCRIPT valueTom Rini
These three platforms set CONFIG_SPL_LDSCRIPT value to what the default value for the question is, once evaluated. Remove this unnecessary line. Reviewed-by: Heiko Schocher <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2026-02-20board: ti: am62ax: tifs-rm-cfg.yaml: Add C7x resource allocation entriesSparsh Kumar
Update am62ax and am62dx tifs-rm-cfg with allocation entries for C7x core to match with their rm-cfg. Following updates are added for C7x: - Share split BCDMA tx and rx channels between DM R5 and C7x. - Share rings for split BCDMA tx and rx channels between DM R5 and C7x. - Add global events and virtual interrupts for C7x. Fixes: 01e01277538a ("am62a: yaml: Add board configs for AM62ax") Signed-off-by: Sparsh Kumar <[email protected]> Signed-off-by: Paresh Bhagat <[email protected]>
2026-02-20spi: add support for ISSI IS25WP02GG flashJeffrey Yu
This patch adds support for the ISSI IS25WP02GG QSPI NOR flash device. Tested on the Versal VMK180 board in dual-parallel QSPI configuration. Signed-off-by: jeffrey yu <[email protected]>
2026-02-20mtd: spi-nor-ids: Add Fujitsu MB85RS256TY FRAMChristoph Reiter
This part is an FRAM, but can be used through the spi-nor generic code. Signed-off-by: [email protected]
2026-02-20board: ti: am64,j721*: use correct fdt if eeprom detection failsAnshul Dalal
We currently provide default board names for each board in their respective evm.c file. However for custom boards, this behaviour overwrites the default DT as set in the defconfig (CONFIG_DEFAULT_FDT_FILE or CONFIG_DEFAULT_DEVICE_TREE). This patch changes the default name to be NULL which prevents this overwrite and allows ti_set_fdt_env to instead fallback to the correct DT as set in Kconfig. Signed-off-by: Anshul Dalal <[email protected]> Reviewed-by: Bryan Brattlof <[email protected]>
2026-02-20arm: mach-k3: j722s: Update SoC data to add wake-up I2C deviceChintan Vankar
Update dev-data and clk-data to include wake-up I2C device for J722s. Signed-off-by: Chintan Vankar <[email protected]> Tested-by: Richard Genoud <[email protected]>
2026-02-19arch: imx8qxp: Override weak fb_mmc_get_boot_offset functionAdrian Freihofer
Add IMX8QXP SoCs specific implementation of fb_mmc_get_boot_offset() This is needed as bootloader offset is different dependent on SoC revision! For revision B0 the bootloader starts at 32k offset. On offset 0x0 the bootloaders environment is stored. On C0 revisions of the SoC bootloader image starts at offset 0x0 Signed-off-by: Adrian Freihofer <[email protected]> Signed-off-by: Heiko Schocher <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Acked-by: Fabio Estevam <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2026-02-19fastboot: mmc: make boot partition offset configurableAdrian Freihofer
i.MX8QXP rev C.0 requires boot container stored at offset 0KB for eMMC, while i.MX8QXP pre C.0 requires boot container stored at offset 32KB for eMMC. To use one U-Boot binary to support different chip revisions, introduce fb_mmc_get_boot_offset() to allow override the default offset when writing to eMMC boot partitions. This enables support for devices with non-standard boot partition layouts, such as those requiring an offset for correct bootloader placement. Signed-off-by: Adrian Freihofer <[email protected]> Signed-off-by: Heiko Schocher <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2026-02-18Merge patch series "bootcount: Small clean-up and fix, and dm_i2c ↵Tom Rini
single-word support" Niko Mauno <[email protected]> says: In this series, we first introduce a clean-up where we switch to use predefined bit masks instead of hard-coded values for count and magic halves in the single-word (32-bit) boot count scheme. Then we fix a case of missing boot count value masking in single-word scenario in bootcount.c, which allowed clobbering of the magic half when storing the value. With this change the clobbering preventing behavior becomes consistent with existing single word bootcount storing implementations in bootcount_at91.c and bootcount_davinci.c. Finally, we enable the DM I2C bootcount driver to work also in single word (4 byte) mode, in addition to the pre-existing half-word (2 byte) mode. By default the driver still operates in half word mode as so far, but can now be used alternatively in single word mode by adding 'size = <0x4>;' in the associated device tree node. Link: https://lore.kernel.org/r/[email protected]
2026-02-18bootcount: dm_i2c: Support also single word modeNiko Mauno
In addition to pre-existing half-word (2 byte) mode, add support for the driver to work also in single word (4 byte) mode by adding 'size = <0x4>;' in the device tree node. Signed-off-by: Niko Mauno <[email protected]>
2026-02-18bootcount: Fix potential clobbering issueNiko Mauno
When storing the single word bootcount value, apply the bootcount count mask to prevent clobbering the magic half of the value. Signed-off-by: Niko Mauno <[email protected]>
2026-02-18bootcount: Use predefined count/magic bit masksNiko Mauno
Use predefined bit masks in operations where only the magic half or only the count half of the 32-bit value are processed. Signed-off-by: Niko Mauno <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2026-02-18Merge patch series "test: cmd: Add test for zip/unzip/gzwrite commands"Tom Rini
Marek Vasut <[email protected]> says: Enable zip command in sandbox so it is always build tested. Add simple test for zip/unzip/gzwrite commands so they are unit tested. Link: https://lore.kernel.org/r/[email protected]
2026-02-18test: cmd: Add test for zip/unzip/gzwrite commandsMarek Vasut
Add simple test for zip/unzip/gzwrite commands. The test works as follows. First, create three buffers with a bit of space between each of them, fill them with random data, then compress data in buffer 1 into buffer 2, decompress data in buffer 2 either directly into buffer 3 or into MMC 1 and then read them back into buffer 3, and finally compare buffer 1 and buffer 3, they have to be identical. The buffers are filled with random data to detect out of bounds writes. Test for various sizes, both small and large and unaligned. The test uses ut_assert_skip_to_line() to skip over gzwrite progress bar. Since the progress bar updates fill up the console record buffer, increase the size of it to compensate. Reviewed-by: Mattijs Korpershoek <[email protected]> Tested-by: Mattijs Korpershoek <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2026-02-18configs: sandbox: Enable zip commandMarek Vasut
What is not being built and tested in CI, breaks. Enable the 'zip' command in sandbox to get it build tested in preparation for an actual unit test. Reviewed-by: Mattijs Korpershoek <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2026-02-18arm: dts: k3-am64-phycore-som-ddr4: Update DDR timingsWadim Egorov
Update DDR timings to increase stability in higher temperature ranges. Update DDR settings: - SysConfig DDR tool v0.09.05 - Package: ALV - Extended temperature range -40C to 105C - Lower tREFI (ns) to 3900 Signed-off-by: Wadim Egorov <[email protected]> Tested-by: Daniel Schultz <[email protected]>
2026-02-18Merge patch series "arm: dts: mt7622: use generic node names"Tom Rini
David Lechner <[email protected]> says: While compile-testing things to make sure I wasn't breaking other platforms when making mach-wide changes for mediatek, I kept getting a warning about a a SPI controller node with the wrong name in mt7622.dtsi. The first patch addresses this. And since we are here, I added a second patch to generic names in general in that file even if they aren't causing warnings. Link: https://lore.kernel.org/r/20260209-mtk-dtb-fix-spi-bus-bridge-warning-v1-0-84e3e2d8352d@baylibre.com
2026-02-18arm: dts: mt7622: Use generic node namesDavid Lechner
Replace node names in mt7622.dtsi with generic names. This makes it more consistent with the upstream bindings. Signed-off-by: David Lechner <[email protected]>
2026-02-18arm: dts: mt7622: Fix SPI bus bridge warningDavid Lechner
Change SPI node name to generic "spi" in mt7622.dtsi. This fixes the following compile warning: w+../arch/arm/dts/mt7622.dtsi:56.22-65.4: Warning (spi_bus_bridge): /snor@11014000: node name for SPI buses should be 'spi' w+arch/arm/dts/mt7622-rfb.dtb: Warning (spi_bus_reg): Failed prerequisite 'spi_bus_bridge' Signed-off-by: David Lechner <[email protected]>
2026-02-18pinctrl: mediatek: set MT798x rev as MTK_PINCTRL_V1Shiji Yang
The MT798x series SoCs have IES regiter definitions. They should belong to the pinctrl v1 revision. Signed-off-by: Shiji Yang <[email protected]>
2026-02-18pinctrl: mediatek: add pinctrl driver for MT8195Chris-QJ Chen
Add support for MT8195 pinctrl. The driver is based on the kernel one. Signed-off-by: Chris-QJ Chen <[email protected]> Signed-off-by: Julien Stephan <[email protected]>
2026-02-18Merge patch series "Add MT8195 support"Tom Rini
Julien Stephan <[email protected]> says: This series adds basic support for Mediatek soc MT8195: - clock driver - watchdog - add a new macro helper to define gate clock. Other driver can be cleaned later to use the new macro Other driver will be added later. It will also serve as basis for board support such as MT8395_EVK based on MT8195. Link: https://lore.kernel.org/r/[email protected]
2026-02-18clk: mediatek: add MT8195 clock driverChris-QJ Chen
The following clocks have been added for MT8195 SoC: apmixedsys, topckgen, infracfg These clocks driver are based on the ones present in the kernel: drivers/clk/mediatek/clk-mt8195-* Signed-off-by: Chris-QJ Chen <[email protected]> Signed-off-by: Julien Stephan <[email protected]>
2026-02-18clk: mediatek: implement GATE_FLAGS macroJulien Stephan
Add helper macro for mtk_gate, the same way, there are macros for FIXED_CLK, MUX and FACTOR. Signed-off-by: Julien Stephan <[email protected]>
2026-02-18arm: mediatek: add support for MediaTek MT8195 SoCJulien Stephan
This adds basic support for MediaTek MT8195 SoC. Add watchdog support by adding upstream compatible string. Signed-off-by: Julien Stephan <[email protected]>
2026-02-18Merge patch series "clk: mediatek: mt8188: fix clocks"Tom Rini
Julien Stephan <[email protected]> says: I recently submitted the clock driver for MT8188. I naively submitted a driver that was ported from the kernel driver, and mostly work to boot a kernel. Recently David Lechner, added support for the clk dump command for Mediatek clock drivers, so I used it to check the MT8188 and found several issues fixed on this series: - removed topckgen_cg, gates are now part of topckgen - fixed several parents clocks - added missing fixed clocks While at it, I also refactored a bit the driver to improve readability, and future additions to it. Link: https://lore.kernel.org/r/[email protected]
2026-02-18clk: mediatek: mt8188: refactor driver to improve readabilityJulien Stephan
Refactor some part of the driver to improve readability and future additions: - use CLK_TOP_NR_CLK for added clocks - rename the id map to make it more clear that the map applies to top clocks only - refactor the id map to improve readability - xtal2_rate is only used for PLL clocks, so only the apmixedsys clock tree needs it. Remove it elsewhere. Signed-off-by: Julien Stephan <[email protected]>
2026-02-18clk: mediatek: mt8188: fix some clock parentsJulien Stephan
Fix a number of clock parent definitions for MT8188 clocks. Signed-off-by: Julien Stephan <[email protected]>
2026-02-18clk: mediatek: mt8188: add missing fixed clockJulien Stephan
CLK_TOP_CLK13M was missing, add it. Signed-off-by: Julien Stephan <[email protected]>
2026-02-18clk: mediatek: mt8188: fix circular clock dependencyJulien Stephan
FACTOR1(CLK_TOP_APLL1_D4, CLK_TOP_APLL1, 1, 3) --> CLK_TOP_APLL1_D4 declares CLK_TOP_APLL1 as it's parents MUX_GATE(CLK_TOP_APLL1, apll1_parents, 0x0F8, 0, 4, 7) --> CLK_TOP_APLL1 declares apll1_parents as it's parents static const int apll1_parents[] = { CLK_TOP_CLK26M, CLK_TOP_APLL1_D4 }; --> CLK_TOP_APLL1_D4 is a parent of CLK_TOP_APLL1 Fix this, by correctly setting CLK_TOP_APLL1_DX parent to CLK_APMIXED_APLLX Signed-off-by: Julien Stephan <[email protected]>
2026-02-18clk: mediatek: mt8188: remove separate topckgen-cg driverJulien Stephan
Remove the separate topckgen-cg driver for handling clock gates in the topckgen address space. Commit 8aeeeff50d46 ("clk: mediatek: allow gates in topckgen drivers") added support for gates in topckgen driver. This commit fixes MT8188 driver, the same way commit ba207d7f54f9 ("clk: mediatek: mt8365: remove separate topckgen-cg driver") does for MT8365. Signed-off-by: Julien Stephan <[email protected]>
2026-02-18board: mediatek: add MT8370 EVK board supportJulien Stephan
This adds support for the MT8370 EVK board with the following features enabled/tested: Boot, UART, Watchdog and MMC. MT8370 is based on MT8188. Reviewed-by: Macpaul Lin <[email protected]> Signed-off-by: Julien Stephan <[email protected]>
2026-02-18Merge patch series "arm: mediatek: clean up some redundant board init"Tom Rini
David Lechner <[email protected]> says: Before adding more targets, we take a moment to clean up some some redundant code in existing Mediatek SoC support. The first three patches are removing no-op functions. The last patch generalizes the mem_map code so that it can be shared between all Mediatek ARMv8 SoCs. Link: https://lore.kernel.org/r/20260209-mtk-mach-clean-up-duplicates-v2-0-e3b22282c74d@baylibre.com