clk: scmi: check the clock state/parent/rate control permissions
authorAlice Guo <alice.guo@nxp.com>
Mon, 28 Apr 2025 10:37:31 +0000 (18:37 +0800)
committerFabio Estevam <festevam@gmail.com>
Sat, 3 May 2025 19:55:32 +0000 (16:55 -0300)
commit15fdfef6642c8262331e22f8d9507ee5c11f027a
treede116d883154f6812654f8657923a6e0f883530e
parentaf2a671f78ee230dd81679b944ef02e9ffe2ec45
clk: scmi: check the clock state/parent/rate control permissions

Clock driver based on SCMI clock management protocol in Linux checks
clock state, parent and rate control permissions. To be consistent with
the kernel driver, add this check here. CLOCK_GET_PERMISSIONS is from
ARM System Control and Management Interface Platform Design Document 3.2.

When using common clock framework (CCF), use the clock signal ID to get
the clock registered by clk_register() in scmi_clk_probe(), and then
obatin the struct clk_scmi variable with container_of().

Signed-off-by: Alice Guo <alice.guo@nxp.com>
Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
drivers/clk/clk_scmi.c
include/scmi_protocols.h