Zephyr Project API 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
15
16#include <zephyr/device.h>
18#include <stdint.h>
19
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
42
43#define SCMI_SYSTEM_POWER_PROTOCOL_SUPPORTED_VERSION 0x20001
44
49
51#define SCMI_SYSTEM_POWER_STATE_SHUTDOWN 0x00000000U
53#define SCMI_SYSTEM_POWER_STATE_COLD_RESET 0x00000001U
55#define SCMI_SYSTEM_POWER_STATE_WARM_RESET 0x00000002U
57#define SCMI_SYSTEM_POWER_STATE_POWER_UP 0x00000003U
59#define SCMI_SYSTEM_POWER_STATE_SUSPEND 0x00000004U
60
62
67
69#define SCMI_SYSTEM_POWER_FLAG_SHIFT (0)
71
73#define SCMI_SYSTEM_POWER_FLAG_FORCEFUL (0 << SCMI_SYSTEM_POWER_FLAG_SHIFT)
75#define SCMI_SYSTEM_POWER_FLAG_GRACEFUL (1 << SCMI_SYSTEM_POWER_FLAG_SHIFT)
76
78
79
84
86#define SCMI_SYSTEM_MSG_ATTR_SUSPEND_SHIFT (30U)
87#define SCMI_SYSTEM_MSG_ATTR_WARM_RESET_SHIFT (31U)
89
91#define SCMI_SYSTEM_MSG_ATTR_SUSPEND (1 << SCMI_SYSTEM_MSG_ATTR_SUSPEND_SHIFT)
93#define SCMI_SYSTEM_MSG_ATTR_WARM_RESET (1 << SCMI_SYSTEM_MSG_ATTR_WARM_RESET_SHIFT)
94
96
105
115
125
136
146
156
157#ifdef __cplusplus
158}
159#endif
160
164
165#endif /* ZEPHYR_INCLUDE_DRIVERS_FIRMWARE_SCMI_SYSTEM_H_ */
Header file for the SCMI (System Control and Management Interface) driver API.
scmi_system_message
System protocol command message IDs.
Definition system.h:34
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.
@ SCMI_SYSTEM_MSG_POWER_STATE_NOTIFY
Definition system.h:39
@ SCMI_SYSTEM_MSG_NEGOTIATE_PROTOCOL_VERSION
Definition system.h:40
@ SCMI_SYSTEM_MSG_PROTOCOL_VERSION
Definition system.h:35
@ SCMI_SYSTEM_MSG_MESSAGE_ATTRIBUTES
Definition system.h:37
@ SCMI_SYSTEM_MSG_PROTOCOL_ATTRIBUTES
Definition system.h:36
@ SCMI_SYSTEM_MSG_POWER_STATE_SET
Definition system.h:38
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
System power state configuration.
Definition system.h:101
uint32_t flags
Definition system.h:102
uint32_t system_state
Definition system.h:103