The devm_clk_get_enabled() helpers: - call devm_clk_get() - call clk_prepare_enable() and register what is needed in order to call clk_disable_unprepare() when needed, as a managed resource. This simplifies the code and avoids the calls to clk_disable_unprepare(). -v4: *Use struct dev *dev to replace &pdev->dev to further simplify the code according to Andy Shevchenko. *Use HZ_PER_KHZ to replace 1000 according to Andy Shevchenko. *Add or reduce blank lines in some places to make the code more compliant as suggested by Andy Shevchenko. -v3: *Add another patch to use dev_err_probe() in jz4780_i2c_probe() according to Biju and Paul. -v2: *drop sclk from struct em_i2c_device according to Biju. Rong Qianfeng (3): i2c: emev2: Use devm_clk_get_enabled() helpers i2c: jz4780: Use devm_clk_get_enabled() helpers i2c: jz4780: Use dev_err_probe() drivers/i2c/busses/i2c-emev2.c | 25 +++++---------- drivers/i2c/busses/i2c-jz4780.c | 54 ++++++++++++++------------------- 2 files changed, 31 insertions(+), 48 deletions(-) -- 2.39.0