| 
    Zephyr Project API
    3.4.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.