summaryrefslogtreecommitdiff
path: root/board
AgeCommit message (Collapse)Author
14 daysremoteproc: renesas: rsip: Extract SCP initialization from board fileMarek Vasut
Move the SCP initialization from board file into remoteproc driver where this is supposed to be. Add SCP MDLC DT node and describe the SCP reset controlled by the SCP MDLC in remoteproc DT node. Adjust the driver to control the SCP reset via reset framework instead of the current board-specific register poking. Signed-off-by: Marek Vasut <[email protected]>
2026-08-12board: xilinx: Generate FWU capsule dfu_alt_info from fwu_platform_hook()Michal Simek
Commit 371a6c1744f3 ("board: xilinx: Add capsule and FWU support") and commit 818c06faa119 ("board: amd: Add capsule and FWU support") introduced a separate set_dfu_alt_info() for the FWU multi-bank case (Versal and Versal Gen 2 respectively) which set the dfu_alt_info environment variable directly, while configure_capsule_updates() handled the non-FWU case by filling update_info.dfu_string. Fold the FWU multi-bank generation (fwu_gen_alt_info_from_mtd() over the nor0 MTD partitions) into fwu_platform_hook() and drop the standalone set_dfu_alt_info(). Signed-off-by: Michal Simek <[email protected]> Link: https://patch.msgid.link/33c118b8177f8d0dc182a6f4c5cffedca4e02448.1782986903.git.michal.simek@amd.com
2026-08-07Merge tag 'u-boot-imx-main-20260807' of ↵Tom Rini
https://git.u-boot-project.org/u-boot/custodians/u-boot-imx CI: https://git.u-boot-project.org/u-boot/custodians/u-boot-imx/-/pipelines/906 - Fix a boot regression on i.MX7 related to the system counter. - Add Aquila iMX95 0243 PID4. - Update phycore_imx8mm DDR timings. - Add FRDM-IMX95 initial support. - Handle FCFB header during SPI NOR boot and CST backend selection.
2026-08-06imx: Add FRDM-IMX95 initial supportJoseph Guo
Add boot support and peripherals like eMMC/SD, UART, I2C, GPIO, ENETC0/1 and PCIE0/1 for iMX95 15x15 FRDM. Updated doc for build instructions. Signed-off-by: Lei Xu <[email protected]> Signed-off-by: Joseph Guo <[email protected]>
2026-08-05board: sophgo: add support for Milk-V Duo 256MHiago De Franco
Add U-Boot support for Milk-V Duo 256M. This board has a different SoC compared to the Milk-V Duo 64M, it uses the Sophgo SG2002 instead of the Sophgo CV1800B. Both SoCs share many common IP blocks, so this board reuses the existing cv1800b CPU support. The board shares the same 'board.c' with Milk-V Duo 64MB (CV1800B), so use the same file for now. Link: https://milkv.io/docs/duo/getting-started/duo256m Signed-off-by: Hiago De Franco <[email protected]> Acked-by: Leo Yu-Chi Liang <[email protected]>
2026-08-05board: sophgo: move ethernet driver to common directoryHiago De Franco
This will make easier for future boards to reuse the same driver (e.g. Milk-V Duo 256MB). Signed-off-by: Hiago De Franco <[email protected]> Acked-by: Leo Yu-Chi Liang <[email protected]>
2026-08-03toradex: tdx-cfg-block: Add Aquila iMX95 0243 PID4Franz Schnyder
Add the new 0243 PID4 to config block handling: - 0243 Aquila iMX95 Hexa 8GB IT Signed-off-by: Franz Schnyder <[email protected]>
2026-08-03board: phycore_imx8mm: add 1 and 4GB RAM timingsINgo Rah
The Phytec Tauri L is sold with multiple memory configurations beyond the base 2 GB variant. To support these alternative capacities seamlessly, read the physical memory size directly from the EEPROM of the underlying phyCORE module and apply the appropriate DDR timing parameters at runtime. Alternatively, a fixed memory configuration can still be enforced via a dedicated Kconfig option if dynamic detection is not desired. Note that while U-Boot correctly discovers the full physical memory bank, the device tree excludes the memory beyond 3 GB (below the 4 GB boundary). This ensures that U-Boot allocations and early EFI staging buffers remain safe from 32-bit interconnect DMA limitations inherent to some i.MX8MM IP blocks. Signed-off-by: INgo Rah <[email protected]> Reviewed-by: Gregor Herburger <[email protected]> Reviewed-by: Benedikt Spranger <[email protected]> Reviewed-by: Yannic Moog <[email protected]> Tested-by: Yannic Moog <[email protected]>
2026-08-03board: phycore_imx8mm: update RAM timingsINgo Rah
Updated RAM timings with new generated settings using DDR Tool v3.6.0_22-aa018543. Provide functions for 1GB, 4GB and revision 7 variants. Signed-off-by: INgo Rah <[email protected]> Reviewed-by: Gregor Herburger <[email protected]> Reviewed-by: Benedikt Spranger <[email protected]> Tested-by: Yannic Moog <[email protected]>
2026-07-30arm: mvebu: Add Allied Telesis x960 boardChris Packham
The x960-28YSQ is a 25G/100G layer 3 switch from Allied Telesis. Signed-off-by: Chris Packham <[email protected]> Reviewed-by: Stefan Roese <[email protected]> [sr: fix DT file name in MAINTAINERS]
2026-07-28board: phytec: phycore_am68x: Turn off pmic watchdogDominik Haller
Starting with pmic firmware version 5 the watchdog is enabled with a timeout window of 13 minutes by default. The TI EVMs use a dip switch to control a gpio on the pmic which gets configured as DISABLE_WDOG by the firmware. On the phycore_am68x there is no such dip switch so pull resistors would be necessary. Using mcu_i2c0 to turn off the pmic watchdog works with all hardware and pmic firmware combinations. Signed-off-by: Dominik Haller <[email protected]>
2026-07-28Merge patch series "Enable Ethernet boot on SK-AM62A-LP"Tom Rini
Chintan Vankar <[email protected]> says: This series enables Ethernet boot on SK-AM62A-LP. The series is based on commit 'a18265f1ccb7' of origin/next branch of U-Boot repo. Link: https://lore.kernel.org/r/[email protected]
2026-07-27Merge tag 'u-boot-imx-main-20260727' of ↵Tom Rini
https://git.u-boot-project.org/u-boot/custodians/u-boot-imx CI: https://git.u-boot-project.org/u-boot/custodians/u-boot-imx/-/pipelines/749 - Support authenticating signed Mcore container image on i.MX9. - Support booting CM70, CM71 and CM33 sync cores on i.MX9. - Add i.MX SNVS RTC driver. - Detect RAM sizes on Toradex smarc and aquila i.MX95 boards. - Add support for the Librem5 devkit. - Subtract half a cycle instead of three quarters of a cycle after DQS gating calibration on i.MX6. - Several tqma6 improvements. - Add product ID support for new Toradex boards.
2026-07-27Merge tag 'u-boot-rockchip-2026.10-20260724' of ↵Tom Rini
https://git.u-boot-project.org/u-boot/custodians/u-boot-rockchip - Switched to use upstream pinctrl header include, - Dropped SDHCI DT properties in U-Boot-specific DT for NanoPi R5 as most are present upstream and those which aren't are breaking devices, - Fixed ECC strength mismatch between reading and writing on non-0 NAND chips configured as boot medium (nand-is-boot-medium), - Moved Simon to reviewer for ARM ROCKCHIP, - Fixed build issue related to GPT capsule support accessing a struct member only present when CONFIG_PARTITION_TYPE_GUID is set, - Added support for new devices: - Anbernic RG-DS - ROC-RK3588S-PC
2026-07-27board: gateworks: fsa: bound FSA EEPROM gpio descriptor countChristopher Kleiner
fsa_user_info.gpios[] is a fixed 20-element array, but the number of descriptors iterated and indexed comes from the FSA add-on board EEPROM: board_info.sockgpios and board_info.ioexpgpios are u8 fields (up to 255 each) read via dm_i2c_read() with no upper bound. fsa_config_gpios(), invoked automatically at boot from fsa_init(), loops over info->gpios[i] for i < sockgpios + ioexpgpios, reading past the 20-element array (an out-of-bounds stack read whose contents are then used to configure GPIOs and build names). do_fsa_gpio() validates the console-supplied index only against the same EEPROM counts, so "fsa gpio <i> ..." can memcpy() a descriptor to user_info.gpios[i] for i up to 254 -- an out-of-bounds stack write that is then written back to the EEPROM. A malicious or swapped FSA add-on board EEPROM (only a valid checksum is required, which the attacker can compute) thus yields OOB accesses on the boot path and via the console command. Clamp the descriptor count to ARRAY_SIZE(info->gpios) before iterating, and reject any console index outside the array. Fixes: da9e2218afc2 ("board: venice: add FSA support") Signed-off-by: Christopher Kleiner <[email protected]>
2026-07-27board: tqma6: add kernel device tree handling for environmentPaul Gerber
Set the environment variable 'fdtfile' depending on ENET workaround detection. The function tqma6_get_fdt_configuration is implemented to be reusable for configuration detection in multi-DTB FIT image and therefore returns the devicetree name without the '.dtb' ending. Set fdtfile only if CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG is enabled and it is currently unset. The model string is loaded from the device tree variant. Therefore, the overriding of the model string is being removed. Signed-off-by: Paul Gerber <[email protected]> Signed-off-by: Markus Niebel <[email protected]> Signed-off-by: Max Merchel <[email protected]>
2026-07-27board: tqma6: implement ENET errata workaround detectionMarkus Niebel
TQMa6 SOM beginning with hardware rev. 0200 comes in two flavours: With and without a hardware workaround for ENET errata err006687. Therefore we need two flavours of device tree. To be able to detect the presence of the workaround we need to check GPIO1_6 is connected to I2C bus or not. If the I2C bus is detected, the workaround is not used and separate I2C buses are used for the SoM and the baseboard. Later on this detection will be used to select the correct devicetree at runtime. Signed-off-by: Markus Niebel <[email protected]> Signed-off-by: Max Merchel <[email protected]>
2026-07-27board: tqma6: use runtime SoC detection in enet setupMax Merchel
Select the appropriate iomux settings based on the CPU type during ethernet configuration. Signed-off-by: Paul Gerber <[email protected]> Signed-off-by: Max Merchel <[email protected]>
2026-07-27arm64: imx: Handle both MMC2 and SD2 boot devices on Data Modul i.MX8M Mini ↵Marek Vasut
eDM SBC Handle both MMC2 and SD2 boot devices as SDMMC device 1 on Data Modul i.MX8M Mini eDM SBC. In case the system boots from a microSD card, the BootROM reports boot device as SD2_BOOT instead of MMC2_BOOT. Continue booting from that SDMMC device instead of falling back to SDP. Note that SDMMC device 1 is the microSD slot on this device, SDMMC device 2 is the eMMC, but BootROM reports the numbers the other way around, hence the potential confusion in this commit message. Fixes: 0b97a394f6b7 ("ARM: imx: Replace YModem with SDP on Data Modul i.MX8M Mini eDM SBC SPL") Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2026-07-27toradex: tdx-cfg-block: Add verdin am62 0242 pid4Vitor Soares
Add the new 0242 PID4 to config block handling: - 0242 Verdin AM62 Dual 1GB WB ET Update the board-specific variant selection to use the Wi-Fi variant for the new WB SKU. Signed-off-by: Vitor Soares <[email protected]>
2026-07-27toradex: tdx-cfg-block: Add smarc imx8mp 0240 pid4Vitor Soares
Add the new 0240 PID4 to config block handling: - 0240 SMARC iMX8M Plus Quad 4GB WB IT Signed-off-by: Vitor Soares <[email protected]>
2026-07-27toradex: tdx-cfg-block: Add verdin imx8mm 0239 pid4Vitor Soares
Add the new 0239 PID4 to config block handling: - 0239 Verdin iMX8M Mini Quad 2GB WB IT Update the board-specific variant selection to use the Wi-Fi variant for the new WB SKU. Signed-off-by: Vitor Soares <[email protected]>
2026-07-27toradex: tdx-cfg-block: Add verdin imx8mp 64gb emmc pid4sVitor Soares
Add the new Verdin iMX8M Plus 64GB eMMC PID4s to config block handling: - 0236 Verdin iMX8M Plus Quad 4GB WB IT - 0237 Verdin iMX8M Plus Quad 4GB IT - 0238 Verdin iMX8M Plus Quad 8GB WB IT Update the board-specific variant selection to use the Wi-Fi variant for the new WB SKUs. Signed-off-by: Vitor Soares <[email protected]>
2026-07-27toradex: tdx-cfg-block: Add apalis imx8qm 64gb emmc pid4sVitor Soares
Add the new Apalis iMX8QM 64GB eMMC PID4s to config block handling: - 0233 Apalis iMX8QM 4GB WB IT - 0234 Apalis iMX8QM 4GB IT - 0235 Apalis iMX8QM 8GB WB IT Signed-off-by: Vitor Soares <[email protected]>
2026-07-27toradex: tdx-cfg-block: Add aquila tda4 0230 pid4Vitor Soares
Add the new 0230 PID4 to config block handling: - 0230 Aquila TDA4 Octa 8GB IT Signed-off-by: Vitor Soares <[email protected]>
2026-07-27toradex: tdx-cfg-block: Add smarc imx95 0229 pid4Vitor Soares
Add the new 0229 PID4 to config block handling: - 0229 SMARC iMX95 Hexa 4GB IT Signed-off-by: Vitor Soares <[email protected]>
2026-07-27board: toradex: aquila-imx95: detect RAM sizesEmanuele Ghidoli
Use alias-based RAM probing to detect different memory configurations on Toradex Aquila iMX95. The address wrap-around is not linear: address bits above the module capacity alias back with some low address bits XORed (bit 32 -> XOR 0xc000), as measured on 4GB and 8GB modules. During probing, skip the first 256MB, since that region is reserved. Signed-off-by: Emanuele Ghidoli <[email protected]>
2026-07-27board: toradex: smarc-imx95: detect RAM sizesEmanuele Ghidoli
Use alias-based RAM probing to detect different memory configurations on Toradex SMARC iMX95. The address wrap-around is not linear: address bits above the module capacity alias back with some low address bits XORed (bit 32 -> XOR 0xc000), as measured on 4GB and 8GB modules. During probing, skip the first 256MB, since that region is reserved. Signed-off-by: Emanuele Ghidoli <[email protected]>
2026-07-27ge: common: vpd_reader: fix errloc array size in verify_bch()Md Shofiqul Islam
errloc stores bit positions of errors returned by decode_bch(). The maximum number of correctable errors is ecc_bits, so errloc must have ecc_bits entries. The array was allocated with data_length entries instead, which is the number of EEPROM data bytes -- orders of magnitude larger than needed and incorrect. Fixes: b418dfe16e62 ("board: ge: make VPD code common") Signed-off-by: Md Shofiqul Islam <[email protected]>
2026-07-27imx9{4, 5, 52}_evk: power on mcore according to SM configYe Li
When working with SM config mx9{4,5,52}evkrpmsg, mcores are not booted by ROM. Hence, power on the mcore and initialize TCM ECC in u-boot for subsequent mcore booting. Signed-off-by: Ye Li <[email protected]> [fabio: Adapted to mainline context] Signed-off-by: Fabio Estevam <[email protected]>
2026-07-27board: purism: Add support for the Librem5 devkitGuido Günther
Although it has similar naming the Librem 5 Devkit is a completely different design from the Librem 5 phone. It uses an imx8mq SOM from Emcraft, a separate HDMI port instead of DisplayPort, different USB-C chip, panel, etc. This is based on a Emcraft's SOM documentation, Purism's downstream fork and the available schematics of the devkit. Link: https://developer.puri.sm/Librem5/Development_Environment/Boards/imx8.html Link: https://source.puri.sm/Librem5/dvk-mx8m-bsb Co-authored-by: Angus Ainslie <[email protected]> Co-authored-by: Manuel Traut <[email protected]> Signed-off-by: Manuel Traut <[email protected]> Tested-by: Manuel Traut <[email protected]> Signed-off-by: Guido Günther <[email protected]> [fabio: Removed the arch/arm/dts/Makefile entry that does not apply and it is not needed as the board uses OF_UPSTREAM] Signed-off-by: Fabio Estevam <[email protected]>
2026-07-26board: starfive: visionfive2: Support VisionFive 2 Lite eMMCHal Feng
Add emmc detection to VisionFive 2 Lite DT selection and fdtfile environment variable setting. Reviewed-by: E Shattow <[email protected]> Signed-off-by: Hal Feng <[email protected]>
2026-07-23rockchip: rk3588s: Add support for ROC-RK3588S-PCFabio Estevam
The ROC-RK3588S-PC board is an SBC made by Firefly, based on the RK3588S SoC. Add support for it. Signed-off-by: Fabio Estevam <[email protected]> Reviewed-by: Quentin Schulz <[email protected]> Link: https://patch.msgid.link/[email protected] [s/ROC-PC-RK3588S/ROC-RK3588S-PC/ in commit log and diff] Signed-off-by: Quentin Schulz <[email protected]>
2026-07-22arm: dts: mediatek: add U-Boot dtsi overrides for Genio 510 and Genio 700Julien Stephan
U-Boot applies DTS overrides by searching for files in the following priority order [1]: <orig_filename>-u-boot.dtsi <CONFIG_SYS_SOC>-u-boot.dtsi <CONFIG_SYS_CPU>-u-boot.dtsi <CONFIG_SYS_VENDOR>-u-boot.dtsi u-boot.dtsi For Genio 510 and Genio 700, the common mt8188-u-boot.dtsi override is never applied because none of the lookup paths resolve to it (CONFIG_SYS_SOC="mediatek", CONFIG_SYS_CPU="armv8", CONFIG_SYS_VENDOR="mediatek"). Add board-specific overrides for mt8370-genio-510-evk and mt8390-genio-700-evk that include mt8188-u-boot.dtsi. While at it, also add mt8188-u-boot.dtsi into board/mediatek/MAINTAINERS. [1]: https://docs.u-boot.org/en/stable/develop/devicetree/control.html#adding-tweaks-for-u-boot Signed-off-by: Julien Stephan <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Link: https://patch.msgid.link/20260701-fix-genio-510-genio-700-dts-override-v1-1-cb571f8c9296@baylibre.com Signed-off-by: David Lechner <[email protected]>
2026-07-21configs: k1: enable pinctrl and gpioGuodong Xu
Enable pinctrl and gpio configurations for Spacemit K1 SoC. Signed-off-by: Raymond Mao <[email protected]> Signed-off-by: Guodong Xu <[email protected]>
2026-07-21spacemit: k1: Add multiple device tree supportGuodong Xu
Enable multiple DTB support in the FIT image for the Spacemit K1 SoC, allowing a single U-Boot binary to support different board variants. The SPL reads the board type from EEPROM and selects the corresponding device tree at runtime via board_fit_config_name_match(), ensuring the correct hardware description is passed to U-Boot proper. Signed-off-by: Guodong Xu <[email protected]>
2026-07-21spl: k1: enable SPI NOR flash detection and bootGuodong Xu
Add nor_early_init() to probe the QSPI controller and SPI NOR flash in SPL. Switch spl_boot_device() to BOOT_DEVICE_SPI so the board boots from SPI flash. Change the default device tree to k1-musepi-pro, whose u-boot overlay already defines the QSPI controller and flash node with bootph-pre-ram markers. Enable the required SPI driver model and flash config options. Signed-off-by: Guodong Xu <[email protected]>
2026-07-21board: k1: enable pmic in splRaymond Mao
Add Spacemit P1 SoC support in SPL. And set the default voltage for BUCKs and LDOs. Also update MAINTAINERS: add Guodong Xu as co-maintainer, list the u-boot-spacemit mailing list, register the new K1 driver files (i2c, PMIC, regulator), and fix a pre-existing '@@' typo in Huan Zhou's email. Fixes: 1cd239f44438 ("riscv: spacemit: bananapi_f3: initial support added") Signed-off-by: Raymond Mao <[email protected]> Signed-off-by: Guodong Xu <[email protected]> Tested-by: Songsong Zhang <[email protected]>
2026-07-21spacemit: k1: Add DDR firmware support to SPLRaymond Mao
Include DDR initialization firmware in the SPL image. The firmware path can be specified via the DDR_FW_FILE environment variable. If the firmware is not found, an empty placeholder file is created to allow the build to proceed without DDR initialization support. Signed-off-by: Raymond Mao <[email protected]> Signed-off-by: Guodong Xu <[email protected]> Tested-by: Songsong Zhang <[email protected]>
2026-07-21spacemit: k1: add TLV EEPROM support in SPLRaymond Mao
And support for required components including clock, I2C controller, and I2C EEPROM. Signed-off-by: Raymond Mao <[email protected]> Signed-off-by: Guodong Xu <[email protected]> Tested-by: Songsong Zhang <[email protected]>
2026-07-21board: k1: initialize clock and serial devices in SPLRaymond Mao
Initialize clock and serial devices in SPL. Otherwise, the device driver won't be loaded in SPL. Signed-off-by: Raymond Mao <[email protected]> Signed-off-by: Guodong Xu <[email protected]> Tested-by: Songsong Zhang <[email protected]>
2026-07-21spacemit: k1: enable SPL with debug UARTRaymond Mao
Add SPL support featuring debug UART output for early boot diagnostics on K1 SoC. Signed-off-by: Raymond Mao <[email protected]> Signed-off-by: Guodong Xu <[email protected]> Tested-by: Songsong Zhang <[email protected]>
2026-07-21spacemit: k1: support multi-board infrastructureRaymond Mao
Restructure K1 SoC support to handle multiple boards through a single configuration: 1. Rename bananapi-f3_defconfig to spacemit_k1_defconfig. 2. Move all K1 board files to board/spacemit/k1/. 3. Replace TARGET_BANANAPI_F3 with TARGET_SPACEMIT_K1 and rename the board's <board>.h header to k1.h. Eliminates the need for board-specific defconfigs while maintaining hardware compatibility. Signed-off-by: Raymond Mao <[email protected]> Signed-off-by: Guodong Xu <[email protected]> Link: https://patch.msgid.link/[email protected] Tested-by: Songsong Zhang <[email protected]>
2026-07-20global: Switch from source.denx.de to git.u-boot-project.orgTom Rini
As part of moving our git forge to a new location, update all references in tree to point to git.u-boot-project.org now. Signed-off-by: Tom Rini <[email protected]>
2026-07-20board: rockchip: add Anbernic RG-DSChris Morgan
Add support for the Anbernic RG-DS dual-screen handheld gaming device. Link: https://anbernic.com/products/rgds Signed-off-by: Chris Morgan <[email protected]> Reviewed-by: Quentin Schulz <[email protected]> Reviewed-by: Kever Yang <[email protected]> Link: https://patch.msgid.link/[email protected] [conflict resolution in doc/board/rockchip/rockchip.rst due to commit b5deaa71fbe5 ("board: rockchip: Add support for 9Tripod X3568 v4")] Signed-off-by: Quentin Schulz <[email protected]>
2026-07-16board: toradex: verdin-am62: select tifsstub via FIT configAristo Chen
Use the k3_fit_config_match_security_state() helper introduced in the earlier "arm: k3: select tifsstub via board_fit_config_name_match" patch to pick the right tifsstub variant on Verdin AM62 and AM62P SoMs at FIT config selection time. The k3-am625-verdin-wifi-dev-binman.dtsi and k3-am62p5-verdin-wifi-dev-binman.dtsi FIT images are split into per-security-state configurations (conf-hs-se, conf-hs-fs), and board_fit_config_name_match() in each verdin board file forwards to the shared K3 helper. The previous implementation returned 0 unconditionally which matched the first listed configuration regardless of the actual silicon, which after the dtsi split would load the wrong tifsstub variant on HS-SE parts. Signed-off-by: Aristo Chen <[email protected]>
2026-07-16board: phytec: phycore-am62: select tifsstub via FIT configAristo Chen
Use the k3_fit_config_match_security_state() helper introduced in the earlier "arm: k3: select tifsstub via board_fit_config_name_match" patch to pick the right tifsstub variant on phycore AM62x and AM62Ax SoMs at FIT config selection time. The k3-am625-phycore-som-binman.dtsi and k3-am62a-phycore-som-binman.dtsi FIT images are split into per-security-state configurations (conf-hs-se, conf-hs-fs), and board_fit_config_name_match() in each phycore board file forwards to the shared K3 helper. Signed-off-by: Aristo Chen <[email protected]>
2026-07-16arm: k3: select tifsstub via board_fit_config_name_matchAristo Chen
TI K3 AM62x/AM62Ax/AM62Px boards carry two or three mutually-exclusive tifsstub variants in their tispl.bin FIT images, all at the same load address. The existing approach loads every variant and then discards the wrong ones at runtime via a *p_size = 0 hack in board_fit_image_post_process(). Switch to selecting the appropriate FIT configuration up front via board_fit_config_name_match() so only the correct tifsstub is loaded in the first place. board_fit_config_name_match() is invoked by the R5 SPL during FIT config selection. get_device_type() is a simple register read that is available at that point, so the security state can be determined early. The matching logic is factored into k3_fit_config_match_security_state() in arch/arm/mach-k3/common.c so it can be shared by any K3 board that wants this scheme. It matches configurations by a suffix appended to the description string: -hs-se -> HS-SE (K3_DEVICE_TYPE_HS_SE) -hs-fs -> HS-FS (K3_DEVICE_TYPE_HS_FS) -gp -> GP (K3_DEVICE_TYPE_GP) Configurations without a security-state suffix (e.g. u-boot.img) do not match and fall through to the DTS-specified default config naturally. Each TI EVM board defines its board_fit_config_name_match() as a thin wrapper around the shared helper: - board/ti/am62x/evm.c (AM625 SK: hs-se, hs-fs, gp) - board/ti/am62ax/evm.c (AM62A SK: hs-se, hs-fs, gp) - board/ti/am62px/evm.c (AM62P SK: hs-se, hs-fs, gp) FIT configurations are split per security state in: - arch/arm/dts/k3-am625-sk-binman.dtsi (ti-falcon, ti-spl, ti-spl_unsigned: conf-hs-se/conf-hs-fs/conf-gp) - arch/arm/dts/k3-am62a-sk-binman.dtsi (ti-falcon, ti-spl: conf-hs-se/conf-hs-fs; no GP variant on AM62A) - arch/arm/dts/k3-am62p-sk-binman.dtsi (ti-falcon, ti-spl: conf-hs-se/conf-hs-fs; no GP variant on AM62P) The runtime filter in board_fit_image_post_process() is intentionally left in place. It becomes redundant once every board using the AM62x family dtsi files migrates to per-state configurations. The dtsi for phytec phycore and toradex verdin boards is updated by separate patches in this series, and the now-redundant runtime filter is removed by the final patch in the series. Signed-off-by: Aristo Chen <[email protected]> Reviewed-by: Anshul Dalal <[email protected]>
2026-07-13board: nxp: vid: introduce PMBus framework supportVincent Jardin
Wire board/nxp/common/vid.c into the <pmbus.h> framework so the legacy NXP AVS path stops carrying its own duplicate copy of the PMBus protocol and instead consumes the shared constants, decoders, and transport helpers. vid.c is the legacy NXP AVS/pre-kernel voltage-trim path for lx2160 CPUs. It does PMBus to whichever core-rail voltage monitor the board carries: LTC3882 or ISL68233 are selected with CONFIG_VOL_MONITOR_LTC3882_*/CONFIG_VOL_MONITOR_ISL68233_*. Before this change the file kept its own local PMBUS_CMD_* command-code defines, its own inline LINEAR16 mantissa/exponent math, and called into I2C through the I2C_READ/I2C_WRITE NXP wrappers in board/nxp/common/i2c_common.{c,h} which is a parallel implementation of exactly what <pmbus.h> + lib/pmbus.c provides. The intent is to make vid.c an consumer of the new PMBus. Compatibility with the former support: - CLI unchanged: vdd_override and vdd_read keep their existing semantics, return codes, and diagnostic output. - I2C transport unchanged on the wire: the framework's pmbus_* helpers call dm_i2c_read/dm_i2c_write: the same DM I2C backing that vid.c's former I2C_READ/I2C_WRITE macros already routed through on DM_I2C. - Numeric decode is bit-equivalent: pmbus_reg2data_linear16() and pmbus_data2reg_linear16() implement the PMBus 1.3 Part II mantissa/exponent. Signed-off-by: Vincent Jardin <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-07-10treewide: Kconfig: use bool instead of tristateAnshul Dalal
U-Boot does not support modules, so having tristate options is useless. Therefore this patch does a blind replace of all tristate options to bool tree-wide. Signed-off-by: Anshul Dalal <[email protected]> Reviewed-by: Heiko Schocher <[email protected]> Reviewed-by: Quentin Schulz <[email protected]> Reviewed-by: Siddharth Vadapalli <[email protected]> Reviewed-by: Neha Malcom Francis <[email protected]> Reviewed-by: Romain Gantois <[email protected]> Reviewed-by: Simon Glass <[email protected]>