clk: scmi: Support atomic clock enable/disable API
authorCristian Marussi <cristian.marussi@arm.com>
Sun, 13 Feb 2022 19:58:32 +0000 (19:58 +0000)
committerSudeep Holla <sudeep.holla@arm.com>
Mon, 14 Feb 2022 14:50:24 +0000 (14:50 +0000)
commit035bd7e27962d3aa528fcbc18b26391f58b90a9e
tree368a08cd63df2e0ffec360586f07882faf17f5fc
parent064079250602583f3e223d4376a0f3eb48dca0e5
clk: scmi: Support atomic clock enable/disable API

Support also atomic enable/disable clk_ops beside the bare non-atomic one
(prepare/unprepare) when the underlying SCMI transport is configured to
support atomic transactions for synchronous commands.

Compare the SCMI system-wide configured atomic threshold latency time and
the per-clock advertised enable latency (if any) to choose whether to
provide sleeping prepare/unprepare vs atomic enable/disable.

Link: https://lore.kernel.org/r/20220213195832.27932-9-cristian.marussi@arm.com
Cc: Michael Turquette <mturquette@baylibre.com>
Cc: linux-clk@vger.kernel.org
Acked-by: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Cristian Marussi <cristian.marussi@arm.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
drivers/clk/clk-scmi.c