Lines Matching refs:ndev
38 void nci_data_exchange_complete(struct nci_dev *ndev, struct sk_buff *skb, in nci_data_exchange_complete() argument
45 conn_info = nci_get_conn_info_by_conn_id(ndev, conn_id); in nci_data_exchange_complete()
57 del_timer_sync(&ndev->data_timer); in nci_data_exchange_complete()
58 clear_bit(NCI_DATA_EXCHANGE_TO, &ndev->flags); in nci_data_exchange_complete()
71 clear_bit(NCI_DATA_EXCHANGE, &ndev->flags); in nci_data_exchange_complete()
76 static inline void nci_push_data_hdr(struct nci_dev *ndev, in nci_push_data_hdr() argument
93 int nci_conn_max_data_pkt_payload_size(struct nci_dev *ndev, __u8 conn_id) in nci_conn_max_data_pkt_payload_size() argument
97 conn_info = nci_get_conn_info_by_conn_id(ndev, conn_id); in nci_conn_max_data_pkt_payload_size()
105 static int nci_queue_tx_data_frags(struct nci_dev *ndev, in nci_queue_tx_data_frags() argument
119 conn_info = nci_get_conn_info_by_conn_id(ndev, conn_id); in nci_queue_tx_data_frags()
131 skb_frag = nci_skb_alloc(ndev, in nci_queue_tx_data_frags()
144 nci_push_data_hdr(ndev, conn_id, skb_frag, in nci_queue_tx_data_frags()
158 spin_lock_irqsave(&ndev->tx_q.lock, flags); in nci_queue_tx_data_frags()
161 __skb_queue_tail(&ndev->tx_q, skb_frag); in nci_queue_tx_data_frags()
163 spin_unlock_irqrestore(&ndev->tx_q.lock, flags); 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
186 conn_info = nci_get_conn_info_by_conn_id(ndev, conn_id); 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()
207 ndev->cur_conn_id = conn_id; in nci_send_data()
208 queue_work(ndev->tx_wq, &ndev->tx_work); in nci_send_data()
222 static void nci_add_rx_data_frag(struct nci_dev *ndev, in nci_add_rx_data_frag() argument
234 if (ndev->rx_data_reassembly) { in nci_add_rx_data_frag()
235 reassembly_len = ndev->rx_data_reassembly->len; in nci_add_rx_data_frag()
244 kfree_skb(ndev->rx_data_reassembly); in nci_add_rx_data_frag()
245 ndev->rx_data_reassembly = NULL; in nci_add_rx_data_frag()
253 ndev->rx_data_reassembly->data, in nci_add_rx_data_frag()
257 kfree_skb(ndev->rx_data_reassembly); in nci_add_rx_data_frag()
258 ndev->rx_data_reassembly = NULL; in nci_add_rx_data_frag()
263 ndev->rx_data_reassembly = skb; in nci_add_rx_data_frag()
268 if (ndev->nfc_dev->rf_mode == NFC_RF_TARGET) { 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
293 conn_info = nci_get_conn_info_by_conn_id(ndev, nci_conn_id(skb->data)); in nci_rx_data_packet()
300 if (ndev->target_active_prot == NFC_PROTO_MIFARE || in nci_rx_data_packet()
301 ndev->target_active_prot == NFC_PROTO_JEWEL || in nci_rx_data_packet()
302 ndev->target_active_prot == NFC_PROTO_FELICA || in nci_rx_data_packet()
303 ndev->target_active_prot == NFC_PROTO_ISO15693) { 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()