summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-08-07arm64: dts: renesas: ironhide: Describe all reserved memoryMarek Vasut
Fully describe all available DRAM in the DT, and describe regions which are not accessible because they are used by firmware in reserved-memory nodes. Replace the first memory bank memory@60600000 with memory@40000000 and a 518 MiB long reserved-memory no-map subnode. This memory region is used by other cores in the system. Reserve 32 kiB of memory at 0x8c100000 for parameters shared by IPL, SCP, TFA BL31 and TEE. Reserve 512 kiB of memory at 0x8c200000 for TFA BL31. The upcoming upstream TFA 2.15 BL31 uses memory from 0x8c200000..0x8c242fff; rounding up to 512 kiB is slight future-proofing. Reserve 32 MiB of memory at 0x8c400000 for OPTEE-OS, which is the entire OPTEE-OS TZ protected DRAM area. Neither TFA BL31 nor OPTEE-OS modify the DT passed to Linux in any way with any new reserved-memory {} nodes to reserve memory areas used by the TFA BL31 or OPTEE-OS to prevent the next stage from using those areas, which lets Linux use all of the available DRAM as it is described in the DT that was passed in by U-Boot, including the areas that are newly utilized by TFA BL31 or OPTEE-OS. In case of high DRAM utilization, unless the memory used by TFA BL31 or OPTEE-OS is properly reserved, Linux may use and corrupt the memory used by TFA BL31 or OPTEE-OS, which would lead to the system becoming unresponsive. Ported from Linux 7.2-rc5 commit 5250b3b1ad99 ("arm64: dts: renesas: ironhide: Describe all reserved memory") Signed-off-by: Marek Vasut <[email protected]>
2026-08-07arm: renesas: Store env in HF on R-Car R8A78000 X5H Cortex-M33 RSIP portMarek Vasut
Store U-Boot environment in the last sector of HyperFlash on R-Car R8A78000 X5H Cortex-M33 RSIP port. This allows the RSIP port to have persistent environment, which is very useful for development. Signed-off-by: Marek Vasut <[email protected]>
2026-08-07arm: renesas: Enable RPC on R-Car R8A78000 X5H Cortex-M33 RSIP portMarek Vasut
Enable RPC and HyperFlash support on R-Car R8A78000 X5H Cortex-M33 RSIP. RPC is used both to update the HF content, which includes the U-Boot on RSIP itself and SCP firmware, as well as access the U-Boot environment for U-Boot on RSIP. Signed-off-by: Marek Vasut <[email protected]>
2026-08-07arm: renesas: Bind RPC on R-Car R8A78000 X5H Cortex-M33 RSIP portMarek Vasut
Bind RPC and HyperFlash in DT on R-Car R8A78000 X5H Cortex-M33 RSIP. RPC is used both to update the HF content, which includes the U-Boot on RSIP itself and SCP firmware, as well as access the U-Boot environment for U-Boot on RSIP. Signed-off-by: Marek Vasut <[email protected]>
2026-08-07arm: renesas: Disable MMC support on R-Car R8A78000 X5H Cortex-M33 RSIP portMarek Vasut
Disable MMC support on R-Car R8A78000 X5H Cortex-M33 RSIP port. The MMC is never used by the RSIP core, disable the support. Signed-off-by: Marek Vasut <[email protected]>
2026-08-07ufs: rcar-gen5: Switch from FASTAUTO mode to FAST modeTuyen Dang
Switch from FASTAUTO to FAST mode and lane 2 to achieve higher throughput. Drop the 64bit address quirk. Signed-off-by: Tuyen Dang <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2026-08-07mtd: spi: renesas: Add R-Car Gen5 DT compatibleMarek Vasut
Add device tree compatible string "renesas,rcar-gen5-rpc-if" to the driver to match on upstream RPC DT node in R-Car Gen5 DTs. Signed-off-by: Marek Vasut <[email protected]>
2026-08-07mtd: spi: renesas: Align macro prefixesMarek Vasut
Remove the IF from RPCIF to align the register macros with each other. No functional change. Fixes: d5162463243d ("mtd: spi: renesas: Configure RPC PHY timing registers") Signed-off-by: Marek Vasut <[email protected]>
2026-08-07mtd: rpc: renesas: Add R-Car Gen5 DT compatibleMarek Vasut
Add device tree compatible string "renesas,rcar-gen5-rpc-if" to the driver to match on upstream RPC DT node in R-Car Gen5 DTs. Adjust Kconfig to allow driver enablement on all 64bit R-Car. Signed-off-by: Marek Vasut <[email protected]>
2026-08-07mtd: rpc: renesas: Switch to dev_read_addr_name()Marek Vasut
Simplify the DT register address parsing using dev_read_addr_name(), switch away from raw fdt_*() functions. No functional change. Signed-off-by: Marek Vasut <[email protected]>
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-06Gitlab CI: sage: Disable test_net_tftpboot_boot on Raspberry Pi 4 for nowTom Rini
With commit 623f6c5b6ab7 ("boot: image-fdt: free old dtb reservations") we now get: ERROR: freeing fdt memory region failed (addr=3ef667e0 size=36 flags=2): -1 ERROR: freeing fdt memory region failed (addr=3ef663a0 size=400 flags=2): -1 on console when booting, which is non-fatal but leads to the test failing. Disable this test for now. Acked-by: Ilias Apalodimas <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2026-08-06Merge tag 'mediatek-for-main-2026-08-05' of ↵Tom Rini
https://git.u-boot-project.org/u-boot/custodians/u-boot-mediatek * Clock fix for MT8188 (Genio 700/520) * SPL support preparatory patch for MT8188. * Compile error fix for when enabling LWIP network stack on some MediaTek targets. * Fix a regression in clock driver binding from the previous PR. * Add display-related clocks on MT8188. * Another wave of clock driver refactoring and de-duplication.
2026-08-06Merge branch 'main' of ↵Tom Rini
https://git.u-boot-project.org/u-boot/custodians/u-boot-riscv CI: https://git.u-boot-project.org/u-boot/custodians/u-boot-riscv/-/pipelines/884 - board: MPFS: add hardware RNG support and fix RNG consumers - board: sophgo: add support for Milk-V Duo 256M
2026-08-06Merge tag 'u-boot-watchdog-20260803' of ↵Tom Rini
https://git.u-boot-project.org/u-boot/custodians/u-boot-watchdog CI: https://git.u-boot-project.org/u-boot/custodians/u-boot-watchdog/-/pipelines/867 u-boot-watchdog changes 2026-08-03: - cyclic: get rid of cyclic_get_list() helper (Rasmus) - cyclic: return early from cyclic_run() if the list is empty (Rasmus) - watchdog: ast2600: add AST2700 support (Ryan)
2026-08-06Merge tag 'fwu-main-03082026' of ↵Tom Rini
https://git.u-boot-project.org/u-boot/custodians/u-boot-tpm A single patch from Michal enhancing the failures prints on fatal FWU errors
2026-08-06Merge branch 'main' of ↵Tom Rini
https://git.u-boot-project.org/u-boot/custodians/u-boot-sh - R-Car Gen3 clean ups and size optimization. - R-Car Gen4 proper PCIe clock generator driver. - R-Car Gen5 support for newer SCP firmware version.
2026-08-06Merge branch 'main' of ↵Tom Rini
https://git.u-boot-project.org/u-boot/custodians/u-boot-usb - Cadence controller bugfix.
2026-08-06binman: nxp_imx8mcst: Handle FCFB header during SPI NOR bootMarek Vasut
In case the image that is wrapped in the nxp_imx8mcst already contains an FCFB header which is mandatory for SPI NOR boot, then the IVT is at offset 0x1000 instead of offset 0x0, but the whole image including the FCFB header must be signed to prevent attacker from tampering with any of the headers. Add the FCFB handling. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Simon Glass <[email protected]>
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-05clk: mediatek: mt8188: fix top0 gate polarityJulien Stephan
Gates in top0_cg_regs are active-high. The GATE_TOP0/GATE_TOP0E macros set CLK_GATE_NO_SETCLR flags, which treat them as active-low. Enabling the clock is currently disabling them. Switch both macros to CLK_GATE_NO_SETCLR_INV to use the correct active-high semantics. Signed-off-by: Julien Stephan <[email protected]> Fixes: 11f3cc46322a ("clk: mediatek: add MT8188 clock driver") Link: https://patch.msgid.link/20260728-mt8188-clk-fix-top0-gate-polarity-v1-1-56bc92ba6055@baylibre.com Signed-off-by: David Lechner <[email protected]>
2026-08-05arm: mediatek: use phase-aware PSCI reset on MT8188Carlo Caione
MT8188 reset_cpu() checks the U-Boot proper PSCI symbol even when the function is built for SPL. A standalone SPL download agent runs before BL31, so fastboot acknowledges a reboot request and then stalls while attempting an unavailable PSCI system reset. Use the phase-aware configuration check so SPL falls back to the watchdog reset provider. U-Boot proper continues to use PSCI as before. Signed-off-by: Carlo Caione <[email protected]> Reviewed-by: Julien Stephan <[email protected]> Link: https://patch.msgid.link/20260724-ccaione-upstream-mt8188-spl-reset-v1-1-08da6554ecd8@baylibre.com Signed-off-by: David Lechner <[email protected]>
2026-08-05cmd: ufetch: fix compiling with no CONFIG_SYS_CONFIG_NAMEDavid Lechner
Add some preprocessor guards to avoid a compile error when CONFIG_SYS_CONFIG_NAME is not defined. Reviewed-by: Casey Connolly <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: David Lechner <[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-05mailbox: mpfs: add bounded wait for BUSY to clear before sending requestJamie Gibbons
The MPFS mailbox driver currently checks the BUSY bit at the start of mpfs_mbox_send() and immediately returns -EBUSY if the controller is busy. On MPFS, BUSY may be transiently asserted during early boot even though no other U-Boot service is actively executing. In Linux, returning -EBUSY here is retryable via the mailbox framework and scheduler, but in U-Boot this results in a hard failure. Replace the immediate BUSY check with a bounded wait using regmap_read_poll_timeout(), waiting for the controller to become idle before issuing a new request. This preserves the intent of the BUSY check while avoiding spurious early-boot failures in U-Boot’s synchronous, polled execution model. The timeout is conservative and based on observed MPFS behaviour, where BUSY clears within a few milliseconds. Signed-off-by: Jamie Gibbons <[email protected]> Reviewed-by: Conor Dooley <[email protected]>
2026-08-05mailbox: mpfs-mbox: replace unbounded BUSY polling with bounded waitsJamie Gibbons
The MPFS mailbox driver used unbounded polling loops and treated the BUSY bit as a fatal condition in several paths. On MPFS, BUSY may be transiently reasserted even after response data is written, which is observable in U-Boot’s synchronous, polled execution model. Replace the unbounded loops with a bounded regmap_read_poll_timeout()-based helper that waits for the controller to become idle. This preserves existing behaviour while preventing infinite stalls and avoiding spurious failures during early boot. Signed-off-by: Jamie Gibbons <[email protected]> Reviewed-by: Conor Dooley <[email protected]>
2026-08-05configs: microchip_mpfs_generic: enable MPFS RNG supportJamie Gibbons
Enable the MPFS hardware RNG and associated infrastructure in the Microchip PolarFire SoC generic defconfig. Signed-off-by: Jamie Gibbons <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2026-08-05rng: add Microchip PolarFire SoC hardware RNG driverJamie Gibbons
Add a U-Boot RNG driver for Microchip's PolarFire SoC (MPFS). The hardware RNG is accessed indirectly via the MPFS system controller using the mailbox interface. The driver implements the UCLASS_RNG interface, requesting random data from the system controller and returning it to the caller. This allows use of the PolarFire SoC hardware RNG via the standard 'rng' command and DM RNG API. Signed-off-by: Jamie Gibbons <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2026-08-05misc: mpfs_syscontroller: bind RNG sub-deviceJamie Gibbons
The MPFS RNG driver is not described by the device tree and is instead registered dynamically by the system controller. Explicitly bind the MPFS RNG driver as a child device during system controller probe. This ensures the RNG device is instantiated and available via UCLASS_RNG without requiring a device tree node. Signed-off-by: Jamie Gibbons <[email protected]> Acked-by: Conor Dooley <[email protected]>
2026-08-05misc: mpfs_syscontroller: add mailbox RX helper for service responsesJamie Gibbons
The MPFS system controller run_service() helper only submits the mailbox request but does not read back the response data. However, the caller must explicitly receive the response. Add a public system controller helper to receive mailbox service responses to populate the response buffer after issuing a system controller request. Without this, the drivers copy uninitialised stack data instead of mailbox response data, resulting in deterministic output. Signed-off-by: Jamie Gibbons <[email protected]> Acked-by: Conor Dooley <[email protected]>
2026-08-04net: rtl8169: add support for RTL8126A and RTL8127AJaven Xu
RTL8126A and RTL8127A share most of the register layouts and quirks with RTL8125 series, but require explicit desc type and CRC-drop setup during init. This patch adds PCI IDs and MAC versions. RTL8126A is 0x66 and RTL8127A is 0x6e. And RTL8127A requires Tx Desc V3 format and an additional RADM FIFO protection configuration according to vendor driver. Signed-off-by: Javen Xu <[email protected]>
2026-08-03watchdog: ast2600: add AST2700 supportRyan Chen
The AST2700 reuses the AST2600 watchdog block unchanged. Bind the driver to the aspeed,ast2700-wdt compatible and enable WDT_AST2600 on the AST2700. Signed-off-by: Ryan Chen <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2026-08-03cyclic: return early from cyclic_run() if the list is emptyRasmus Villemoes
It is possible that schedule(), and hence cyclic_run(), gets called very early, perhaps even from assembly code. With commit 9c1b13b3fd27 ("cyclic: reduce get_timer_us() calls inside hlist_for_each_entry_safe()"), there is now an unconditional get_timer_us(0) done outside the loop, and depending on the platform, the timer infrastructure may not be set up yet. In at least one case, that has caused a divide-by-0 and hence a failure to boot. Platforms should really ensure their timers are ready ASAP, and in the concrete case reported, that was indeed possible to fix that way. However, it doesn't hurt to also insert an early return here, and that could prevent other such hard-to-debug boot failures. Reported-by: Emanuele Ghidoli <[email protected]> Link: https://marc.info/?l=u-boot&m=178481834846283&w=2 Fixes: 9c1b13b3fd27 ("cyclic: reduce get_timer_us() calls inside hlist_for_each_entry_safe()") Signed-off-by: Rasmus Villemoes <[email protected]> Reviewed-by: Emanuele Ghidoli <[email protected]> Reviewed-by: Stefan Roese <[email protected]> [sr: fix Fixes: tag SHA length and return statement indentation]
2026-08-03cyclic: get rid of cyclic_get_list() helperRasmus Villemoes
As the comment indicates, this was used to silence a warning without having to add casts everywhere gd->cyclic_list was referenced. But nowadays gd is not volatile qualified, so this helper is not needed and only obfuscates the code somewhat, because the head of the list being operated on with the hlist_ or list_ macros is usually not obtained via a function call. Remove the helper and refer to the list head using the idiomatic &gd->cyclic_list. Signed-off-by: Rasmus Villemoes <[email protected]> Reviewed-by: Stefan Roese <[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-03arm: imx: initialize the system counter earlier on i.MX7Emanuele Ghidoli
imx_gpcv2_init() calls udelay(), which through schedule() reaches cyclic_run(). Since commit 9c1b13b3fd27 ("cyclic: reduce get_timer_us() calls inside hlist_for_each_entry_safe()") get_timer_us() is called even when no cyclic function is registered, so tick_to_time_us() divides by a still zero CNTFRQ and __div0() hangs the board before the console is up. The requested delay was a no-op as well, since us_to_tick() reads a CNTFRQ of zero. Initialize the system counter before imx_gpcv2_init(), and move the "already initialized" guard from timer_get_boot_us() into timer_init() so that the later timer_init() from the generic init sequence is a no-op. Where the system counter timer_init() is not compiled in, the weak definition is empty and the calling it is harmless. Fixes: b059837850e4 ("imx: mx7: add gpc initialization for low power mode") Fixes: 9c1b13b3fd27 ("cyclic: reduce get_timer_us() calls inside hlist_for_each_entry_safe()") Signed-off-by: Emanuele Ghidoli <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2026-08-03imx: scmi: suppress invalid origin/errid in reset reason printJoseph Guo
Only print origin and errid fields when the corresponding valid bits (MISC_BOOT_FLAG_ORG_VLD and MISC_BOOT_FLAG_ERR_VLD) are set. For a normal power-on reset, these fields are not valid, and printing -1 is just noise. Signed-off-by: Joseph Guo <[email protected]>
2026-08-03binman: add CST backend selection for i.MX8M signingMarek Vasut
Add support for setting the CST backend, both via DT property and CST_BACKEND environment variable. The CST currently supports two backends, 'ssl' and 'pkcs11', with 'ssl' being the default when CST tool is invoked without any -b parameter. Keep 'ssl' backend as the default, but explicitly pass it via the '-b' parameter, unless the user selects 'pkcs11' via either method. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Simon Glass <[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-08-03fwu: Make boottime check failures visibleMichal Simek
On systems with FWU enabled but without the required DT changes the boottime checks fail. The failures are only reported via log_debug() which is compiled out by default, so the user has no idea what is going on. Use log_err() to make these failures visible. Signed-off-by: Michal Simek <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]> Signed-off-by: Ilias Apalodimas <[email protected]>
2026-08-02arm: dts: renesas: Remove unused OPP nodes from R-Car H3/M3-W/M3-W+/M3-NMarek Vasut
Remove OPP DT nodes from R-Car H3, M3-W, M3-W+ and M3-N DTs, those nodes are not used by U-Boot and only increase the control DT size and complexity. This saves about 1 kiB on the resulting U-Boot binary without any impact on functionality. Signed-off-by: Marek Vasut <[email protected]>
2026-08-02pinctrl: renesas: Further minimize R8A77965 M3-N PFC tablesMarek Vasut
Reduce the PFC tables further by gating DRIF, MLB, TMU, TPU and SATA behind PINCTRL_PFC_FULL, none of which are currently supported by U-Boot. This helps reduce the size of the bootloader in 4 kiB range. Signed-off-by: Marek Vasut <[email protected]>
2026-08-02pinctrl: renesas: Further minimize R8A77960 M3-W and R8A77961 M3-W+ PFC tablesMarek Vasut
Reduce the PFC tables further by gating DRIF, MLB, TMU and TPU behind PINCTRL_PFC_FULL, none of which are currently supported by U-Boot. This helps reduce the size of the bootloader in 4 kiB range. Signed-off-by: Marek Vasut <[email protected]>
2026-08-02pinctrl: renesas: Further minimize R8A77951 H3 PFC tablesMarek Vasut
Reduce the PFC tables further by gating DRIF, MLB, TMU, TPU and SATA behind PINCTRL_PFC_FULL, none of which are currently supported by U-Boot. This helps reduce the size of the bootloader in 4 kiB range. Signed-off-by: Marek Vasut <[email protected]>
2026-08-02Revert "arm64: dts: renesas: r8a779g3: Reinstate basic PCIe clock ↵Marek Vasut
description for Sparrow Hawk" This reverts commit a6f018b7b503c026cc66d25bd59868bac70150dc. The a6f018b7b503 ("arm64: dts: renesas: r8a779g3: Reinstate basic PCIe clock description for Sparrow Hawk") workaround for missing PCIe clock generator driver is no longer necessary, as the Renesas 9-series PCIe clock generator driver is now available. Drop the workaround. Signed-off-by: Marek Vasut <[email protected]>
2026-08-02arm64: renesas: r8a779g3: Enable PCIe clock generator and I2C mux drivers on ↵Marek Vasut
Retronix R-Car V4H Sparrow Hawk board Enable Renesas 9-series PCIe clock generator driver to operate the Renesas 9FGV0441 PCIe clock generator which supplies PCIe busses on this device with 100 MHz clock. Enable PCA954x I2C mux driver to access the PCIe clock generator which is attached to one of the muxed I2C busses. Signed-off-by: Marek Vasut <[email protected]>
2026-08-02pci: pcie-rcar-gen4: Handle always on reference clockMarek Vasut
The clock controller driver for the device which supplies reference clock to the PCIe core and bus may not implement .enable / .disable callbacks in case the clock supplied by the device are always on, in which case the clk_prepare_enable() call returns -ENOSYS. This is the case on e.g. 9FGV0441. Handle the -ENOSYS as a valid return value and proceed with probing. Signed-off-by: Marek Vasut <[email protected]>
2026-08-02clk: rs9: Add Renesas 9-series PCIe clock generator driverMarek Vasut
Add driver for Renesas 9-series PCIe clock generators. This driver is designed to support 9FGV/9DBV/9DMV/9FGL/9DML/9QXL/9SQ series I2C PCIe clock generators. The driver is capable of configuring per-chip spread spectrum mode and output amplitude, as well as per-output slew rate. Losely based on Linux 7.1 commit 5ec820fc28d0 ("clk: rs9: Reserve 8 struct clk_hw slots for for 9FGV0841") Signed-off-by: Marek Vasut <[email protected]>