Add clock and reset drivers support for STM32MP2 platforms: - add SCMI clock protocol v2.0 support - introduce CONFIG_CLK_AUTO_ID flag to support unique clk ID when several clock providers are in use. - add STM32MP2 clock driver - add STM32MP2 reset driver - fix clock counter
Tested with following components: _ TF-A lts-v2.12.2. _ SCP-firmware main branch (commit c914b3f0c756 "fwk: Refactor fwk_module_get_sub_element_count"). _ OP-TEE 4.6.0 + pull request https://github.com/OP-TEE/optee_os/pull/7324 Gabriel Fernandez (4): clk: stm32mp25: Add clock driver support clk: stm32mp25: implement clock check security function clk: stm32: fix clock counter reset: stm32mp25: add stm32mp25 reset driver Patrice Chotard (2): ARM: dts: stm32: switch from fixed to scmi clocks for stm32mp257f-ev1 configs: stm32mp25: increase SYS_MALLOC_F_LEN to 0x60000 Patrick Delaunay (6): clk: add CONFIG_CLK_AUTO_ID clk: sandbox: update driver for CONFIG_CLK_AUTO_ID support sandbox: test: update for CONFIG_CLK_AUTO_ID support clk: fixed_rate: configure clock ID with CONFIG_CLK_AUTO_ID clk: scmi: manage properly the clk identifier with CCF phy: stm32-usbphyc: manage properly the clk identifier with CCF Valentin Caron (1): clk: scmi: add compatibility with clock protocol 2.0 MAINTAINERS | 3 +- arch/arm/dts/stm32mp25-u-boot.dtsi | 8 + arch/arm/dts/stm32mp257f-ev1-u-boot.dtsi | 74 --- configs/stm32mp25_defconfig | 2 +- drivers/clk/Kconfig | 11 + drivers/clk/clk-uclass.c | 9 +- drivers/clk/clk_fixed_rate.c | 1 + drivers/clk/clk_sandbox.c | 30 +- drivers/clk/clk_sandbox_ccf.c | 48 +- drivers/clk/clk_scmi.c | 62 +- drivers/clk/stm32/Kconfig | 9 + drivers/clk/stm32/Makefile | 1 + drivers/clk/stm32/clk-stm32-core.c | 73 ++- drivers/clk/stm32/clk-stm32-core.h | 2 +- drivers/clk/stm32/clk-stm32mp13.c | 2 +- drivers/clk/stm32/clk-stm32mp25.c | 782 +++++++++++++++++++++++ drivers/misc/stm32_rcc.c | 66 +- drivers/phy/phy-stm32-usbphyc.c | 19 + drivers/reset/Kconfig | 9 +- drivers/reset/Makefile | 4 +- drivers/reset/stm32-reset.c | 97 --- drivers/reset/stm32/Kconfig | 23 + drivers/reset/stm32/Makefile | 9 + drivers/reset/stm32/stm32-reset-core.c | 92 +++ drivers/reset/stm32/stm32-reset-core.h | 31 + drivers/reset/stm32/stm32-reset-mp1.c | 55 ++ drivers/reset/stm32/stm32-reset-mp25.c | 159 +++++ drivers/reset/stm32/stm32-reset.c | 43 ++ include/clk.h | 24 + include/linux/clk-provider.h | 9 +- include/scmi_protocols.h | 15 + include/stm32_rcc.h | 7 +- include/stm32mp25_rcc.h | 712 +++++++++++++++++++++ test/dm/clk_ccf.c | 30 +- 34 files changed, 2227 insertions(+), 294 deletions(-) create mode 100644 drivers/clk/stm32/clk-stm32mp25.c delete mode 100644 drivers/reset/stm32-reset.c create mode 100644 drivers/reset/stm32/Kconfig create mode 100644 drivers/reset/stm32/Makefile create mode 100644 drivers/reset/stm32/stm32-reset-core.c create mode 100644 drivers/reset/stm32/stm32-reset-core.h create mode 100644 drivers/reset/stm32/stm32-reset-mp1.c create mode 100644 drivers/reset/stm32/stm32-reset-mp25.c create mode 100644 drivers/reset/stm32/stm32-reset.c create mode 100644 include/stm32mp25_rcc.h -- 2.25.1 base-commit: cf37480bc8335494cf88b7180dc3f1eb8cf63a9d branch: upstream_scmi_clock_mp25_v1