Zephyr API Documentation 4.3.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
system.h
Go to the documentation of this file.
1/*
2 * Copyright 2025 NXP
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
7#ifndef ZEPHYR_INCLUDE_DRIVERS_FIRMWARE_SCMI_SYSTEM_H_
8#define ZEPHYR_INCLUDE_DRIVERS_FIRMWARE_SCMI_SYSTEM_H_
9
14
15#include <zephyr/device.h>
17#include <stdint.h>
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
34
35#define SCMI_SYSTEM_POWER_PROTOCOL_SUPPORTED_VERSION 0x20001
36
41
43#define SCMI_SYSTEM_POWER_STATE_SHUTDOWN 0x00000000U
45#define SCMI_SYSTEM_POWER_STATE_COLD_RESET 0x00000001U
47#define SCMI_SYSTEM_POWER_STATE_WARM_RESET 0x00000002U
49#define SCMI_SYSTEM_POWER_STATE_POWER_UP 0x00000003U
51#define SCMI_SYSTEM_POWER_STATE_SUSPEND 0x00000004U
52
54
59
61#define SCMI_SYSTEM_POWER_FLAG_SHIFT (0)
63
65#define SCMI_SYSTEM_POWER_FLAG_FORCEFUL (0 << SCMI_SYSTEM_POWER_FLAG_SHIFT)
67#define SCMI_SYSTEM_POWER_FLAG_GRACEFUL (1 << SCMI_SYSTEM_POWER_FLAG_SHIFT)
68
70
71
76
78#define SCMI_SYSTEM_MSG_ATTR_SUSPEND_SHIFT (30U)
79#define SCMI_SYSTEM_MSG_ATTR_WARM_RESET_SHIFT (31U)
81
83#define SCMI_SYSTEM_MSG_ATTR_SUSPEND (1 << SCMI_SYSTEM_MSG_ATTR_SUSPEND_SHIFT)
85#define SCMI_SYSTEM_MSG_ATTR_WARM_RESET (1 << SCMI_SYSTEM_MSG_ATTR_WARM_RESET_SHIFT)
86
88
97
107
117
128
138
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif /* ZEPHYR_INCLUDE_DRIVERS_FIRMWARE_SCMI_SYSTEM_H_ */
SCMI protocol generic functions and structures.
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
System power state configuration.
Definition system.h:93
uint32_t flags
Definition system.h:94
uint32_t system_state
Definition system.h:95
scmi_system_message
System protocol command message IDs.
Definition system.h:26
@ SCMI_SYSTEM_MSG_POWER_STATE_NOTIFY
Definition system.h:31
@ SCMI_SYSTEM_MSG_NEGOTIATE_PROTOCOL_VERSION
Definition system.h:32
@ SCMI_SYSTEM_MSG_PROTOCOL_VERSION
Definition system.h:27
@ SCMI_SYSTEM_MSG_MESSAGE_ATTRIBUTES
Definition system.h:29
@ SCMI_SYSTEM_MSG_PROTOCOL_ATTRIBUTES
Definition system.h:28
@ SCMI_SYSTEM_MSG_POWER_STATE_SET
Definition system.h:30
int scmi_system_protocol_version_negotiate(uint32_t version)
Negotiate protocol version.
int scmi_system_protocol_version(uint32_t *version)
Get protocol version.
int scmi_system_protocol_attributes(uint32_t *attributes)
Get protocol attributes.
int scmi_system_power_state_set(struct scmi_system_power_state_config *cfg)
Set system power state.
int scmi_system_protocol_message_attributes(uint32_t message_id, uint32_t *attributes)
Get protocol message attributes.