diff options
Diffstat (limited to 'arch/arm/imx-common/sci/svc/pm/rpc_clnt.c')
-rw-r--r-- | arch/arm/imx-common/sci/svc/pm/rpc_clnt.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/arch/arm/imx-common/sci/svc/pm/rpc_clnt.c b/arch/arm/imx-common/sci/svc/pm/rpc_clnt.c index b000a3ba7b..0c57823366 100644 --- a/arch/arm/imx-common/sci/svc/pm/rpc_clnt.c +++ b/arch/arm/imx-common/sci/svc/pm/rpc_clnt.c @@ -105,6 +105,26 @@ sc_err_t sc_pm_set_resource_power_mode(sc_ipc_t ipc, sc_rsrc_t resource, return (sc_err_t) result; } +sc_err_t sc_pm_set_resource_power_mode_all(sc_ipc_t ipc, + sc_rm_pt_t pt, sc_pm_power_mode_t mode, sc_rsrc_t exclude) +{ + sc_rpc_msg_t msg; + uint8_t result; + + RPC_VER(&msg) = SC_RPC_VERSION; + RPC_SVC(&msg) = (uint8_t) SC_RPC_SVC_PM; + RPC_FUNC(&msg) = (uint8_t) PM_FUNC_SET_RESOURCE_POWER_MODE_ALL; + RPC_U16(&msg, 0U) = (uint16_t) exclude; + RPC_U8(&msg, 2U) = (uint8_t) pt; + RPC_U8(&msg, 3U) = (uint8_t) mode; + RPC_SIZE(&msg) = 2U; + + sc_call_rpc(ipc, &msg, SC_FALSE); + + result = RPC_R8(&msg); + return (sc_err_t) result; +} + sc_err_t sc_pm_get_resource_power_mode(sc_ipc_t ipc, sc_rsrc_t resource, sc_pm_power_mode_t *mode) { |