24#define DIAG_PKT_DATA_ATTRIBUTE_SINGLE_TASK 0x1
25#define DIAG_PKT_DATA_ATTRIBUTE_DYN_MEM 0x2
87static inline uint8_t *diag_receive_pkt_handle_get_ind_data(
const diag_pkt_handle_t *pkt)
97static inline uint8_t *diag_receive_pkt_handle_get_req_data(
const diag_pkt_handle_t *pkt)
102static inline uint32_t diag_pkt_handle_get_total_size(
const diag_pkt_handle_t *pkt)
104 uint32_t total_size = 0;
105 for (
int i = 0; i < pkt->
data_cnt; i++) {
106 total_size += (uint32_t)pkt->
data_len[i];
114 for (
int i = 0; i < pkt->
data_cnt; i++) {
#define NULL
Definition common_def.h:21
uint8_t diag_addr
Definition dfx_resource_id.h:35
#define DIAG_MUX_HEADER_SIZE
Definition diag_common.h:91
#define DIAG_REQ_HEADER_SIZE
Definition diag_common.h:54
#define DIAG_IND_HEADER_SIZE
Definition diag_common.h:61
void diag_pkt_handle_set_data(diag_pkt_handle_t *pkt, uint8_t idx, uint8_t *data, uint16_t data_len, diag_pkt_data_type_t attribute)
Definition zdiag_pkt.c:47
void diag_mk_mux_header_1(msp_mux_packet_head_stru_t *mux, uint8_t type, uint16_t cmd_id, uint16_t pkt_size)
Definition zdiag_pkt.c:110
diag_pkt_mem_type_t
Definition diag_pkt.h:12
@ DIAG_PKT_MEM_TYPE_HEAD_STACK_DATA_STACK
Definition diag_pkt.h:13
@ DIAG_PKT_MEM_TYPE_HEAD_DATA_DFX_MALLOC
Definition diag_pkt.h:14
void diag_mk_ind_header(msp_diag_head_ind_stru_t *ind, uint16_t cmd_id, uint16_t packet_size)
Definition zdiag_pkt.c:103
void zdiag_mk_log_pkt_sn(diag_cmd_log_layer_ind_stru_t *log_pkt, uint32_t module_id, uint32_t msg_id, uint32_t sn)
Definition zdiag_pkt.c:75
void diag_pkt_handle_init(diag_pkt_handle_t *pkt, uint8_t data_cnt)
Definition zdiag_pkt.c:36
void diag_mk_req_header(msp_diag_head_req_stru_t *req, uint16_t cmd_id, uint16_t packet_size)
Definition zdiag_pkt.c:94
errcode_t zdiag_check_hcc_pkt(const uint8_t *data, uint16_t size)
Definition zdiag_pkt.c:28
#define DIAG_PKT_DATA_ATTRIBUTE_DYN_MEM
Definition diag_pkt.h:25
void diag_mk_mux_header_2(msp_mux_packet_head_stru_t *mux, diag_addr dst, uint16_t crc16)
Definition zdiag_pkt.c:124
void diag_mk_cnf_header(msp_diag_head_cnf_stru_t *cnf, msp_diag_ack_param_t *ack)
Definition zdiag_pkt.c:84
void diag_pkt_set_critical(diag_pkt_handle_t *pkt)
Definition zdiag_pkt.c:42
diag_pkt_data_type_t
Definition diag_pkt.h:27
@ DIAG_PKT_DATA_DFX_MALLOC
Definition diag_pkt.h:29
@ DIAG_PKT_DATA_STACK
Definition diag_pkt.h:28
errcode_t zdiag_check_mux_pkt(msp_mux_packet_head_stru_t *mux, uint16_t size)
Definition zdiag_pkt.c:13
diag_pkt_data_id_t
Definition diag_pkt.h:17
@ DIAG_PKT_DATA_ID_DATA_2
Definition diag_pkt.h:20
@ DIAG_PKT_DATA_ID_DATA_0
Definition diag_pkt.h:18
@ DIAG_PKT_DATA_ID_DATA_1
Definition diag_pkt.h:19
@ DIAG_PKT_DATA_ID_USR_MAX
Definition diag_pkt.h:21
void zdiag_mk_log_pkt(diag_cmd_log_layer_ind_stru_t *log_pkt, uint32_t module_id, uint32_t msg_id)
Definition zdiag_pkt.c:65
#define DIAG_PKT_DATA_ATTRIBUTE_SINGLE_TASK
Definition diag_pkt.h:24
uint32_t errcode_t
Definition of error code.
Definition errcode.h:30
osal_u8 type
Definition oal_net.h:0
Definition diag_common.h:36
uint8_t critical
Definition diag_pkt.h:38
uint8_t * data[DIAG_PKT_DATA_ID_USR_MAX]
Definition diag_pkt.h:33
uint8_t data_cnt
Definition diag_pkt.h:35
uint8_t need_free
Definition diag_pkt.h:36
uint16_t data_len[DIAG_PKT_DATA_ID_USR_MAX]
Definition diag_pkt.h:34
uint8_t single_task
Definition diag_pkt.h:37
diag应答结构体
Definition soc_zdiag.h:93
Definition diag_common.h:63
Definition diag_common.h:56
Definition diag_common.h:46
Definition diag_common.h:73
Definition hal_uart_v151_regs_def.h:38