summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2025-12-10configs: am43xx: Migrate to CONFIG_SYS_MEM_TOP_HIDE from CFG_PRAMBeleswar Padhi
The TI AM43xx HS boards have been using CFG_PRAM to hide the top 64MB firewalled DRAM memory from U-Boot. However, CFG_PRAM only prevents U-Boot from relocating into that memory, but it is still open for access for any other usage. Therefore, migrate into using CONFIG_SYS_MEM_TOP_HIDE which reduces the ram size itself ensuring that memory is not visible to U-Boot at all (either for reloc, or general usage). Signed-off-by: Beleswar Padhi <[email protected]>
2025-12-03arm64: dts: renesas: Add Renesas R-Car X5H R8A78000 Ironhide board codeHai Pham
Add initial support for Renesas R-Car X5H R8A78000 Ironhide board. This consists mainly of DTs, Makefile and Kconfig entries and board specific configuration files. The DTs will be gradually switched over to Linux DTs via OF_UPSTREAM once Linux DTs become available upstream, as upstreaming progresses. Signed-off-by: Hai Pham <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2025-12-03arm64: dts: renesas: Add Renesas R-Car X5H R8A78000 SoC DTsHai Pham
Add initial device trees for Renesas R-Car X5H R8A78000 SoC. Include very basic clock, reset, power domain headers which are used to control supported peripherals via SCMI / SCP. The headers are currently kept limited to avoid possible ABI break. A lot of clock are still stubbed via fixed-clock, this is going to be gradually removed over time, as more of the platform is upstreamed. Signed-off-by: Hai Pham <[email protected]> Signed-off-by: Khanh Le <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2025-12-02Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-samsungTom Rini
- Assorted updates
2025-12-02board: samsung: add support for Samsung Exynos mobile device boardsKaustabh Chakraborty
Add support for a generic platform which intends to support multiple boards powered by ARMv8 Samsung Exynos SoCs. Some important features include: * Fastboot: This is present to provide an open alternative to Samsung's proprietary Odin protocol. The board file configures certain features for fastboot, such as a dynamically allocated fastboot buffer, and standardized (lowercase) partition aliases. * EFI: Kernel image can be loaded from an EFI partition. This adopts a standard booting process, which multiple OS distributions can rely on. Signed-off-by: Kaustabh Chakraborty <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2025-12-01socfpga_vining_fpga: Stop disabling device tree relocationTom Rini
Remove setting of fdt_high to ~0, which disables device tree relocation, from the default environment. Doing so prevents U-Boot from correcting problems such as having an unaligned device tree and leads to various failure modes in the OS. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2025-11-27board: adi: Fix missing semicolon in nfsrootGreg Malysa
The nfsroot constructed as part of the default Analog Devices boot strategy is missing a semicolon between the server ip and the root path itself. This adds the missing semicolon. Signed-off-by: Greg Malysa <[email protected]>
2025-11-26s5p4418_nanopi2: Stop disabling device tree relocationTom Rini
Remove setting of fdt_high to ~0, which disables device tree relocation, from the default environment. Doing so prevents U-Boot from correcting problems such as having an unaligned device tree and leads to various failure modes in the OS. Signed-off-by: Tom Rini <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2025-11-21test: document ut.hHeinrich Schuchardt
Add missing Sphinx comments in include/test/ut.h Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2025-11-19Merge branch 'u-boot-nand-20250918' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-nand-flash CI: https://source.denx.de/u-boot/custodians/u-boot-nand-flash/-/pipelines/28408 This pull request enhances NAND and SPI flash support, primarily focusing on the Airoha EN7523 platform. The Airoha SPI driver receives a major update, adding DMA, dual/quad-wire modes, and a critical workaround to prevent flash damage if the UART_TXD pin shorts to Ground. New chips supported include FudanMicro FM25S01A SPI-NAND and several Winbond SPI NOR devices. Fixes include correcting Kconfig dependencies, updating the mtd benchmark command to use lldiv(), and addressing minor bugs in the generic spi-mem and SPL NAND code.
2025-11-18smbios: Fix warning when building with clangTom Rini
When building with clang, we see warnings such as: error: field max_size within 'struct smbios_type7' is less aligned than 'union cache_size_word' and is usually due to 'struct smbios_type7' being packed, which can lead to unaligned accesses [-Werror,-Wunaligned-access] when building drivers/sysinfo/smbios.c. Resolve this error by packing the unions as well after verifying they are complete (16 or 32 bits). Reviewed-by: Raymond Mao <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-11-18mtd: spinand: add support for FudanMicro FM25S01ATianling Shen
Add support for FudanMicro FM25S01A SPI NAND. This driver is ported from linux v6.18 and tested on a MT7981 board. Link: https://lore.kernel.org/linux-mtd/[email protected]/ Reviewed-by: Mikhail Kshevetskiy <[email protected]> Signed-off-by: Tianling Shen <[email protected]>
2025-11-11dm: typo programmaticalyHeinrich Schuchardt
%s/programmaticaly/programmatically/ Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2025-11-10Merge tag 'scmi-master-2025-11-11' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-fsl-qoriq CI: https://source.denx.de/u-boot/custodians/u-boot-fsl-qoriq/-/pipelines/28272 - Support scmi v3.2 CONFIG_SET for clock protocol - A patchset from Marek to optimize the scmi clk booting time - Fix scmi clk set_parent in non-CCF case - Drop mmu_set_region_dcache_behaviour in firmware scmi
2025-11-10dm: Remove pre-schema tag supportTom Rini
Support for using "u-boot,dm-..." rather than "bootph-..." has been deprecated since February 2023. Any platforms using this have had a console message saying to migrate by 2023.07. Go and remove all support here now, for the v2026.01 release. The results of this change that aren't clear from the above are that we still have a checkpatch.pl error message, and document in doc/develop/spl.rst that they have been migrated since 2023. We also change the key2dtsi.py tool to use the correct bootph phase rather than the legacy phase. Signed-off-by: Tom Rini <[email protected]>
2025-11-10firmware: scmi: Add clock v3.2 CONFIG_SET supportVinh Nguyen
SCMI v3.2 introduces a new clock CONFIG_SET message format that can optionally carry also OEM specific configuration values beside the usual clock enable/disable requests. Add support to use such new format when talking to a v3.2 compliant SCMI platform. Support existing enable/disable operations across different clock protocol versions: this patch still does not add protocol operations to support the new OEM specific optional configuration capabilities. No functional change for the SCMI drivers users of the related enable and disable clock operations. [Marek: Remodel after Linux e49e314a2cf7 ("firmware: arm_scmi: Add clock v3.2 CONFIG_SET support") Support both old < 2.1 and new >= 2.1 protocol versions. Update commit message based on Linux one] Signed-off-by: Vinh Nguyen <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Alice Guo <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-11-10firmware: scmi: Fix up code commentsMarek Vasut
Fix multiple instances of copy-paste errors. Fill in missing headers for CLOCK_GET_PERMISSIONS message and response. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Alice Guo <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-11-07Merge patch series "arm: airoha: add support for en7523 based boards"Tom Rini
Mikhail Kshevetskiy <[email protected]> says: This patch series adds basic support for the boards based on Airoha EN7523/EN7529/EN7562 SoCs. Due to ATF restrictions these boards are able to run 32-bit OS only. This patch series adds support for the following hardware: * console UART * ethernet controller/switch * spinand flash (in non-dma mode) The following issues may be expected: * Extra slow UBI attaching in U-Boot (up to 20 sec with fastmap enabled). This is caused by the lack of DMA support in the U-Boot airoha-snfi driver. * Linux airoha-snfi driver in some cases might damage you flash data (see: https://lore.kernel.org/lkml/[email protected]/) * Latest linux kernel is recommended to properly support flashes with more than one plane per lun (see: https://lore.kernel.org/lkml/[email protected]/) * It's NOT recommended to use flashes working in continuous mode because U-Boot airoha-snfi driver does not support such flashes properly. The patches was tested on the board: - SoC: Airoha EN7562 - RAM: 512 MB - SPI NAND: 4 Gbit, made by Toshiba - Linux boot: was NOT tested The U-Boot was chain-loaded from the running U-Boot. Airoha ATF-2.3 does not allow easily chain-loading of U-Boot from U-Boot, so a special FIT image (mimic linux kernel) was created 1) Create u-boot.its file with the following contents: === cut here === /dts-v1/; / { description = "ARM OpenWrt FIT (Flattened Image Tree)"; #address-cells = <1>; images { u-boot-ram { description = "OpenWrt U-Boot RAM image"; data = /incbin/("u-boot.bin.lzma"); type = "kernel"; arch = "arm"; os = "linux"; compression = "lzma"; load = <0x81e00000>; entry = <0x81e00000>; hash@1 { algo = "crc32"; }; hash@2 { algo = "sha1"; }; }; fdt-1 { description = "OpenWrt device tree blob"; data = /incbin/("dts/upstream/src/arm/airoha/en7523-evb.dtb"); type = "flat_dt"; arch = "arm"; compression = "none"; hash@1 { algo = "crc32"; }; hash@2 { algo = "sha1"; }; }; }; configurations { default = "config-ram-uboot"; config-ram-uboot { description = "OpenWrt RAM U-Boot"; kernel = "u-boot-ram"; fdt = "fdt-1"; }; }; }; ================== 2) Create u-boot.itb image to chain-load new u-boot from the old one lzma_alone e u-boot.bin u-boot.bin.lzma mkimage -f u-boot.its u-boot.itb 3) Load new u-boot from the old one U-Boot> tftpboot u-boot.itb && bootm Link: https://lore.kernel.org/r/[email protected]
2025-11-07dt-bindings: reset: Add reset support for Airoha EN7523Mikhail Kshevetskiy
Introduce reset capability for EN7523 device-tree binding Signed-off-by: Mikhail Kshevetskiy <[email protected]>
2025-11-07arm/airoha: add support for airoha en7523 SoC familyMikhail Kshevetskiy
Basic support for en7523/en7529/en7562 SoCs. Within a patch only serial console will be supported. Signed-off-by: Mikhail Kshevetskiy <[email protected]>
2025-11-07ext4: include missing blk.hQuentin Schulz
If missing, lbaint_t typedef will not be found in some cases. [The proper fix for the commit above at the time would have been to include ide.h as only since commit 1a73661bc7a7 ("dm: Add a new header for block devices") is the typedef in blk.h] Fixes: 04735e9c5578 ("Fix ext2/ext4 filesystem accesses beyond 2TiB") Signed-off-by: Quentin Schulz <[email protected]>
2025-11-07Merge tag 'efi-2026-01-rc2' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request efi-2026-01-rc2 CI: https://source.denx.de/u-boot/custodians/u-boot-efi/-/pipelines/28208 Documentation: * bootstd: Describe environment variable extension_overlay_addr environment and remove extension support from TODO list EFI: * Correct the detection of the video mode in the EFI payload app: - Use struct efi_gop_mode_info in the definition of struct efi_entry_gopmode. - In function get_mode_from_entry() use the correct type for the video mode structure. * Use a valid error code as return value in efi_store_memory_map(). * Avoid a memory leak for the variable name in efi_bl_create_block_device(). * Correct the code indentation in efi_uc_stop(). * Correct the description of struct efi_priv. * Fix typos in code comments. Other: * qfw: Add more fields and a heading to qfw list * Fix the support for ACPI pass-through on ARM and RISC-V: Avoid zeroing out the XSDT address * test: provide unit test for 'acpi list' command # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCAAdFiEEbcT5xx8ppvoGt20zxIHbvCwFGsQFAmkNj/kACgkQxIHbvCwF # GsS8NQ/6Aj+Z54HJTIEfoXssvElLr5ATactrCxszq42i/yy6dLqa2Ym1afG6w1XS # 1ZbCeU/bCXFke5Tsz+x89gEfckUm83oTwngwcID0WR1qn8mWjwR7tM5MuORq8NxU # 7NwLuFs9O/QZihagKdz6hv1/Y+cBwiAYLY16EYVSuUlbLaKQo3QvxwWkqG3jdKWV # Rm58/PolU+2h04MBwP0SxSduX4OyRF/tMOGjf5RGLyqCyj8kIgdu7PvUAPMM+Gps # KemL59V0Bdv8hlF4JknmPz+idtZg2nHIDdNrBZvoxwzwGQeRZ1YXAMruRxZXqDYL # tiuDp6HMv/GfIIGkz14tJtJMdboaAybAnluPWGalx8JQJqJzEPww0R+9s4KKQeWL # mHgRyl6PxVV9p19f79Qq6q6ETwrFDX0YH3pdrGUk3DBa3lDt0UsEAnuW4FvaJ8tx # 3PMrjKAxpxocT0hglsMVnptnfvDEigMsjwH/TWrau83mY+juxFQLjm+U4vye+qCa # 4zXjjLas18+eRcrv2KxU7teakyi1Jp+WbqHq37L26YcQMaLq/RkBc0bTrsreKKLu # jprYFpvc7EJpH2Fd1XWaZ2EnxXcVSJSvrY/iwRQqb6wbwQ6XGtMvSh3IFY8IzAoh # N2Pj78oaYqyL1q/TftuZWhEHo3a0M/HfM4D+oMSHzJtWCb0wZHE= # =OGcS # -----END PGP SIGNATURE----- # gpg: Signature made Fri 07 Nov 2025 12:21:45 AM CST # gpg: using RSA key 6DC4F9C71F29A6FA06B76D33C481DBBC2C051AC4 # gpg: Good signature from "Heinrich Schuchardt <[email protected]>" [unknown] # gpg: aka "[jpeg image of size 1389]" [unknown] # gpg: WARNING: This key is not certified with a trusted signature! # gpg: There is no indication that the signature belongs to the owner. # Primary key fingerprint: 6DC4 F9C7 1F29 A6FA 06B7 6D33 C481 DBBC 2C05 1AC4
2025-11-07mmc: dw_mmc: Do not export dwmci_send_cmd() and dwmci_set_ios()Sam Protsenko
Do not over-expose the private dw_mmc API. The glue layer drivers at this point shouldn't be aware and shouldn't use the generic dwmci_send_cmd() and dwmci_set_ios() functions. Making those functions public causes a "leaky abstraction" issue. It clutters the public interface of generic dw_mmc driver and possibly leads to improper usage of those functions, so it's a bad design. If struct dm_dwmci_ops has to be extended, do so by copying it first (like it's done for example in snps_dw_mmc driver). That also makes sure the future changes to struct dm_dwmci_ops in dw_mmc driver will be automatically reflected in all extended copies, and avoid code duplication. This effectively reverts commit ef3b16bb8e73 ("mmc: dw_mmc: export dwmci_send_cmd() and dwmci_set_ios()"). No functional change. Fixes: ef3b16bb8e73 ("mmc: dw_mmc: export dwmci_send_cmd() and dwmci_set_ios()") Signed-off-by: Sam Protsenko <[email protected]> Reviewed-by: Anand Moon <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-11-06efi_loader: correct struct efi_priv descriptionHeinrich Schuchardt
Add a missing colon ':' to match Sphinx style. Reviewed-by: Bin Meng <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2025-11-06efi: Use struct efi_gop_mode_info in struct efi_entry_gopmodeHeinrich Schuchardt
Since C99 flexible array members are allowed at the end of structures. We require C11. Use struct efi_gop_mode_info in the definition of struct efi_entry_gopmode to avoid code duplication and unnecessary conversions. Reviewed-by: Bin Meng <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2025-11-06Merge patch series "ARM: bootm: Add support for starting Linux through ↵Tom Rini
OPTEE-OS on ARMv7a" This series from Marek Vasut <[email protected]> brings some enhancements to use cases using OPTEE-OS on ARMv7a platforms, some of which already existed on ARMv8. Link: https://lore.kernel.org/r/[email protected]
2025-11-06spl: fit: Add ability to jump to Linux via OPTEE-OS on ARMv7aMarek Vasut
Add support for jumping to Linux kernel through OPTEE-OS on ARMv7a to SPL. This is already supported on ARMv8a, this patch adds the ARMv7a support. Extend the SPL fitImage loader to record OPTEE-OS load address and in case the load address is non-zero, use the same bootm-optee.S code used by the U-Boot fitImage jump code to start OPTEE-OS first and jump to Linux next. Signed-off-by: Marek Vasut <[email protected]>
2025-11-06acpi: use U-Boot ACPI vendor IDHeinrich Schuchardt
The U-Boot project has been assigned the vendor ID 'UBOO' [1]. Use this vendor ID and our release version in the ACPI table headers. [1] ACPI ID Registry https://uefi.org/ACPI_ID_List Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2025-11-04imx95_evk: Add basic support for iMX95 15x15 EVKYe Li
Add boot support and peripherals like eMMC/SD, UART, I2C, GPIO, ENETC0/1 and PCIE0/1 for iMX95 15x15 LPDDR4X EVK. Updated doc for build instructions. Signed-off-by: Ye Li <[email protected]>
2025-11-04remoteproc: Extend device_to_virt with a is_iomem parameterPeng Fan
Some areas needs to be initialized by using memcpy_toio and memset_io. Following Linux Kernel commit: 40df0a91b2a5 ("remoteproc: add is_iomem to da_to_va"), add this to U-Boot. Reviewed-by: Ye Li <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-11-04ARM: imx: Enable DFU SF on all i.MX6 DHSOM and include dfu_alt_info in envMarek Vasut
Enable DFU SF on all i.MX6 DHSOM so the SPI NOR can be exposed via DFU, and include dfu_alt_info which exposes the full SPI NOR via DFU. To install new bootloader into the SPI NOR using DFU, it is necessary to pad the u-boot-with-spl.imx to 0x400 Bytes offset first and then send it to the board as follows: " u-boot=> dfu 0 sf " " host$ dd if=/dev/zero of=pad.bin bs=1024 count=1 host$ cat pad.bin u-boot-with-spl.imx > flash.bin host$ dfu-util -w -a 0 -D flash.bin " Signed-off-by: Marek Vasut <[email protected]>
2025-11-03Merge patch series "Convert extension support to UCLASS and adds its support ↵Tom Rini
to boot flows" Kory Maincent (TI.com) <[email protected]> says: This series converts the extension board framework to use UCLASS as requested by Simon Glass, then adds extension support to pxe_utils and bootmeth_efi (not tested) to enable extension boards devicetree load in the standard boot process. I can't test the imx8 extension scan enabled by the imx8mm-cl-iot-gate_defconfig as I don't have this board. I also can't test the efi bootmeth change as I don't have such board. Link: https://lore.kernel.org/r/20251030-feature_sysboot_extension_board-v5-0-cfb77672fc68@bootlin.com
2025-11-03boot: extension: Move overlay apply custom logic to command levelKory Maincent (TI.com)
The extension_overlay_cmd environment variable approach is specific to the U-Boot extension_board command, while other boot flows (pxe_utils, bootstd) handle overlay loading differently. Move the extension_overlay_cmd execution out of the core extension framework to the command level. This decouples the framework from command-specific behavior and prepares for future extension support in other boot flows. Signed-off-by: Kory Maincent (TI.com) <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2025-11-03boot: Remove legacy extension board supportKory Maincent (TI.com)
Remove the legacy extension board implementation now that all boards have been converted to use the new UCLASS-based framework. This eliminates lines of legacy code while preserving functionality through the modern driver model approach. Update the bootstd tests, due to the removal of extension hunter. Signed-off-by: Kory Maincent (TI.com) <[email protected]>
2025-11-03boot: Add UCLASS support for extension boardsKory Maincent (TI.com)
Introduce UCLASS-based extension board support to enable more standardized and automatic loading of extension board device tree overlays in preparation for integration with bootstd and pxe_utils. Several #if CONFIG_IS_ENABLED are used in cmd/extension_board.c to ease the development but don't worry they are removed later in the series. Signed-off-by: Kory Maincent (TI.com) <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2025-11-03boot: Move extension board support from cmd/ to boot/Kory Maincent (TI.com)
Relocate extension board support from cmd/ to boot/ directory in preparation for converting the extension framework to use UCLASS. Also improve code style by applying reverse xmas tree ordering. Signed-off-by: Kory Maincent (TI.com) <[email protected]>
2025-11-03include: extension_board: Document the extension structureKory Maincent (TI.com)
Add documentation to describe the extension structure. Signed-off-by: Kory Maincent (TI.com) <[email protected]>
2025-10-31Merge tag 'u-boot-imx-master-20251030' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/28092 - Fix a i.MX6ULL regression related to the REFTOP_VBGADJ setting. - Shrink SPL size for the Liebherr BTT board. - Add suppot for Toradex SMARC iMX95. - Fix Aquila imx95 0098 Product ID.
2025-10-30Merge tag 'qcom-for-2026.01-rc2' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-snapdragon A variety of Qualcomm features/fixes for this cycle, notably with a few new platforms gaining support: * Initial support for SDM670 (similar to SDM845), SM6350, and SM7150 platforms is added * USB and UART issues on MSM8916 are addressed (improving stability/ reliability) * Firmware loading is implemented for the GENI serial engine, this is used on some platforms to load firmware for i2c/spi/uart to work Some additional patches like binman support for building MBN files still need some additional work. CI: https://source.denx.de/u-boot/custodians/u-boot-snapdragon/-/commit/8ef6ac07b35e39a57501554680bbf452e818d3e3/pipelines?ref=qcom-main
2025-10-30misc: introduce Qcom GENI wrapperCasey Connolly
Qualcomm peripherals like UART, SPI, I2C, etc are all exposed under a common GENI Serial Engine wrapper device. Replace the stub driver we use for this currently with a full-on misc device and implement support for loading peripheral firmware. Each of the peripherals has it's own protocol-specific firmware, this is stored on the internal storage of the device with a well-known partition type GUID. To support this, GENI will bind peripherals in two stages. First the ones that already have firmware loaded (such as the serial port) are bound in the typical way. But devices that require firmware loading are deferred until EVT_LAST_STAGE_INIT. At this point we can be sure that the storage device is available, so we load the firmware and then bind and probe the remaining children. Child devices are expected to determine if firmware loading is necessary and call qcom_geni_load_firmware(). Since Linux currently doesn't support loading firmware (and firmware may not be available), we probe all GENI peripherals to ensure that they always load firmware if necessary. Signed-off-by: Casey Connolly <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Casey Connolly <[email protected]>
2025-10-30board: toradex: add Toradex SMARC iMX95João Paulo Gonçalves
Add support for the Toradex SMARC iMX95. Link: https://www.toradex.com/computer-on-modules/smarc-arm-family/nxp-imx95 Link: https://www.toradex.com/products/carrier-board/smarc-development-board-kit Signed-off-by: João Paulo Gonçalves <[email protected]> Co-developed-by: Emanuele Ghidoli <[email protected]> Signed-off-by: Emanuele Ghidoli <[email protected]> Co-developed-by: Max Krummenacher <[email protected]> Signed-off-by: Max Krummenacher <[email protected]> Co-developed-by: Ernest Van Hoecke <[email protected]> Signed-off-by: Ernest Van Hoecke <[email protected]>
2025-10-30sdhci: Reorder interrupt flags in SDHCI_INT_DATA_MASK definitionTanmay Kathpalia
Reorder the SDHCI_INT_SPACE_AVAIL and SDHCI_INT_DATA_AVAIL flags in the SDHCI_INT_DATA_MASK definition to match the bit order as defined in the SDHCI specification and maintain consistency with the register layout. The functional behavior remains unchanged as this only affects the order of OR operations in the mask definition. Signed-off-by: Tanmay Kathpalia <[email protected]> Reviewed-by: Peng Fan <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-10-30mmc: sd: Handle UHS-I voltage signaling without power cycleTanmay Kathpalia
Some boards have SD card connectors where the power rail cannot be switched off by the driver. However there are various circumstances when a card might be re-initialized, such as after system resume, warm re-boot, or error handling. However, a UHS card will continue to use 1.8V signaling unless it is power cycled. If the card has not been power cycled, it may still be using 1.8V signaling. According to the SD spec., the Bus Speed Mode (function group 1) bits 2 to 4 are zero if the card is initialized at 3.3V signal level. Thus they can be used to determine if the card has already switched to 1.8V signaling. Detect that situation and try to initialize a UHS-I (1.8V) transfer mode. Signed-off-by: Tanmay Kathpalia <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-10-30power: regulator: s2mps11: add support for S2MPU05 PMICKaustabh Chakraborty
Samsung's S2MPU05 PMIC is used by Exynos7870 SoC. It has 5 buck and 38 LDO regulators. Add support for this device variant in the driver. Signed-off-by: Kaustabh Chakraborty <[email protected]> Reviewed-by: Peng Fan <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-10-30power: regulator: s2mps11: declaratively define LDOs and BUCKsKaustabh Chakraborty
In the Linux kernel driver, all information related to LDO and BUCK regulators are stored in descriptive arrays. This also allows multiple variants to be supported by the same driver. Define a struct sec_regulator_desc which holds all values required by a regulator. Create an array of said struct containing all regulators. The descriptors are designed to follow a style similar to what's seen in the Linux driver, so comparing one with the other is simple. In functions such as s2mps11_{buck,ldo}_{val,mode} these values are to be used, make necessary modifications to pull them from the descriptors. Since multiple variants have varying descriptors, select them from within a switch-case block. Functions s2mps11_{buck,ldo}_{volt2hex,hex2volt} and arrays s2mps11_buck_{ctrl,out} are phased out as the calculations are now hardcoded in descriptors, thusly, it reduces clutter and enhances readability. Two macros in s2mps11.h, S2MPS11_LDO_NUM and S2MPS11_BUCK_NUM are removed as they are no longer being used. Signed-off-by: Kaustabh Chakraborty <[email protected]> Reviewed-by: Peng Fan <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-10-30power: pmic: s2mps11: add support for allowing multiple device variantsKaustabh Chakraborty
There are multiple PMICs by Samsung which are similar in architecture (register layout, interface, etc.) and is possible to be driven by a single driver. Variant specific code and data should be managed properly in the driver. And an enum which describes all supported variants. Pass the enum as the device driver data. Introduce a switch-case block on the enum for any variant specific code. Signed-off-by: Kaustabh Chakraborty <[email protected]> Reviewed-by: Peng Fan <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-10-30mmc: dw_mmc: add voltage switch command flagKaustabh Chakraborty
During a voltage switch command (CMD11, opcode: SD_CMD_SWITCH_UHS18V), certain hosts tend to stop responding to subsequent commands. This is addressed by introducing an additional command flag, DWMCI_CMD_VOLT_SWITCH. The associated interrupt bit is defined as DWMCI_INTMSK_VOLTSW. This is set high when a voltage switch is issued, this needs to be waited for and set to low. Implement the same in the timeout loop. Do note that since DWMCI_INTMSK_VOLTSW shares the same bit as DWMCI_INTMSK_HTO (bit 10), the interrupt bit needs to be polled for only if the volt switch command is issued. DWMCI_CMD_VOLT_SWITCH also needs to be set for subsequent clken commands after the volt switch. To ensure this, add a boolean member in the host private struct (herein named volt_switching), which informs if the last command issued was for volt switching or not. Signed-off-by: Kaustabh Chakraborty <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-10-30mmc: dw_mmc: export dwmci_send_cmd() and dwmci_set_ios()Kaustabh Chakraborty
These commands are required by struct dm_mmc_ops. Any platform specific driver may use some or all of the functions in their own ops. Make them accessible by moving the prototype to the dwmmc.h header. Signed-off-by: Kaustabh Chakraborty <[email protected]> Reviewed-by: Peng Fan <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-10-28x86: Rename arch/x86/include/asm/pnp_def.h to include/pnp_def.hTom Rini
There is nothing x86-centric in this include file, and moving it will allow for some drivers to be compile-tested on sandbox. Signed-off-by: Tom Rini <[email protected]>
2025-10-28mtd: Add function prototype for mtd_read_oob_bf(...)Tom Rini
The function mtd_read_oob_bf is called by cmd/nand.c but does not have a prototype in any header. Add this to include/linux/mtd/mtd.h as that is the most logical place currently. Fixes: 1fac57720719 ("nand: Add a watch command") Signed-off-by: Tom Rini <[email protected]>