Lines Matching refs:skb
38 void nci_data_exchange_complete(struct nci_dev *ndev, struct sk_buff *skb, in nci_data_exchange_complete() argument
47 kfree_skb(skb); in nci_data_exchange_complete()
54 pr_debug("len %d, err %d\n", skb ? skb->len : 0, err); in nci_data_exchange_complete()
62 cb(cb_context, skb, err); in nci_data_exchange_complete()
63 } else if (skb) { in nci_data_exchange_complete()
67 kfree_skb(skb); in nci_data_exchange_complete()
78 struct sk_buff *skb, in nci_push_data_hdr() argument
82 int plen = skb->len; in nci_push_data_hdr()
84 hdr = (struct nci_data_hdr *) skb_push(skb, NCI_DATA_HDR_SIZE); in nci_push_data_hdr()
107 struct sk_buff *skb) { in nci_queue_tx_data_frags() argument
109 int total_len = skb->len; in nci_queue_tx_data_frags()
110 unsigned char *data = skb->data; in nci_queue_tx_data_frags()
166 kfree_skb(skb); in nci_queue_tx_data_frags()
179 int nci_send_data(struct nci_dev *ndev, __u8 conn_id, struct sk_buff *skb) in nci_send_data() argument
184 pr_debug("conn_id 0x%x, plen %d\n", conn_id, skb->len); in nci_send_data()
193 if (skb->len <= conn_info->max_pkt_payload_len) { in nci_send_data()
195 nci_push_data_hdr(ndev, conn_id, skb, NCI_PBF_LAST); in nci_send_data()
197 skb_queue_tail(&ndev->tx_q, skb); in nci_send_data()
200 rc = nci_queue_tx_data_frags(ndev, conn_id, skb); in nci_send_data()
213 kfree_skb(skb); in nci_send_data()
223 struct sk_buff *skb, in nci_add_rx_data_frag() argument
238 if (skb_cow_head(skb, reassembly_len)) { in nci_add_rx_data_frag()
241 kfree_skb(skb); in nci_add_rx_data_frag()
242 skb = NULL; in nci_add_rx_data_frag()
252 memcpy(skb_push(skb, reassembly_len), in nci_add_rx_data_frag()
263 ndev->rx_data_reassembly = skb; in nci_add_rx_data_frag()
270 err = nfc_tm_data_received(ndev->nfc_dev, skb); in nci_add_rx_data_frag()
274 nci_data_exchange_complete(ndev, skb, conn_id, err); in nci_add_rx_data_frag()
279 void nci_rx_data_packet(struct nci_dev *ndev, struct sk_buff *skb) in nci_rx_data_packet() argument
281 __u8 pbf = nci_pbf(skb->data); in nci_rx_data_packet()
283 __u8 conn_id = nci_conn_id(skb->data); in nci_rx_data_packet()
286 pr_debug("len %d\n", skb->len); in nci_rx_data_packet()
289 nci_pbf(skb->data), in nci_rx_data_packet()
290 nci_conn_id(skb->data), in nci_rx_data_packet()
291 nci_plen(skb->data)); in nci_rx_data_packet()
293 conn_info = nci_get_conn_info_by_conn_id(ndev, nci_conn_id(skb->data)); in nci_rx_data_packet()
298 skb_pull(skb, NCI_DATA_HDR_SIZE); in nci_rx_data_packet()
306 status = skb->data[skb->len - 1]; in nci_rx_data_packet()
307 skb_trim(skb, (skb->len - 1)); in nci_rx_data_packet()
310 nci_add_rx_data_frag(ndev, skb, pbf, conn_id, nci_to_errno(status)); in nci_rx_data_packet()