We can use module_platform_driver and devm_clk_get_optional_enabled in the cctrng driver to make its code simpler. The patches were compile tested only. Martin Kaiser (4): hwrng: cctrng - don't open code init and exit functions hwrng: cctrng - let devres enable the clock hwrng: cctrng - merge cc_trng_clk_init into its only caller hwrng: cctrng - use dev_err_probe in error paths drivers/char/hw_random/cctrng.c | 93 +++++++-------------------------- 1 file changed, 19 insertions(+), 74 deletions(-) -- 2.30.2