Zephyr Project API 3.7.0
A Scalable Open Source RTOS
|
Arm SiP services communication protocol between service provider and client. More...
Go to the source code of this file.
Data Structures | |
struct | sip_svc_request |
SiP Service communication protocol request format. More... | |
struct | sip_svc_response |
SiP Services service communication protocol response format. More... | |
Arm SiP services communication protocol between service provider and client.
Client to fill in the input data in struct sip_svc_request format when requesting SMC/HVC service via 'send' function.
Service to fill in the SMC/HVC return value in struct sip_svc_response format and pass to client via Callback.
#define SIP_SVC_ID_INVALID 0xFFFFFFFF |
Invalid id value.
#define SIP_SVC_PROTO_CMD_ASYNC 0x1 |
#define SIP_SVC_PROTO_CMD_MAX SIP_SVC_PROTO_CMD_ASYNC |
#define SIP_SVC_PROTO_CMD_SYNC 0x0 |
Arm SiP services command code in request header.
SIP_SVC_PROTO_CMD_SYNC
SIP_SVC_PROTO_CMD_ASYNC
#define SIP_SVC_PROTO_HEADER | ( | code, | |
trans_id | |||
) |
#define SIP_SVC_PROTO_HEADER_CODE_MASK 0xFFFF |
#define SIP_SVC_PROTO_HEADER_CODE_OFFSET 0 |
#define SIP_SVC_PROTO_HEADER_GET_CODE | ( | header | ) | (((header) >> SIP_SVC_PROTO_HEADER_CODE_OFFSET) & SIP_SVC_PROTO_HEADER_CODE_MASK) |
#define SIP_SVC_PROTO_HEADER_GET_TRANS_ID | ( | header | ) | (((header) >> SIP_SVC_PROTO_HEADER_TRANS_ID_OFFSET) & SIP_SVC_PROTO_HEADER_TRANS_ID_MASK) |
#define SIP_SVC_PROTO_HEADER_SET_TRANS_ID | ( | header, | |
trans_id | |||
) |
#define SIP_SVC_PROTO_HEADER_TRANS_ID_MASK 0xFF |
#define SIP_SVC_PROTO_HEADER_TRANS_ID_OFFSET 16 |
#define SIP_SVC_PROTO_HEADER_VER_MASK 0x3 |
#define SIP_SVC_PROTO_HEADER_VER_OFFSET 30 |
#define SIP_SVC_PROTO_STATUS_BUSY 0x1 |
#define SIP_SVC_PROTO_STATUS_ERROR 0x4 |
#define SIP_SVC_PROTO_STATUS_NO_RESPONSE 0x3 |
#define SIP_SVC_PROTO_STATUS_OK 0x0 |
Error code in response header.
SIP_SVC_PROTO_STATUS_OK
SIP_SVC_PROTO_STATUS_UNKNOWN
SIP_SVC_PROTO_STATUS_BUSY
SIP_SVC_PROTO_STATUS_REJECT
SIP_SVC_PROTO_STATUS_NO_RESPONSE
SIP_SVC_PROTO_STATUS_ERROR
SIP_SVC_PROTO_STATUS_NOT_SUPPORT
#define SIP_SVC_PROTO_STATUS_REJECT 0x2 |
#define SIP_SVC_PROTO_STATUS_UNKNOWN 0xFFFF |
#define SIP_SVC_PROTO_VER 0x0 |
Header format.