summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2026-02-03mtd: rawnand: sunxi: merge register definitions for sunxi_nand{, _spl}.cRichard Genoud
Merge common register definitions from sunxi_nand{,_spl}.c The Allwinner NAND controller registers where in both files, so let's just merge all that in a header, it will be easier for maintenance. NB: the defines are also harmonized with Linux driver No functional change Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Richard Genoud <[email protected]> Signed-off-by: Michael Trimarchi <[email protected]>
2026-02-03mtd: rawnand: sunxi: remove usage of struct sunxi_ccm_regRichard Genoud
The sunxi_ccm_reg is legacy, drop its usage from nand related code For that, CCU_NAND0_CLK_CFG and CCU_AHB_GATE1 are added to the clock files when missing. And clock code in sunxi_nand{,_spl}.c and board.c are changed to use the new scheme. Moreover, drop AHB_DIV_1 in favor of the more readable CCM_NAND_CTRL_M/N Suggested-by: Andre Przywara <[email protected]> Signed-off-by: Richard Genoud <[email protected]> Signed-off-by: Michael Trimarchi <[email protected]>
2026-02-03mtd: rawnand: sunxi_spl: cosmetic: use definitions from linux/mtd/rawnand.hRichard Genoud
Remove unneeded definitions NFC_CMD_R* in sunxi_nand_spl.c No need to define NFC_CMD_RNDOUTSTART, NFC_CMD_RNDOUT and NFC_CMD_READSTART here since they are already in linux/mtd/rawnand.h Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Richard Genoud <[email protected]> Signed-off-by: Michael Trimarchi <[email protected]>
2026-02-03mtd: rawnand: sunxi_spl: harmonize register defines with non spl fileRichard Genoud
Harmonize registers definition in sunxi_nand{,_spl}.c files This is a first step to then include the same file from both sunxi_nand{,_spl}.c files Unused defines are also removed Signed-off-by: Richard Genoud <[email protected]> Signed-off-by: Michael Trimarchi <[email protected]>
2026-02-03mtd: rawnand: sunxi_spl: fix pointer from integer without a castRichard Genoud
Fix pointer from interget warning when compiling for ARM64 When compiling for arm64, we get this error: error: passing argument 2 of ‘__memcpy_fromio’ makes pointer from integer without a cast [-Wint-conversion] Moreover the copy should be made with dedicated readl(), like for any register access on this peripheral, since they are 32bit wide. So, instead of memcpy_fromio(), just use a readl() loop. Introduce nand_readlcpy() to implement this loop. Fixes: 6ddbb1e936c7 ("spl: nand: sunxi: use PIO instead of DMA") Suggested-by: Andre Przywara <[email protected]> Signed-off-by: Richard Genoud <[email protected]> Signed-off-by: Michael Trimarchi <[email protected]>
2026-02-03mtd: rawnand: sunxi: cosmetic: remove needless commentRichard Genoud
Remove 'complete' member from struct sunxi_nfc The 'complete' member isn't part of the structure, let's remove it. Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Richard Genoud <[email protected]> Signed-off-by: Michael Trimarchi <[email protected]>
2026-02-03mmc: Fix typos in comments and debug messagesTanmay Kathpalia
Fix the following typos in drivers/mmc/mmc.c: - "neiter" -> "neither" in __mmc_switch() comment - "witdh" -> "width" in bus_width() warning message - "enver" -> "never" in mmc_select_mode_and_width() comment Signed-off-by: Tanmay Kathpalia <[email protected]> Reviewed-by: Peng Fan <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-02-03mmc: mediatek: add DMA mode supportht.lin
Implement DMA support in the MediaTek MMC driver to enhance data transfer speed. - Define DMA control and configuration registers - Implement functions for starting, stopping, and completing DMA transfers - Modify data transfer logic to utilize DMA when enabled - Ensure proper cache management during DMA operations Signed-off-by: Wenbin Mei <[email protected]> Signed-off-by: ht.lin <[email protected]> Signed-off-by: Julien Masson <[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-03mmc: mtk-sd: fix misaligned braceDavid Lechner
Indent a brace for proper code style. Signed-off-by: David Lechner <[email protected]> Reviewed-by: Macpaul Lin <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-02-03mmc: mtk-sd: use GENMASK and FIELD macrosDavid Lechner
Replace separate mask and shift definitions with GENMASK and FIELD_* macros for better readability and maintainability. All macros ending in _M have the suffix dropped. The value remains the same but is now generated with GENMASK. All macros ending in _S are removed and their uses replaced with FIELD_PREP and FIELD_GET macros. Signed-off-by: David Lechner <[email protected]> Reviewed-by: Macpaul Lin <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-02-03video: nexell: unsigned parameter cannot be negativeAndrew Goodbody
The parameter 'alpha' is declared as an unsigned type so cannot be negative. The code to test it as being less than zero will always fail and so is redundant and should be removed. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]> Reviewed-by: Stefan Bosch <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2026-02-02Merge patch series "m68k: Add support for QEMU virt machine"Tom Rini
Kuan-Wei Chiu <[email protected]> says: Add support for the QEMU 'virt' machine on the m68k architecture. The QEMU virt machine models a generic system utilizing Goldfish virtual peripherals and is capable of emulating various classic 68k CPUs. Currently, U-Boot's m68k architecture support focuses on ColdFire variants. This series expands support to include the classic M680x0 architecture, implementing the necessary exception vectors, startup code, and a bootinfo parser compatible with the QEMU interface. Drivers for Goldfish peripherals (TTY, Timer, RTC) and the QEMU Virtual System Controller (sysreset) are also added to enable serial console, timekeeping, and system reset functionality. The implementation has been verified on QEMU targeting the M68040 CPU, confirming successful hardware initialization and boot to the U-Boot command shell. Additionally, the CI configuration was verified locally using gitlab-ci-local "qemu_m68k_virt test.py", resulting in PASS qemu_m68k_virt test.py. Link: https://lore.kernel.org/r/[email protected] [trini: Re-sort MAINTAINERS entries] Signed-off-by: Tom Rini <[email protected]>
2026-02-02sysreset: Add QEMU virtual system controller driverKuan-Wei Chiu
Introduce a new sysreset driver for the QEMU Virtual System Controller. This device is found on QEMU "virt" machines (such as the m68k virt target) and provides a mechanism to trigger system reset and power-off events. The driver maps U-Boot sysreset types to the corresponding controller commands: - SYSRESET_WARM / SYSRESET_COLD -> VIRT_CTRL_CMD_RESET - SYSRESET_POWER_OFF -> VIRT_CTRL_CMD_HALT Signed-off-by: Kuan-Wei Chiu <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2026-02-02rtc: goldfish: Support platform data for non-DT probingKuan-Wei Chiu
Currently, the Goldfish RTC driver exclusively relies on device tree to retrieve the base address, failing immediately if dev_read_addr() returns FDT_ADDR_T_NONE. This restriction prevents the driver from being used on platforms that instantiate devices via U_BOOT_DRVINFO() instead of device tree, such as the QEMU m68k virt machine. Add support for platform data to address this limitation. Introduce a new .of_to_plat hook to handle device tree parsing and populate the platform data. Update the probe function to rely exclusively on this platform data, enabling support for both Device Tree and manual instantiation. Introduce a new header file include/goldfish_rtc.h to define the platform data structure. Signed-off-by: Kuan-Wei Chiu <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2026-02-02timer: Add Goldfish timer driverKuan-Wei Chiu
Add support for the Goldfish timer driver. This driver utilizes the Goldfish RTC hardware to provide a nanosecond-resolution timer. This virtual device is commonly found in QEMU virtual machines (such as the m68k virt machine) and Android emulators. The driver implements the standard U-Boot timer UCLASS interface, exposing a 64-bit monotonically increasing counter with a 1GHz clock rate derived from the RTC registers. Signed-off-by: Kuan-Wei Chiu <[email protected]> Tested-by: Daniel Palmer <[email protected]> Reviewed-by: Yao Zi <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Angelo Dureghello <[email protected]>
2026-02-02serial: Add Goldfish TTY driverKuan-Wei Chiu
Add support for the Google Goldfish TTY serial device. This virtual device is commonly used in QEMU virtual machines (such as the m68k virt machine) and Android emulators. The driver implements basic console output and input polling using the Goldfish MMIO interface. Signed-off-by: Kuan-Wei Chiu <[email protected]> Reviewed-by: Yao Zi <[email protected]> Tested-by: Daniel Palmer <[email protected]> Acked-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]> Acked-by: Angelo Dureghello <[email protected]>
2026-02-02video: exynos: node variable should not be unsignedAndrew Goodbody
THe variable 'node' is assigned a value of an int, tested for being less than or equal to zero then passed as an argument to a function that takes an int so 'node' should not be unsigned. Fix it. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]>
2026-01-30usb: gadget: dwc2: Move dr_mode check from of_to_plat() to bind()Jonas Karlman
Rockchip RK3288 and RK3506 contain two DWC2 USB controllers, typically one controller use dr_mode=otg and the other one use dr_mode=host. With USB_GADGET_DWC2_OTG, DM_USB_GADGET and USB_DWC2 enabled this result in the dwc2-udc-otg driver binding to both controllers, however only one will probe due to use of dr_mode=host on the other one. After the commit 6668b8e7cc68 ("dm: core: Support multiple drivers with same compatibles") it is possible to bind one controller to the dwc2-udc-otg driver and the other one to the dwc2_usb driver. Move the dr_mode check from of_to_plat() to bind() to allow dm core to bind the dwc2 host driver to dr_mode=host controllers. Before this: => dm tree ... usb_gadget 0 [ ] dwc2-udc-otg | |-- usb@ff740000 usb_gadget 1 [ ] dwc2-udc-otg | |-- usb@ff780000 => usb start starting USB... No USB controllers found After this: dwc2-udc-otg usb@ff780000: Invalid dr_mode 1 => dm tree ... usb_gadget 0 [ ] dwc2-udc-otg | |-- usb@ff740000 usb 0 [ ] dwc2_usb | |-- usb@ff780000 => usb start starting USB... USB DWC2 Bus usb@ff780000: 1 USB Device(s) found Signed-off-by: Jonas Karlman <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Reviewed-by: Marek Vasut <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2026-01-30usb: dwc3: core: improve reset sequenceChris Morgan
According to Synopsys Databook, we shouldn't be relying on GCTL.CORESOFTRESET bit as that's only for debugging purposes. Instead, let's use DCTL.CSFTRST if we're OTG or PERIPHERAL mode. Host side block will be reset by XHCI driver if necessary. Note that this reduces amount of time spent on dwc3_probe() by a long margin. We're still gonna wait for reset to finish for a long time (default to 1ms max), but tests show that the reset polling loop executed at most 19 times (modprobe dwc3 && modprobe -r dwc3 executed 1000 times in a row). Note that this patch was submitted to Linux in 2016 [1], however I can confirm it is needed to support gadget mode in U-Boot on my device. While I am referencing this patch from Linux I am in fact taking the full existing dwc3_core_soft_reset() function from Linux as it exists in v6.19-rc5, so it may differ slightly from the information in the 2016 patch. [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/patch/drivers/usb/dwc3?id=f59dcab176293b646e1358144c93c58c3cda2813 Suggested-by: Mian Yousaf Kaukab <[email protected]> Signed-off-by: Felipe Balbi <[email protected]> Signed-off-by: Chris Morgan <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2026-01-30usb: dwc3: gadget: Don't send unintended link state changeChris Morgan
DCTL.ULSTCHNGREQ is a write-only field. When doing a read-modify-write to DCTL, the driver must make sure that there's no unintended link state change request from whatever is read from DCTL.ULSTCHNGREQ. Set link state change to no-action when the driver writes to DCTL. Note that this patch was submitted upstream in Linux in 2020 [1], and I've confirmed I need it in U-Boot to enable gadget mode. [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/patch/drivers/usb/dwc3?id=5b738211fb59e114727381d07c647a77c0010996 Signed-off-by: Thinh Nguyen <[email protected]> Signed-off-by: Chris Morgan <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2026-01-30usb: dwc3: Increase DWC3 controller halt timeoutChris Morgan
Since EP0 transactions need to be completed before the controller halt sequence is finished, this may take some time depending on the host and the enabled functions. Increase the controller halt timeout, so that we give the controller sufficient time to handle EP0 transfers. This patch was originally submitted to Linux in 2022, but is required to use USB gadget mode on my device in U-Boot. [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=461ee467507cb98a348fa91ff8460908bb0ea423 Signed-off-by: Wesley Cheng <[email protected]> Signed-off-by: Chris Morgan <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2026-01-30usb: dwc3: core: Add ip and version_type support from LinuxChris Morgan
Add support for the ip and version_type fields from the Linux version of the dwc3 driver. Included in this is support for a few additional macros in the header from Linux as well. Signed-off-by: Chris Morgan <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2026-01-29video: correct label for cyclic video_idleHeinrich Schuchardt
When the cyclic function video_idle() takes too long, a message like the following is displayed: cyclic function video_init took too long: 87707us vs 5000us max The text "video_init" is misleading. Replace it by "video_idle". Reviewed-by: Tom Rini <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2026-01-29Merge tag 'u-boot-stm32-20260129' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-stm - spi: stm32: OSPI and QSPI optimization - Update stm32 clock drivers to restore boot for STM32MP13/STM32MP2 board family - Add bootph-all in ltdc node in stm32mp257f-ev1-u-boot - Use CONFIG_STM32MP15X to discern STM32MP15xx on DH STM32MP15xx DHSOM - Reinstate missing SPL configs for DH STM32MP15xx DHSOM - stm32mp2 boards: read boot index from backup register - video: simple_panel: add support for "rocktech,rk043fn48h" display - Add .of_to_plat callback in stm32_ltdc driver
2026-01-29misc: Keep FSL_IFC available on PowerPC as wellTom Rini
This symbol is used on a number of PowerPC platforms as well, so make it available there again. Fixes: 424b324165ea ("armv7: Add CPLD support via IFC to the ls1021a-iot board.") Acked-by: Peng Fan <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2026-01-29video: simple_panel: add support for "rocktech,rk043fn48h" displayRaphael Gallais-Pou
Add the compatible "rocktech,rk043fn48h" for simple-panel driver. Signed-off-by: Raphael Gallais-Pou <[email protected]> Reviewed-by: Patrice Chotard <[email protected]>
2026-01-29video: stm32: ltdc: 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_ltdc driver. No functional change. Signed-off-by: Raphael Gallais-Pou <[email protected]> Reviewed-by: Patrice Chotard <[email protected]>
2026-01-29clk: stm32: Update clock management for STM32MP13/25Patrice Chotard
During clock's registration, clock's name are used to establish parent - child relation. On STM32MP13 and STM32MP25, most of SCMI clocks are parent clocks. Since commit fdb1bffe2827 ("clk: scmi: Postpone clock name resolution"), all scmi clocks are named by default "scmi-%zu" until they are enabled, it breaks clocks registration and boot process for STM32MP13/25 platforms. Rework the STM32 core clock driver and STM32MP13/25 clock description to use clock index instead of their real name. Introduce struct clk_parent_data which allows to identify parent clock either by index or by name. Name is only used for particular clocks provided by IP which are clock provider as i2s/i2s_ckin, usb0/ck_usbo_48m, and ltdc/ck_ker_ltdc. STM32_GATE() and STM32_COMPOSITE_NOMUX macros are updated in order to use parent clock index. As STM32MP13 supports both SPL and SCMI boot, keep using an array with clock's name for SPL. Fixes: fdb1bffe2827 ("clk: scmi: Postpone clock name resolution") Reviewed-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2026-01-29clk: stm32mp13: Reorder include filesPatrice Chotard
Reorder include following rules available here : https://docs.u-boot.org/en/latest/develop/codingstyle.html#include-files Reviewed-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2026-01-29spi: stm32-qspi: Optimize FIFO accesses using u16 or u32Patrice Chotard
FIFO accesses uses u8 only for read/write. In order to optimize throughput, add u16 or u32 read/write accesses when possible. Set FIFO threshold level value accordingly. Test performed by writing and reading 64MB on sNOR on stm32mp157c-ev1 board: before after ratio Write : 428 KB/s 719 KB/s +68% Read : 520 KB/s 3200 KB/s +615% Reviewed-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2026-01-29spi: stm32-qspi: Increase read throughput in indirect modePatrice Chotard
When WATCHDOG_RESET() was replaced by schedule() in commit 29caf9305b6f ("cyclic: Use schedule() instead of WATCHDOG_RESET()") we not only reset the watchdog but also call the cyclic infrastructure which takes time and has impact on read accesses performances. Move schedule() from _stm32_qspi_read_fifo() to _stm32_qspi_poll() and call schedule() only every 1MB chunk of data. Test performed by reading 64MB on sNOR on stm32mp157c-ev1 board: before after ratio Read : 201 KB/s 520KB/s +258% Reviewed-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2026-01-29spi: stm32-ospi: Increase read throughput in indirect modePatrice Chotard
Schedule() is called every u8/u16 or u32 read accesses which is overkill. Move schedule() from stm32_ospi_read_fifo() to stm32_ospi_tx_poll() and call schedule() only every 1MB chunk of data. Test performed by reading 64MB on sNOR on stm32mp257f-ev1 board: before after ratio Read : 10.6MB/s 14.2MB/s +34% Reviewed-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2026-01-28Merge patch series "Add pinctrl driver for mt8188"Tom Rini
Julien Stephan <[email protected]> says: The driver is based on the kernel driver for mt8188. While at it, also add pinmux_property_set ops for mediatek pinctrl framework. Link: https://lore.kernel.org/r/20260122-add-mt8188-pinctrl-support-v2-0-324b4c8f2b64@baylibre.com
2026-01-28pinctrl: mediatek: add pinmux_property_set ops supportVitor Sato Eschholz
Add pinmux_property_set ops for mediatek pinctrl framework Signed-off-by: Julien Masson <[email protected]> Signed-off-by: Vitor Sato Eschholz <[email protected]> Signed-off-by: Julien Stephan <[email protected]> Reviewed-by: Macpaul Lin <[email protected]> Tested-by: David Lechner <[email protected]>
2026-01-28pinctrl: mediatek: Add pinctrl driver for MT8188 SoCChris-QJ Chen
Add pinctrl driver for mt8188. The driver is based on the kernel driver. Signed-off-by: Chris-QJ Chen <[email protected]> Signed-off-by: Jill.Wu <[email protected]> Signed-off-by: Vitor Sato Eschholz <[email protected]> Signed-off-by: Julien Stephan <[email protected]> Reviewed-by: Macpaul Lin <[email protected]>
2026-01-28Merge patch series "dm: core: Support same compatible in host/gadget musb ↵Tom Rini
drivers" Markus Schneider-Pargmann (TI.com) <[email protected]> says: musb currently uses a wrapper driver that binds on the parent device of the actual musb devices to manage the differentiation between gadget and host modes. However in the upstream devicetree this parent devicetree node can not be used to match the wrapper driver. To be able to probe the musb devices in host/gadget mode directly, this series introduces support for returning -ENODEV in bind functions resulting in iterating the remaining drivers potentially binding to other drivers that match the compatible. Link: https://lore.kernel.org/r/20260127-topic-musb-probing-v2026-01-v4-0-ea3201e0f809@baylibre.com
2026-01-28dm: core: lists_bind_fdt: Indent continuation debug log messageMarkus Schneider-Pargmann (TI)
The loop in lists_bind_fdt uses an indented style for log messages within the loop and normal messages for errors that lead to the exit of the function. Due to the change of the previous patch that adds support for continuation on -ENODEV returned by bind, the log message should be indented. Signed-off-by: Markus Schneider-Pargmann (TI) <[email protected]>
2026-01-28dm: core: Support multiple drivers with same compatiblesMarkus Schneider-Pargmann (TI.com)
Currently once a driver matched the compatible string of a device, other drivers are ignored. If the first matching driver returns -ENODEV, no other possibly matching drivers are iterated with that compatible of the device. Instead the next compatible in the list of compatibles is selected, assuming only one driver matches one compatible at a time. To be able to use the bind function to return -ENODEV and continue matching other drivers with the same compatible, move the for loop a bit to continue the for loop after -ENODEV was returned. The loop had to be adjusted a bit to still support the 'drv' argument properly. Some simplifications were done as well. The modification will only add additional loop iterations if -ENODEV is returned. Otherwise the exit and continue conditions for the loop stay the same and do not cause any additional iterations and should not impact performance. This is required for ti-musb-host and ti-musb-peripheral which both match on the same device but differ based on the dr_mode DT property. Depending on this property, the driver is either UCLASS_USB or UCLASS_USB_GADGET_GENERIC. By checking the DT property in the bind function and returning -ENODEV the other driver can probe instead. Reviewed-by: Simon Glass <[email protected]> Acked-by: Dinesh Maniyam <[email protected]> Signed-off-by: Markus Schneider-Pargmann (TI.com) <[email protected]>
2026-01-28dm: core: lists_bind_fdt: Replace found variableMarkus Schneider-Pargmann (TI.com)
'found' is only used at the end of the function to print a debug message. No need to maintain a variable if we can just return 0 immediately when a driver was bound successfully. Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Signed-off-by: Markus Schneider-Pargmann (TI.com) <[email protected]>
2026-01-28dm: core: lists_bind_fdt: Remove unused variableMarkus Schneider-Pargmann (TI.com)
'result' is unused in this function, remove it. Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Signed-off-by: Markus Schneider-Pargmann (TI.com) <[email protected]>
2026-01-28Merge tag 'fsl-qoriq-for-2026.04-rc2' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-fsl-qoriq - Rename freescale to nxp - Add CPLD support via IFC to the ls1021a-iot board - Use scmi_clk_state_in_v2 in sandbox
2026-01-28firmware: scmi: sandbox: Use scmi_clk_state_in_v2Peng Fan
The sandbox scmi clock protocol use version 3.0, so need to use scmi_clk_state_in_v2. Signed-off-by: Peng Fan <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2026-01-28board: nxp: Rename board directory from board/freescale to board/nxpAlice Guo
This patch renames the board directory from board/freescale to board/nxp because NXP now provides Board Support Packages (BSPs) and tools for the former Freescale i.MX and other i.MX products. All relevant references have been updated accordingly. This change does not affect functionality. Signed-off-by: Alice Guo <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2026-01-28armv7: Add CPLD support via IFC to the ls1021a-iot board.Mateus Lima Alves
This patch adds CPLD support via IFC to the ls1021a-iot board. Signed-off-by: Mateus Lima Alves <[email protected]>
2026-01-27scsi: ufs: renesas: Add reusable functionsYoshihiro Shimoda
Since some settings can be reused on other UFS controller (R-Car S4-8 ES1.2), add reusable functions. Ported from Linux kernel commit 44ca16f4970e ("scsi: ufs: renesas: Add reusable functions") Signed-off-by: Yoshihiro Shimoda <[email protected]> Signed-off-by: Geert Uytterhoeven <[email protected]> Link: https://lore.kernel.org/r/446d67b751a96645799de3aeefec539735aa78c8.1741179611.git.geert+renesas@glider.be Signed-off-by: Martin K. Petersen <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Neil Armstrong <[email protected]>
2026-01-27scsi: ufs: renesas: Refactor 0x10ad/0x10af PHY settingsYoshihiro Shimoda
Extract specific PHY setting of the 0x10a[df] registers into a new function. Ported from Linux kernel commit cca2b807c227 ("scsi: ufs: renesas: Refactor 0x10ad/0x10af PHY settings") Signed-off-by: Yoshihiro Shimoda <[email protected]> Signed-off-by: Geert Uytterhoeven <[email protected]> Link: https://lore.kernel.org/r/110eafd1ee24f9db0285a5e2bca224e35962268a.1741179611.git.geert+renesas@glider.be Signed-off-by: Martin K. Petersen <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Neil Armstrong <[email protected]>
2026-01-27scsi: ufs: renesas: Remove register control helper functionYoshihiro Shimoda
After refactoring the code, ufs_renesas_reg_control() is no longer needed, because all operations are simple and can be called directly. Remove the ufs_renesas_reg_control() helper function, and call udelay() directly. Ported from Linux kernel commit 855bde8ce5bc ("scsi: ufs: renesas: Remove register control helper function") with replaced readl_poll_timeout_atomic() with readl_poll_sleep_timeout(). Signed-off-by: Yoshihiro Shimoda <[email protected]> Signed-off-by: Geert Uytterhoeven <[email protected]> Link: https://lore.kernel.org/r/69500e4c18be1ca1de360f9e797e282ffef04004.1741179611.git.geert+renesas@glider.be Signed-off-by: Martin K. Petersen <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Neil Armstrong <[email protected]>
2026-01-27scsi: ufs: renesas: Add register read to remove save/set/restoreYoshihiro Shimoda
Add support for returning read register values from ufs_renesas_reg_control(), so ufs_renesas_set_phy() can use the existing ufs_renesas_write_phy() helper. Remove the now unused code to save to, set, and restore from a static array inside ufs_renesas_reg_control(). Ported from Linux kernel commit 5129aa627599 ("scsi: ufs: renesas: Add register read to remove save/set/restore") Signed-off-by: Yoshihiro Shimoda <[email protected]> Signed-off-by: Geert Uytterhoeven <[email protected]> Link: https://lore.kernel.org/r/9fa240a9dc0308d6675138f8434eccb77f051650.1741179611.git.geert+renesas@glider.be Signed-off-by: Martin K. Petersen <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Neil Armstrong <[email protected]>
2026-01-27scsi: ufs: renesas: Replace init data by init codeYoshihiro Shimoda
Since initialization of the UFS controller on R-Car S4-8 ES1.0 requires only static values, the driver uses initialization data stored in the const ufs_param[] array. However, other UFS controller variants (R-Car S4-8 ES1.2) require dynamic values, like those obtained from E-FUSE. Refactor the initialization code to prepare for this. This also reduces kernel size by almost 30 KiB. Ported from Linux kernel commit c4e83573c3d0 ("scsi: ufs: renesas: Replace init data by init code") Signed-off-by: Yoshihiro Shimoda <[email protected]> Signed-off-by: Geert Uytterhoeven <[email protected]> Link: https://lore.kernel.org/r/3520e27ac7ff512de6508f630eee3c1689a7c73d.1741179611.git.geert+renesas@glider.be Signed-off-by: Martin K. Petersen <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Neil Armstrong <[email protected]>
2026-01-25power: regulator: enable AWP318W SPL supportYixun Lan
Add the descriptions for the DC/DC regulators of the AXP318W, and enable it when CONFIG_AXP318W_POWER is enabled. Signed-off-by: Yixun Lan <[email protected]> Reviewed-by: Andre Przywara <[email protected]>