Home | History | Annotate | Download | only in avrc

Lines Matching refs:p_pkt

95 static UINT8 * avrc_get_data_ptr(BT_HDR *p_pkt)
97 UINT8 *p_data = (UINT8 *)(p_pkt+1) + p_pkt->offset;
100 if (p_pkt->offset < AVCT_MSG_OFFSET)
102 gap = AVCT_MSG_OFFSET - p_pkt->offset;
103 for(i=p_pkt->len; i>0; i--)
107 p_pkt->offset += gap;
108 p_data = (UINT8 *)(p_pkt+1) + p_pkt->offset;
165 BT_HDR *p_pkt_old, *p_pkt;
171 p_pkt = p_fcb->p_fmsg;
173 AVRC_TRACE_DEBUG1 ("avrc_send_continue_frag len(%d) / AVRC_MAX_CTRL_DATA_LEN", p_pkt->len );
174 if (p_pkt->len > AVRC_MAX_CTRL_DATA_LEN)
177 p_pkt = (BT_HDR *)GKI_getbuf((UINT16)(AVRC_PACKET_LEN + AVCT_MSG_OFFSET + BT_HDR_SIZE));
178 if (p_pkt)
180 p_pkt->len = AVRC_MAX_CTRL_DATA_LEN;
181 p_pkt->offset = AVCT_MSG_OFFSET;
182 p_pkt->layer_specific = p_pkt_old->layer_specific;
183 p_pkt->event = p_pkt_old->event;
185 p_data = (UINT8 *)(p_pkt+1) + p_pkt->offset;
200 p_pkt = p_fcb->p_fmsg;
204 p_data = (UINT8 *)(p_pkt+1) + p_pkt->offset;
208 p_pkt->len = 4;
211 AVRC_BldResponse( handle, (tAVRC_RESPONSE *)&rej_rsp, &p_pkt);
221 AVCT_MsgReq( handle, label, cr, p_pkt);
234 BT_HDR *p_pkt, tAVRC_MSG_VENDOR *p_msg)
244 p_begin = (UINT8 *)(p_pkt+1) + p_pkt->offset;
266 p_begin = (UINT8 *)(p_pkt+1) + p_pkt->offset;
277 p_pkt->len = (p_data - p_begin);
279 AVCT_MsgReq( handle, label, AVCT_RSP, p_pkt);
280 p_msg->hdr.opcode = AVRC_OP_DROP; /* used the p_pkt to send response */
323 p_data = (UINT8 *)(p_pkt+1) + p_pkt->offset;
329 p_pkt->len = AVRC_VENDOR_HDR_SIZE + 5;
330 p_rsp = p_pkt;
349 BT_HDR *p_pkt = *pp_pkt;
361 p_data = (UINT8 *)(p_pkt+1) + p_pkt->offset;
384 p_rcb->rasm_offset = p_pkt->offset;
385 p_rcb->p_rmsg = p_pkt;
396 p_pkt->offset += (AVRC_VENDOR_HDR_SIZE + AVRC_MIN_META_HDR_SIZE);
397 p_pkt->len -= (AVRC_VENDOR_HDR_SIZE + AVRC_MIN_META_HDR_SIZE);
399 if ((p_rcb->p_rmsg->offset + p_pkt->len) > buf_len)
402 p_pkt->len = buf_len - p_rcb->p_rmsg->offset;
406 /* copy contents of p_pkt to p_rx_msg */
408 (UINT8 *)(p_pkt + 1) + p_pkt->offset, p_pkt->len);
413 p_rcb->p_rmsg->len += p_pkt->len;
425 AVRC_TRACE_DEBUG3("end frag:%d, total len:%d, offset:%d", p_pkt->len,
430 p_rcb->p_rmsg->offset += p_pkt->len;
431 p_rcb->p_rmsg->len += p_pkt->len;
435 GKI_freebuf(p_pkt);
472 BT_HDR *p_pkt)
490 (p_pkt->layer_specific & AVCT_DATA_CTRL && AVRC_PACKET_LEN < sizeof(p_pkt->len)))
496 GKI_freebuf(p_pkt);
504 GKI_freebuf(p_pkt);
509 p_data = (UINT8 *)(p_pkt+1) + p_pkt->offset;
514 handle, msg.hdr.ctype, p_pkt->offset, p_pkt->len);
530 p_rsp = p_pkt; /* this also sets free = FALSE, drop = TRUE */
534 p_rsp_data = avrc_get_data_ptr(p_pkt) + AVRC_AVC_HDR_SIZE;
560 p_rsp = p_pkt; /* this also sets free = FALSE, drop = TRUE */
563 p_rsp_data = avrc_get_data_ptr(p_pkt) + 4;
591 p_data = (UINT8 *)(p_pkt+1) + p_pkt->offset;
593 if (p_pkt->len < AVRC_VENDOR_HDR_SIZE) /* 6 = ctype, subunit*, opcode & CO_ID */
604 p_msg->vendor_len = p_pkt->len - (p_data - p_begin);
607 drop = avrc_proc_far_msg(handle, label, cr, &p_pkt, p_msg);
637 if (p_pkt->len < 5) /* 3 bytes: ctype, subunit*, opcode & op_id & len */
653 if (msg.pass.pass_len != p_pkt->len - 5)
654 msg.pass.pass_len = p_pkt->len - 5;
680 p_rsp = p_pkt; /* this also sets free = FALSE, drop = TRUE */
681 p_rsp_data = avrc_get_data_ptr(p_pkt);
714 GKI_freebuf(p_pkt);
876 ** Description This function is used to send the AVRCP byte stream in p_pkt
879 ** It is expected that p_pkt->offset is at least AVCT_MSG_OFFSET
880 ** p_pkt->layer_specific is AVCT_DATA_CTRL or AVCT_DATA_BROWSE
881 ** p_pkt->event is AVRC_OP_VENDOR, AVRC_OP_PASS_THRU or AVRC_OP_BROWSE
888 UINT16 AVRC_MsgReq (UINT8 handle, UINT8 label, UINT8 ctype, BT_HDR *p_pkt)
899 if (!p_pkt)
905 if (p_pkt->event == AVRC_OP_VENDOR)
908 p_start = ((UINT8 *)(p_pkt + 1) + p_pkt->offset);
909 p_pkt->offset -= AVRC_VENDOR_HDR_SIZE;
910 p_pkt->len += AVRC_VENDOR_HDR_SIZE;
911 p_data = (UINT8 *)(p_pkt + 1) + p_pkt->offset;
917 else if (p_pkt->event == AVRC_OP_PASS_THRU)
920 p_start = ((UINT8 *)(p_pkt + 1) + p_pkt->offset);
921 p_pkt->offset -= AVRC_PASS_THRU_SIZE;
922 p_pkt->len += AVRC_PASS_THRU_SIZE;
923 p_data = (UINT8 *)(p_pkt + 1) + p_pkt->offset;
947 if (p_pkt->len > AVRC_MAX_CTRL_DATA_LEN)
949 AVRC_TRACE_DEBUG1 ("p_pkt->len(%d) > AVRC_MAX_CTRL_DATA_LEN", p_pkt->len );
955 p_fcb->p_fmsg = p_pkt;
957 p_pkt = p_pkt_new;
959 p_pkt->len = AVRC_MAX_CTRL_DATA_LEN;
960 p_pkt->offset = p_pkt_new->offset;
961 p_pkt->layer_specific = p_pkt_new->layer_specific;
962 p_pkt->event = p_pkt_new->event;
963 p_data = (UINT8 *)(p_pkt+1) + p_pkt->offset;
976 AVRC_TRACE_DEBUG3 ("p_pkt len:%d/%d, next len:%d", p_pkt->len, len, p_fcb->p_fmsg->len );
981 GKI_freebuf(p_pkt);
987 return AVCT_MsgReq( handle, label, cr, p_pkt);