clk: Provide devm_clk_bulk_get_all_enabled() helper
authorCristian Ciocaltea <cristian.ciocaltea@collabora.com>
Sat, 19 Oct 2024 11:16:00 +0000 (14:16 +0300)
committerStephen Boyd <sboyd@kernel.org>
Tue, 22 Oct 2024 20:55:22 +0000 (13:55 -0700)
commit51e32e897539663957f7a0950f66b48f8896efee
treece70b5d7a2d064a53bd341e9edcde2c8b0bc2545
parent9852d85ec9d492ebef56dc5f229416c925758edc
clk: Provide devm_clk_bulk_get_all_enabled() helper

Commit 265b07df758a ("clk: Provide managed helper to get and enable bulk
clocks") added devm_clk_bulk_get_all_enable() function, but missed to
return the number of clocks stored in the clk_bulk_data table referenced
by the clks argument.  Without knowing the number, it's not possible to
iterate these clocks when needed, hence the argument is useless and
could have been simply removed.

Introduce devm_clk_bulk_get_all_enabled() variant, which is consistent
with devm_clk_bulk_get_all() in terms of the returned value:

 > 0 if one or more clocks have been stored
 = 0 if there are no clocks
 < 0 if an error occurred

Moreover, the naming is consistent with devm_clk_get_enabled(), i.e. use
the past form of 'enable'.

To reduce code duplication and improve patch readability, make
devm_clk_bulk_get_all_enable() use the new helper, as suggested by
Stephen Boyd.

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com>
Link: https://lore.kernel.org/r/20241019-clk_bulk_ena_fix-v4-1-57f108f64e70@collabora.com
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/clk-devres.c
include/linux/clk.h