12#ifndef _INCLUDE_ZEPHYR_DRIVERS_FIRMWARE_SCMI_POWER_H_
13#define _INCLUDE_ZEPHYR_DRIVERS_FIRMWARE_SCMI_POWER_H_
17#define SCMI_POWER_STATE_SET_FLAGS_ASYNC BIT(0)
25#define SCMI_POWER_STATE_TYPE_SHIFT 30U
28#define SCMI_POWER_STATE_ID_MASK (BIT(28) - 1)
36#define SCMI_POWER_STATE_PARAM(type, id) \
37 ((((type) & BIT(0)) << SCMI_POWER_STATE_TYPE_SHIFT) | \
38 ((id) & SCMI_POWER_STATE_ID_MASK))
48#define SCMI_POWER_STATE_GENERIC_ON SCMI_POWER_STATE_PARAM(0, 0)
51#define SCMI_POWER_STATE_GENERIC_OFF SCMI_POWER_STATE_PARAM(1, 0)
SCMI protocol generic functions and structures.
int scmi_power_state_set(struct scmi_power_state_config *cfg)
Send the POWER_STATE_SET command and get its reply.
scmi_power_domain_message
Power domain protocol command message IDs.
Definition power.h:70
@ SCMI_POWER_DOMAIN_MSG_PROTOCOL_MESSAGE_ATTRIBUTES
Definition power.h:73
@ SCMI_POWER_DOMAIN_MSG_POWER_DOMAIN_NAME_GET
Definition power.h:79
@ SCMI_POWER_DOMAIN_MSG_PROTOCOL_ATTRIBUTES
Definition power.h:72
@ SCMI_POWER_DOMAIN_MSG_PROTOCOL_VERSION
Definition power.h:71
@ SCMI_POWER_DOMAIN_MSG_POWER_STATE_GET
Definition power.h:76
@ SCMI_POWER_DOMAIN_MSG_POWER_STATE_NOTIFY
Definition power.h:77
@ SCMI_POWER_DOMAIN_MSG_POWER_STATE_SET
Definition power.h:75
@ SCMI_POWER_DOMAIN_MSG_POWER_STATE_CHANGE_REQEUSTED_NOTIFY
Definition power.h:78
@ SCMI_POWER_DOMAIN_MSG_NEGOTIATE_PROTOCOL_VERSION
Definition power.h:80
@ SCMI_POWER_DOMAIN_MSG_POWER_DOMAIN_ATTRIBUTES
Definition power.h:74
int scmi_power_state_get(uint32_t domain_id, uint32_t *power_state)
Query the power domain state.
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
Describes the parameters for the POWER_STATE_SET command.
Definition power.h:61
uint32_t power_state
Definition power.h:64
uint32_t flags
Definition power.h:62
uint32_t domain_id
Definition power.h:63