7#ifndef ZEPHYR_INCLUDE_SIP_SVC_PROTO_H_
8#define ZEPHYR_INCLUDE_SIP_SVC_PROTO_H_
25#define SIP_SVC_ID_INVALID 0xFFFFFFFF
30#define SIP_SVC_PROTO_VER 0x0
32#define SIP_SVC_PROTO_HEADER_CODE_OFFSET 0
33#define SIP_SVC_PROTO_HEADER_CODE_MASK 0xFFFF
35#define SIP_SVC_PROTO_HEADER_TRANS_ID_OFFSET 16
36#define SIP_SVC_PROTO_HEADER_TRANS_ID_MASK 0xFF
38#define SIP_SVC_PROTO_HEADER_VER_OFFSET 30
39#define SIP_SVC_PROTO_HEADER_VER_MASK 0x3
41#define SIP_SVC_PROTO_HEADER(code, trans_id) \
42 ((((code)&SIP_SVC_PROTO_HEADER_CODE_MASK) << SIP_SVC_PROTO_HEADER_CODE_OFFSET) | \
43 (((trans_id)&SIP_SVC_PROTO_HEADER_TRANS_ID_MASK) \
44 << SIP_SVC_PROTO_HEADER_TRANS_ID_OFFSET) | \
45 ((SIP_SVC_PROTO_VER & SIP_SVC_PROTO_HEADER_VER_MASK) << SIP_SVC_PROTO_HEADER_VER_OFFSET))
47#define SIP_SVC_PROTO_HEADER_GET_CODE(header) \
48 (((header) >> SIP_SVC_PROTO_HEADER_CODE_OFFSET) & SIP_SVC_PROTO_HEADER_CODE_MASK)
50#define SIP_SVC_PROTO_HEADER_GET_TRANS_ID(header) \
51 (((header) >> SIP_SVC_PROTO_HEADER_TRANS_ID_OFFSET) & SIP_SVC_PROTO_HEADER_TRANS_ID_MASK)
53#define SIP_SVC_PROTO_HEADER_SET_TRANS_ID(header, trans_id) \
54 (header) &= ~(SIP_SVC_PROTO_HEADER_TRANS_ID_MASK << SIP_SVC_PROTO_HEADER_TRANS_ID_OFFSET); \
55 (header) |= (((trans_id)&SIP_SVC_PROTO_HEADER_TRANS_ID_MASK) \
56 << SIP_SVC_PROTO_HEADER_TRANS_ID_OFFSET);
70#define SIP_SVC_PROTO_CMD_SYNC 0x0
71#define SIP_SVC_PROTO_CMD_ASYNC 0x1
72#define SIP_SVC_PROTO_CMD_MAX SIP_SVC_PROTO_CMD_ASYNC
98#define SIP_SVC_PROTO_STATUS_OK 0x0
99#define SIP_SVC_PROTO_STATUS_UNKNOWN 0xFFFF
100#define SIP_SVC_PROTO_STATUS_BUSY 0x1
101#define SIP_SVC_PROTO_STATUS_REJECT 0x2
102#define SIP_SVC_PROTO_STATUS_NO_RESPONSE 0x3
103#define SIP_SVC_PROTO_STATUS_ERROR 0x4
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__UINT64_TYPE__ uint64_t
Definition stdint.h:91
SiP Service communication protocol request format.
Definition sip_svc_proto.h:133
void * priv_data
Definition sip_svc_proto.h:145
unsigned long a6
Definition sip_svc_proto.h:141
unsigned long a1
Definition sip_svc_proto.h:136
unsigned long a5
Definition sip_svc_proto.h:140
unsigned long a3
Definition sip_svc_proto.h:138
unsigned long a4
Definition sip_svc_proto.h:139
unsigned long a0
Definition sip_svc_proto.h:135
uint64_t resp_data_addr
Definition sip_svc_proto.h:143
unsigned long a2
Definition sip_svc_proto.h:137
uint32_t header
Definition sip_svc_proto.h:134
unsigned long a7
Definition sip_svc_proto.h:142
uint32_t resp_data_size
Definition sip_svc_proto.h:144
SiP Services service communication protocol response format.
Definition sip_svc_proto.h:177
uint32_t resp_data_size
Definition sip_svc_proto.h:184
unsigned long a0
Definition sip_svc_proto.h:179
uint64_t resp_data_addr
Definition sip_svc_proto.h:183
void * priv_data
Definition sip_svc_proto.h:185
unsigned long a3
Definition sip_svc_proto.h:182
uint32_t header
Definition sip_svc_proto.h:178
unsigned long a1
Definition sip_svc_proto.h:180
unsigned long a2
Definition sip_svc_proto.h:181