The STM32MP13x platforms have a RNG hardware block that supports customization, a conditional reset sequences that allows to recover from certain situations and a configuration locking mechanism. This series adds support for the mentionned features. Note that the hardware RNG can and should be managed in the secure world for this platform, hence the rng not being default enabled on the STM32MP135F-DK board. Changes in V2: - Use pm_ptr() and add __maybe_unused on PM API - Correct bug using WARN_ON Changes in V3: - Squash of bindings patches - st,rng-lock-conf property declaration rework - Fix stm32_rng_pm_ops declaration in patch [5/9] Gatien Chevallier (9): dt-bindings: rng: introduce new compatible for STM32MP13x hwrng: stm32 - use devm_platform_get_and_ioremap_resource() API hwrng: stm32 - implement STM32MP13x support hwrng: stm32 - implement error concealment hwrng: stm32 - rework error handling in stm32_rng_read() hwrng: stm32 - restrain RNG noise source clock hwrng: stm32 - support RNG configuration locking mechanism hwrng: stm32 - rework power management sequences ARM: dts: stm32: add RNG node for STM32MP13x platforms .../devicetree/bindings/rng/st,stm32-rng.yaml | 20 +- arch/arm/boot/dts/st/stm32mp131.dtsi | 8 + drivers/char/hw_random/stm32-rng.c | 511 +++++++++++++++--- 3 files changed, 455 insertions(+), 84 deletions(-) -- 2.25.1