Lines Matching refs:llcp_sock
83 struct nfc_llcp_sock *llcp_sock; in nfc_llcp_socket_release() local
90 llcp_sock = nfc_llcp_sock(sk); in nfc_llcp_socket_release()
94 nfc_llcp_socket_purge(llcp_sock); in nfc_llcp_socket_release()
97 nfc_put_device(llcp_sock->dev); in nfc_llcp_socket_release()
104 &llcp_sock->accept_queue, in nfc_llcp_socket_release()
139 llcp_sock = nfc_llcp_sock(sk); in nfc_llcp_socket_release()
143 nfc_llcp_socket_purge(llcp_sock); in nfc_llcp_socket_release()
202 struct nfc_llcp_sock *llcp_sock, *tmp_sock; in nfc_llcp_sock_get() local
211 llcp_sock = NULL; in nfc_llcp_sock_get()
217 llcp_sock = tmp_sock; in nfc_llcp_sock_get()
224 if (llcp_sock == NULL) in nfc_llcp_sock_get()
227 sock_hold(&llcp_sock->sk); in nfc_llcp_sock_get()
229 return llcp_sock; in nfc_llcp_sock_get()
343 struct nfc_llcp_sock *llcp_sock, *tmp_sock; in nfc_llcp_sock_from_sn() local
352 llcp_sock = NULL; in nfc_llcp_sock_from_sn()
375 llcp_sock = tmp_sock; in nfc_llcp_sock_from_sn()
382 pr_debug("Found llcp sock %p\n", llcp_sock); in nfc_llcp_sock_from_sn()
384 return llcp_sock; in nfc_llcp_sock_from_sn()
716 struct nfc_llcp_sock *llcp_sock; in nfc_llcp_tx_work() local
721 llcp_sock = nfc_llcp_sock(sk); in nfc_llcp_tx_work()
723 if (llcp_sock == NULL && nfc_llcp_ptype(skb) == LLCP_PDU_I) { in nfc_llcp_tx_work()
726 } else if (llcp_sock && !llcp_sock->remote_ready) { in nfc_llcp_tx_work()
762 skb_queue_tail(&llcp_sock->tx_pending_queue, in nfc_llcp_tx_work()
778 struct nfc_llcp_sock *llcp_sock; in nfc_llcp_connecting_sock_get() local
783 llcp_sock = nfc_llcp_sock(sk); in nfc_llcp_connecting_sock_get()
785 if (llcp_sock->ssap == ssap) { in nfc_llcp_connecting_sock_get()
786 sock_hold(&llcp_sock->sk); in nfc_llcp_connecting_sock_get()
791 llcp_sock = NULL; in nfc_llcp_connecting_sock_get()
796 return llcp_sock; in nfc_llcp_connecting_sock_get()
802 struct nfc_llcp_sock *llcp_sock; in nfc_llcp_sock_get_sn() local
804 llcp_sock = nfc_llcp_sock_from_sn(local, sn, sn_len); in nfc_llcp_sock_get_sn()
806 if (llcp_sock == NULL) in nfc_llcp_sock_get_sn()
809 sock_hold(&llcp_sock->sk); in nfc_llcp_sock_get_sn()
811 return llcp_sock; in nfc_llcp_sock_get_sn()
840 struct nfc_llcp_sock *llcp_sock; in nfc_llcp_recv_ui() local
854 llcp_sock = nfc_llcp_sock_get(local, dsap, LLCP_SAP_SDP); in nfc_llcp_recv_ui()
855 if (llcp_sock == NULL || llcp_sock->sk.sk_type != SOCK_DGRAM) in nfc_llcp_recv_ui()
860 if (!sock_queue_rcv_skb(&llcp_sock->sk, skb)) { in nfc_llcp_recv_ui()
870 nfc_llcp_sock_put(llcp_sock); in nfc_llcp_recv_ui()
1026 struct nfc_llcp_sock *llcp_sock; in nfc_llcp_recv_hdlc() local
1038 llcp_sock = nfc_llcp_sock_get(local, dsap, ssap); in nfc_llcp_recv_hdlc()
1039 if (llcp_sock == NULL) { in nfc_llcp_recv_hdlc()
1044 sk = &llcp_sock->sk; in nfc_llcp_recv_hdlc()
1048 nfc_llcp_sock_put(llcp_sock); in nfc_llcp_recv_hdlc()
1053 pr_debug("I frame, queueing on %p\n", &llcp_sock->sk); in nfc_llcp_recv_hdlc()
1055 if (ns == llcp_sock->recv_n) in nfc_llcp_recv_hdlc()
1056 llcp_sock->recv_n = (llcp_sock->recv_n + 1) % 16; in nfc_llcp_recv_hdlc()
1061 if (!sock_queue_rcv_skb(&llcp_sock->sk, skb)) { in nfc_llcp_recv_hdlc()
1073 if (llcp_sock->send_ack_n != nr) { in nfc_llcp_recv_hdlc()
1077 llcp_sock->send_ack_n = nr; in nfc_llcp_recv_hdlc()
1080 skb_queue_walk_safe(&llcp_sock->tx_pending_queue, s, tmp) { in nfc_llcp_recv_hdlc()
1083 skb_unlink(s, &llcp_sock->tx_pending_queue); in nfc_llcp_recv_hdlc()
1091 skb_queue_reverse_walk_safe(&llcp_sock->tx_pending_queue, in nfc_llcp_recv_hdlc()
1093 skb_unlink(s, &llcp_sock->tx_pending_queue); in nfc_llcp_recv_hdlc()
1099 llcp_sock->remote_ready = true; in nfc_llcp_recv_hdlc()
1101 llcp_sock->remote_ready = false; in nfc_llcp_recv_hdlc()
1103 if (nfc_llcp_queue_i_frames(llcp_sock) == 0 && ptype == LLCP_PDU_I) in nfc_llcp_recv_hdlc()
1104 nfc_llcp_send_rr(llcp_sock); in nfc_llcp_recv_hdlc()
1107 nfc_llcp_sock_put(llcp_sock); in nfc_llcp_recv_hdlc()
1113 struct nfc_llcp_sock *llcp_sock; in nfc_llcp_recv_disc() local
1126 llcp_sock = nfc_llcp_sock_get(local, dsap, ssap); in nfc_llcp_recv_disc()
1127 if (llcp_sock == NULL) { in nfc_llcp_recv_disc()
1132 sk = &llcp_sock->sk; in nfc_llcp_recv_disc()
1135 nfc_llcp_socket_purge(llcp_sock); in nfc_llcp_recv_disc()
1139 nfc_llcp_sock_put(llcp_sock); in nfc_llcp_recv_disc()
1151 nfc_llcp_sock_put(llcp_sock); in nfc_llcp_recv_disc()
1156 struct nfc_llcp_sock *llcp_sock; in nfc_llcp_recv_cc() local
1163 llcp_sock = nfc_llcp_connecting_sock_get(local, dsap); in nfc_llcp_recv_cc()
1164 if (llcp_sock == NULL) { in nfc_llcp_recv_cc()
1171 sk = &llcp_sock->sk; in nfc_llcp_recv_cc()
1176 llcp_sock->dsap = ssap; in nfc_llcp_recv_cc()
1178 nfc_llcp_parse_connection_tlv(llcp_sock, &skb->data[LLCP_HEADER_SIZE], in nfc_llcp_recv_cc()
1184 nfc_llcp_sock_put(llcp_sock); in nfc_llcp_recv_cc()
1189 struct nfc_llcp_sock *llcp_sock; in nfc_llcp_recv_dm() local
1202 llcp_sock = nfc_llcp_connecting_sock_get(local, dsap); in nfc_llcp_recv_dm()
1206 llcp_sock = nfc_llcp_sock_get(local, dsap, ssap); in nfc_llcp_recv_dm()
1210 if (llcp_sock == NULL) { in nfc_llcp_recv_dm()
1215 sk = &llcp_sock->sk; in nfc_llcp_recv_dm()
1221 nfc_llcp_sock_put(llcp_sock); in nfc_llcp_recv_dm()
1227 struct nfc_llcp_sock *llcp_sock; in nfc_llcp_recv_snl() local
1271 llcp_sock = nfc_llcp_sock_from_sn(local, service_name, in nfc_llcp_recv_snl()
1273 if (!llcp_sock) { in nfc_llcp_recv_snl()
1283 if (llcp_sock->ssap == LLCP_SDP_UNBOUND) { in nfc_llcp_recv_snl()
1301 llcp_sock->ssap = sap; in nfc_llcp_recv_snl()
1302 llcp_sock->reserved_ssap = sap; in nfc_llcp_recv_snl()
1304 sap = llcp_sock->ssap; in nfc_llcp_recv_snl()
1307 pr_debug("%p %d\n", llcp_sock, sap); in nfc_llcp_recv_snl()