summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2026-03-09pci: pcie_cdns_ti: enable PCIe root-complex mode for J784S4 SoCSiddharth Vadapalli
The PCIe Controllers on the J784S4 SoC support Root-Complex mode of operation. Hence, enable it. Signed-off-by: Siddharth Vadapalli <[email protected]> Fixes: 79f3e77133bd ("Subtree merge tag 'v6.16-dts' of dts repo [1] into dts/upstream")
2026-03-09video: stm32: dsi: add .of_to_plat callbackRaphael Gallais-Pou
Drivers should extract device-tree data before probing via the .of_to_plat hook. Implement it for stm32_dsi driver. By doing so, it also solve a variable shadowing in stm32_dsi_probe() where &clk was used as peripheral clock and ref clock. For readability some struct have been renamed such as: * struct stm32_dsi_priv *dsi -> struct stm32_dsi_priv *priv * struct clk clk -> struct clk pclk Signed-off-by: Raphael Gallais-Pou <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2026-03-09phy: rockchip: naneng-combphy: Enable U3 port for USB3OTG on RK3568Jonas Karlman
The USB OTG U3 port may have been disabled early, add support to the COMBPHY driver to re-enable the U3 port. This matches changes made in the Linux commit 7bb14b61b7d0 ("phy: rockchip: naneng-combphy: Enable U3 OTG port for RK3568"). Signed-off-by: Jonas Karlman <[email protected]> Acked-by: Quentin Schulz <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2026-03-06Merge branch 'master' of git://source.denx.de/u-boot-usb into nextTom Rini
- Change the address parsing for MUSB and another patch to add compatibles for ti,musb-am33xx and bind functions that check the dr_mode.
2026-03-06usb: musb-new: Add compatibles for ti,musb-am33xxMarkus Schneider-Pargmann (TI.com)
The upstream devicetree am33xx.dtsi does not have a "ti,am33xx-usb" compatible, it uses "ti,sysc-omap4" for the same node. The implementation of ti-musb uses a wrapper driver that binds to ti,am33xx-usb and creates new devices ti-musb-host and ti-musb-peripheral depending on the dr_mode property. To avoid this wrapper driver with the upstream devicetree, add compatibles for "ti,musb-am33xx" to both ti-musb-host and ti-musb-peripheral. Add a bind function that checks for the correct dr_mode value and rejects binding if it is not the correct driver. Reviewed-by: Mattijs Korpershoek <[email protected]> Signed-off-by: Markus Schneider-Pargmann (TI.com) <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2026-03-06usb: musb-new: Relative ctrl_mod address parsingMarkus Schneider-Pargmann (TI.com)
For the upstream DT the ctrl_mod node is using a relative register address which is not translated by the current code. Make address parsing understand relative addresses. Reviewed-by: Mattijs Korpershoek <[email protected]> Signed-off-by: Markus Schneider-Pargmann (TI.com) <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2026-03-05drivers: ufs: fix typo in struct ufs_dev_cmd kernel-docJulien Stephan
Fix "associated" typo in struct ufs_dev_cmd kernel-doc. Signed-off-by: Julien Stephan <[email protected]> Reviewed-by: Macpaul Lin <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Neil Armstrong <[email protected]>
2026-03-05drivers: ufs: add helper for phy_initialization callbackJulien Stephan
Introduce ufshcd_ops_phy_initialization() as a helper for invoking the phy_initialization callback from ufs_hba_ops. This mirrors the existing helper pattern used for other ufs_hba_ops callbacks and keeps the call sites consistent and easier to maintain. Signed-off-by: Julien Stephan <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Neil Armstrong <[email protected]>
2026-03-05drivers: ufs: handle return values of ufs_hba_ops callbacksJulien Stephan
The return values of ufshcd_ops_link_startup_notify(), ufshcd_ops_hce_enable_notify(), ufshcd_ops_init(), and ufshcd_device_reset() are currently ignored. Check and propagate these return values properly and emit appropriate error messages on error. While at it, remove the ufshcd_device_reset() wrapper, which just call ufshcd_device_reset(). Signed-off-by: Julien Stephan <[email protected]> Reviewed-by: Macpaul Lin <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Neil Armstrong <[email protected]>
2026-03-04Merge patch series "MAINTAINERS: Update ADI ADSP platform maintainers"Tom Rini
Philip Molloy <[email protected]> says: This series updates the maintainers for the ADI ADSP platform. It follows Greg's series adding support for ADI ADSP SoCs. Timesys spent years developing and maintaining Linux support for ADI ADSP SoCs. The maintenance contract has ended and ADI has brought that effort in-house. Additionally, Timesys was acquired by another company. Thanks to everyone at Timesys for all of their hard work over the years! Link: https://lore.kernel.org/r/[email protected]
2026-03-04treewide: Remove Timesys from ADI ADSP maintenancePhilip Molloy
After years of developing the ADI ADSP platform, Timesys was purchased by another company and is no longer contracted to maintain the platform. Signed-off-by: Philip Molloy <[email protected]> Reviewed-by: Greg Malysa <[email protected]>
2026-03-04Merge tag 'u-boot-ufs-20260304' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-ufs A few fixes/missing changes for UFS: - remove unused ufs_post_bind() declaration - Disable UTP command timeout in slow mode - Missing MediaTek UFS PHY Driver to be used with the UFS driver
2026-03-03Merge tag 'u-boot-dfu-next-20260303' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-dfu into next u-boot-dfu-next-20260303 CI: https://source.denx.de/u-boot/custodians/u-boot-dfu/-/pipelines/29417 Fastboot: * mmc: make boot partition offset configurable for bootloader offsets * arch: imx8qxp: Override weak fb_mmc_get_boot_offset
2026-03-03drivers: cpu: fix syntax error in Kconfig documentationHugo Villeneuve
Replace then -> they so that the sentence makes sense. Signed-off-by: Hugo Villeneuve <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2026-03-03dm: core: Don't allow ofnode_to_fdt() to return NULLRomain Gantois
The ofnode_to_fdt() function may return a NULL pointer in multiple cases. Or, this function's return value is often passed directly to functions such as fdt_getprop() which end up dereferencing it, thus causing a NULL pointer exception. Don't allow ofnode_to_fdt() to return NULL, to avoid a NULL pointer dereference. Reviewed-by: Raphaël Gallais-Pou <[email protected]> Signed-off-by: Romain Gantois <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2026-03-03usb: gadget: Mark udc_disconnect as staticTom Rini
With the last external callers of udc_disconnect long removed, mark this function as static now and remove it from headers. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2026-03-02drivers: ufs: remove unused ufs_post_bind() declarationJulien Stephan
Commit 067c1b033282 ("ufs: Call ufs_scsi_bind() from uclass .post_bind") inlined ufs_scsi_bind() into ufs_post_bind() as trivial device_bind_driver() call. ufs_scsi_bind() is no longer referenced anywhere in the codebase, so drop its declaration from include/ufs.h. Drivers used to include <ufs.h> to include prototype of ufs_scsi_bind() function, so we can now safely remove such includes. Fixes: 067c1b033282 ("ufs: Call ufs_scsi_bind() from uclass .post_bind") Signed-off-by: Julien Stephan <[email protected]> Reviewed-by: Neil Armstrong <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Neil Armstrong <[email protected]>
2026-03-02phy: Add MediaTek UFS PHY DriverIgor Belwon
This UFS M-PHY driver can be used on recent MediaTek SoCs as the primary PHY for the UFS controller. Signed-off-by: Igor Belwon <[email protected]> Link: https://patch.msgid.link/20251011-mtk-ufs-uboot-v1-1-a05f991ee150@mentallysanemainliners.org Signed-off-by: Neil Armstrong <[email protected]>
2026-03-02ufs: Disable UTP command timeout in slow modePadmarao Begari
When the UFS controller is operating in slow (PWM) mode, the driver is disabled the timeout for UTP send commands. In high-speed mode, the timeout remains enabled to detect stalled or failed transfers. This change ensures reliable operation in slow mode, where command completion may take longer and timeouts are not required. Signed-off-by: Padmarao Begari <[email protected]> Signed-off-by: Michal Simek <[email protected]> Reviewed-by: Neil Armstrong <[email protected]> Link: https://patch.msgid.link/e6deb9086afab9d2bdd53db8ecbc7db93af5204d.1764169598.git.michal.simek@amd.com Signed-off-by: Neil Armstrong <[email protected]>
2026-02-28pinctrl: nxp: imx9: Guard pinctrl match table with CONFIG_IMX9[X]Peng Fan
The i.MX9 pinctrl match table currently lists all SoC compatibles unconditionally, which may lead to unused entries being included when building for specific SoC variants. Guard each compatible entry with the corresponding CONFIG_IMX9[X] option so only the required SoC entries are compiled in, which reduces unnecessary data. Signed-off-by: Peng Fan <[email protected]>
2026-02-28pinctrl: nxp: imx91: Support print pin muxingPeng Fan
Add support for printing pin names and current mux configuration on i.MX91 when CMD_PINMUX is enabled by adding full pin descriptor table for i.MX91 pads. Signed-off-by: Peng Fan <[email protected]>
2026-02-28pinctrl: nxp: imx93: Support print pin muxingPeng Fan
Add support for printing pin names and current mux configuration on i.MX93 when CMD_PINMUX is enabled. - A full pin descriptor table for i.MX93 pads. - Implementation of get_pins_count(), get_pin_name(), and get_pin_muxing() in the i.MX9 pinctrl driver. There is no good way to add real mux names, so just dump the function ID from the mux register. Signed-off-by: Peng Fan <[email protected]>
2026-02-28pinctrl: nxp: imx93: Rename to imx9Peng Fan
We are going to add pinctrl data support for both i.MX93 and i.MX91. Since these SoCs share the same pinctrl driver structure, rename pinctrl-imx93.c to a more generic pinctrl-imx9.c and update all related variable and function names accordingly. This prepares the driver for supporting additional i.MX9 family SoCs. Signed-off-by: Peng Fan <[email protected]>
2026-02-28pinctrl: nxp: imx8m: Guard pinctrl match table with CONFIG_IMX8M[X]Peng Fan
The i.MX8M pinctrl match table currently lists all SoC compatibles unconditionally, which may lead to unused entries being included when building for specific SoC variants. Guard each compatible entry with the corresponding CONFIG_IMX8M[X] option so only the required SoC entries are compiled in, which reduces unnecessary data. Signed-off-by: Peng Fan <[email protected]>
2026-02-28pinctrl: nxp: imx8mq: Support print pin muxingPeng Fan
Add support for printing pin names and current mux configuration on i.MX8MQ when CMD_PINMUX is enabled by adding full pin descriptor table for i.MX8MQ pads. Signed-off-by: Peng Fan <[email protected]>
2026-02-28pinctrl: nxp: imx8mm: Support print pin muxingPeng Fan
Add support for printing pin names and current mux configuration on i.MX8MM when CMD_PINMUX is enabled by adding full pin descriptor table for i.MX8MM pads. Signed-off-by: Peng Fan <[email protected]>
2026-02-28pinctrl: nxp: imx8mn: Support print pin muxingPeng Fan
Add support for printing pin names and current mux configuration on i.MX8MN when CMD_PINMUX is enabled by adding full pin descriptor table for i.MX8MN pads. Signed-off-by: Peng Fan <[email protected]>
2026-02-28pinctrl: nxp: imx8mp: Support print pin muxingPeng Fan
Add support for printing pin names and current mux configuration on i.MX8MP when CMD_PINMUX is enabled. - imx_pinctrl_pin_desc structure and PINCTRL_PIN()/IMX_PINCTRL_PIN() helpers for defining pin descriptors. - A full pin descriptor table for i.MX8MP pads. - Implementation of get_pins_count(), get_pin_name(), and get_pin_muxing() in the i.MX8M pinctrl driver. There is no good way to add real mux names, so just dump the function ID from the mux register. Signed-off-by: Peng Fan <[email protected]>
2026-02-28pinctrl: nxp: Kconfig: Typo fixPeng Fan
PINCTRL_IMX93 is for i.MX9[3,1], not for i.MX8M, correct the typo. Signed-off-by: Peng Fan <[email protected]>
2026-02-28mmc: fsl_esdhc_imx: Skip voltage switching for fixed 1.8V regulatorKory Maincent
When using a fixed 1.8V regulator for vqmmc (indicated by vs18_enable), attempting to change the voltage produces spurious errors since the regulator cannot be adjusted. The driver currently attempts the voltage change, receives -ENOSYS from the regulator subsystem, and reports: Setting to 1.8V error: -38 esdhc_set_voltage error -5 Fix this by checking vs18_enable early in esdhc_set_voltage() and returning -ENOTSUPP for all voltage switch requests, not just 3.3V. This prevents unnecessary regulator operations and eliminates the error messages when the hardware is correctly configured with a fixed 1.8V supply. Signed-off-by: Kory Maincent <[email protected]>
2026-02-28video: imx: ipuv3: use clock frameworkBrian Ruley
Clocks are now configurable via the common clock framework, however, users have the option use the legacy clocks if desired. The intent is to keep the changes minimal for this old SoC. Signed-off-by: Brian Ruley <[email protected]>
2026-02-28video: imx: ipuv3: move clock code to legacyBrian Ruley
In preparation for CCF migration for IPUv3 separate existing clock code to legacy files. These will be used by i.MX5 that currently does not support the CCF. No functional change. Signed-off-by: Brian Ruley <[email protected]>
2026-02-28pwm: pwm-imx: enable ipg or per clks only if CONFIG_CLK enabledBrian Ruley
This caused linker errors in cases where IPUv3 was enabled (which defines its own clocks). Fixes: bfc778cb93a ("driver: pwm: pwm-imx: get and enable per/ipg clock using dm") Signed-off-by: Brian Ruley <[email protected]>
2026-02-28clk: imx6q: add ipu and ldb clocks and dependenciesBrian Ruley
This is required for the IPUv3 driver to migrate to CCF, changes are largely based on the Linux kernel equivalent. Add new gate2_flags function (also present in the Linux code) to set required flags. Add usboh clock to get rid of error. Signed-off-by: Brian Ruley <[email protected]>
2026-02-28clk: imx6q: apply clang-formatBrian Ruley
Reduces the number of checkpatch warnings in the following commits. Signed-off-by: Brian Ruley <[email protected]>
2026-02-28imx: scu_api: implement sc_misc_get_boot_typeHeiko Schocher
add function sc_misc_get_boot_type() which returns the boot type. Signed-off-by: Heiko Schocher <[email protected]> Signed-off-by: Walter Schweizer <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2026-02-26iommu: Validate device tree node in dev_iommu_enablePeng Fan
Similar to pinctrl_select_state(), add dev_has_ofnode() check before doing the real work. Device(scmi_base.0) does not have a real device node, ofnode_null() is assigned as the device tree node for scmi base protocol device: 'commit 7eb4eb541c14 ("firmware: scmi: install base protocol to SCMI agent")' However with recent update in 'commit 0535e46d55d7 ("scripts/dtc: Update to upstream version v1.7.2-35-g52f07dcca47c")', SPL panic in fdt_check_node_offset_()->fdt_next_tag(), because offset is -1 and SPL_OF_LIBFDT_ASSUME_MASK is 0xFF. So need to validate device tree node. Reported-by: Ye Li <[email protected]> Closes: https://lore.kernel.org/u-boot/[email protected]/ Signed-off-by: Peng Fan <[email protected]>
2026-02-26power: domain: Validate device tree node in dev_power_domain_ctrlPeng Fan
Similar to pinctrl_select_state(), add dev_has_ofnode() check before doing the real work. Device(scmi_base.0) does not have a real device node, ofnode_null() is assigned as the device tree node for scmi base protocol device: 'commit 7eb4eb541c14 ("firmware: scmi: install base protocol to SCMI agent")' However with recent update in 'commit 0535e46d55d7 ("scripts/dtc: Update to upstream version v1.7.2-35-g52f07dcca47c")', SPL panic in fdt_check_node_offset_()->fdt_next_tag(), because offset is -1 and SPL_OF_LIBFDT_ASSUME_MASK is 0xFF. So need to validate device tree node. Reported-by: Ye Li <[email protected]> Closes: https://lore.kernel.org/u-boot/[email protected]/ Signed-off-by: Peng Fan <[email protected]>
2026-02-26firmware: scmi: Validate device tree node before setup channelPeng Fan
SCMI base protocol device does not have a device tree, it should use and need to use the agent base channel. For scmi_base.[x], there is no real device tree node for it. ofnode_null() is assigned as the device tree node for scmi base protocol device: commit 7eb4eb541c14 ("firmware: scmi: install base protocol to SCMI agent") However with recent update in commit 0535e46d55d7 ("scripts/dtc: Update to upstream version v1.7.2-35-g52f07dcca47c"), SPL panic in fdt_check_node_offset_()->fdt_next_tag(), because offset is -1 and SPL_OF_LIBFDT_ASSUME_MASK is 0xFF. So add a check in x_get_channel() to validate the protocol devices' ofnode. Reported-by: Ye Li <[email protected]> Closes: https://lore.kernel.org/u-boot/[email protected]/ Signed-off-by: Peng Fan <[email protected]>
2026-02-26mmc: mtk-sd: add mediatek,mt8189-mmc compatibleDavid Lechner
Add support for MediaTek MT8189 MMC controller. According to [1], this is similar to, but not quite the same as mediatek,mt8196-mmc. Link: https://lore.kernel.org/linux-mediatek/[email protected]/ [1] Signed-off-by: David Lechner <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-02-25Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-samsungTom Rini
- Assorted platform and video driver updates
2026-02-25power: regulator: Kconfig: add SPL_DM_REGULATOR_FAN53555Heinrich Schuchardt
Symbol CONFIG_SPL_DM_REGULATOR_FAN53555 is selected by SPL_DM_PMIC_FAN53555 and used in a Makefile. But the symbol definition is missing. Add the missing configuration symbol. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Peng Fan <[email protected]> Reviewed-by: Quentin Schulz <[email protected]> Reviewed-by: Tom Rini <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-02-25power: pmic: mtk-pwrap: add MediaTek PMIC Wrapper driverJulien Masson
Add support for the PMIC wrapper (pwrap) IP block found on MediaTek MT8365 and similar SoCs. On these SoCs the PMIC is connected via SPI. The SPI controller is not directly visible to the CPU, but only through the PMIC wrapper inside the SoC. Signed-off-by: Julien Masson <[email protected]> Co-developed-by: Macpaul Lin <[email protected]> Signed-off-by: Macpaul Lin <[email protected]> Co-developed-by: Bo-Chen Chen <[email protected]> Signed-off-by: Bo-Chen Chen <[email protected]> Signed-off-by: David Lechner <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-02-25power: regulator: mt6359: add driver for MT6359PBo-Chen Chen
Add a new regulator driver for MT6359P and similar PMIC chips. The MT6359P is a eco version for MT6359 regulator. For the MT8391 platform, we use the MT6359P (MT6365) as the main PMIC. The MT6359 and MT6359P have different register maps. Therefore, on the MT8391 platform, we only provide support for the MT6359P. If support for the MT6359 PMIC it can be added later. Signed-off-by: Bo-Chen Chen <[email protected]> Signed-off-by: David Lechner <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-02-25power: regulator: add MediaTek MT6357 driverJulien Masson
Add a driver for the power regulators of the MediaTek MT6357 PMIC chip. Signed-off-by: Julien Masson <[email protected]> Co-developed-by: Macpaul Lin <[email protected]> Signed-off-by: Macpaul Lin <[email protected]> Signed-off-by: David Lechner <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-02-25phy: samsung: add support for exynos7870 USB PHYKaustabh Chakraborty
The USB PHY used by the Exynos7870 SoC has a single USB 2.0 interface. Add its dedicated variant enum, compatible, and init/exit functions. The PHY enable bit of Exynos7870's PHY is different in contrast to that of Exynos850 and most Exynos PHYs. To allow this change, a simple if condition is added in exynos_usbdrd_phy_isol() which changes the bitmask. Since the variant enum is required, the function argument is changed to accept the driver data itself. Reviewed-by: Mattijs Korpershoek <[email protected]> Signed-off-by: Kaustabh Chakraborty <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2026-02-25phy: samsung: add enum for variants based on SoCsKaustabh Chakraborty
The variant enum is used to uniquely identify which SoC the PHY block belongs to. It is initially set in the match table, along with the compatible string, it gets copied to driver data struct during probe. SoC specific functions must only be called if the respective variant enum is set. Add switch-case blocks wherever required. Reviewed-by: Mattijs Korpershoek <[email protected]> Signed-off-by: Kaustabh Chakraborty <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2026-02-24reset: stm32mp21: add stm32mp21 reset driverPatrice Chotard
Implement STM32MP21 reset drivers using stm32-core-reset API. Signed-off-by: Gabriel Fernandez <[email protected]> Signed-off-by: Patrice Chotard <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2026-02-24clk: stm32mp21: Add clock driver supportPatrice Chotard
Add clock driver support for STM32MP21 SoCs. Signed-off-by: Nicolas Le Bayon <[email protected]> Signed-off-by: Patrice Chotard <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2026-02-24pinctrl: pinctrl_stm32: prevent the use of the secure protected pinsFabien Dessenne
The hardware denies any access from the U-Boot non-secure world to the secure-protected pins. Hence, prevent any driver to configure such a pin. Identify the secure pins with "NO ACCESS" through the 'pinmux status -a' command. Use a driver data structure to identify which hardware versions support this feature. Signed-off-by: Fabien Dessenne <[email protected]> Signed-off-by: Patrice Chotard <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>