Lines Matching refs:resp
114 struct sk_buff *resp);
116 struct sk_buff *resp);
211 struct sk_buff *resp, in digital_recv_dep_data_gather() argument
231 if (resp->len > skb_tailroom(ddev->chaining_skb)) { in digital_recv_dep_data_gather()
246 memcpy(skb_put(ddev->chaining_skb, resp->len), resp->data, in digital_recv_dep_data_gather()
247 resp->len); in digital_recv_dep_data_gather()
249 kfree_skb(resp); in digital_recv_dep_data_gather()
250 resp = NULL; in digital_recv_dep_data_gather()
260 resp = ddev->chaining_skb; in digital_recv_dep_data_gather()
264 return resp; in digital_recv_dep_data_gather()
267 kfree_skb(resp); in digital_recv_dep_data_gather()
276 struct sk_buff *resp) in digital_in_recv_psl_res() argument
282 if (IS_ERR(resp)) { in digital_in_recv_psl_res()
283 rc = PTR_ERR(resp); in digital_in_recv_psl_res()
284 resp = NULL; in digital_in_recv_psl_res()
288 rc = ddev->skb_check_crc(resp); in digital_in_recv_psl_res()
294 rc = digital_skb_pull_dep_sod(ddev, resp); in digital_in_recv_psl_res()
300 psl_res = (struct digital_psl_res *)resp->data; in digital_in_recv_psl_res()
302 if ((resp->len != sizeof(*psl_res)) || in digital_in_recv_psl_res()
333 dev_kfree_skb(resp); in digital_in_recv_psl_res()
380 struct sk_buff *resp) in digital_in_recv_atr_res() argument
387 if (IS_ERR(resp)) { in digital_in_recv_atr_res()
388 rc = PTR_ERR(resp); in digital_in_recv_atr_res()
389 resp = NULL; in digital_in_recv_atr_res()
393 rc = ddev->skb_check_crc(resp); in digital_in_recv_atr_res()
399 rc = digital_skb_pull_dep_sod(ddev, resp); in digital_in_recv_atr_res()
405 if (resp->len < sizeof(struct digital_atr_res)) { in digital_in_recv_atr_res()
410 gb_len = resp->len - sizeof(struct digital_atr_res); in digital_in_recv_atr_res()
412 atr_res = (struct digital_atr_res *)resp->data; in digital_in_recv_atr_res()
439 dev_kfree_skb(resp); in digital_in_recv_atr_res()
655 struct sk_buff *resp) in digital_in_recv_dep_res() argument
663 if (IS_ERR(resp)) { in digital_in_recv_dep_res()
664 rc = PTR_ERR(resp); in digital_in_recv_dep_res()
665 resp = NULL; in digital_in_recv_dep_res()
690 rc = digital_skb_pull_dep_sod(ddev, resp); in digital_in_recv_dep_res()
696 rc = ddev->skb_check_crc(resp); in digital_in_recv_dep_res()
698 if ((resp->len >= 4) && in digital_in_recv_dep_res()
706 kfree_skb(resp); in digital_in_recv_dep_res()
718 if (resp->len > ddev->local_payload_max) { in digital_in_recv_dep_res()
724 dep_res = (struct digital_dep_req_res *)resp->data; in digital_in_recv_dep_res()
726 if (resp->len < size || dep_res->dir != DIGITAL_NFC_DEP_FRAME_DIR_IN || in digital_in_recv_dep_res()
745 if (size > resp->len) { in digital_in_recv_dep_res()
750 skb_pull(resp, size); in digital_in_recv_dep_res()
766 resp = digital_recv_dep_data_gather(ddev, pfb, resp, in digital_in_recv_dep_res()
769 if (IS_ERR(resp)) { in digital_in_recv_dep_res()
770 rc = PTR_ERR(resp); in digital_in_recv_dep_res()
771 resp = NULL; in digital_in_recv_dep_res()
779 if (!resp) in digital_in_recv_dep_res()
826 rc = digital_in_send_rtox(ddev, data_exch, resp->data[0]); in digital_in_recv_dep_res()
830 kfree_skb(resp); in digital_in_recv_dep_res()
835 data_exch->cb(data_exch->cb_context, resp, rc); in digital_in_recv_dep_res()
847 kfree_skb(resp); in digital_in_recv_dep_res()
1020 struct sk_buff *resp) in digital_tg_recv_dep_req() argument
1027 if (IS_ERR(resp)) { in digital_tg_recv_dep_req()
1028 rc = PTR_ERR(resp); in digital_tg_recv_dep_req()
1029 resp = NULL; in digital_tg_recv_dep_req()
1033 rc = ddev->skb_check_crc(resp); in digital_tg_recv_dep_req()
1039 rc = digital_skb_pull_dep_sod(ddev, resp); in digital_tg_recv_dep_req()
1045 if (resp->len > ddev->local_payload_max) { in digital_tg_recv_dep_req()
1051 dep_req = (struct digital_dep_req_res *)resp->data; in digital_tg_recv_dep_req()
1053 if (resp->len < size || dep_req->dir != DIGITAL_NFC_DEP_FRAME_DIR_OUT || in digital_tg_recv_dep_req()
1062 if (ddev->did && (ddev->did == resp->data[3])) { in digital_tg_recv_dep_req()
1078 if (size > resp->len) { in digital_tg_recv_dep_req()
1083 skb_pull(resp, size); in digital_tg_recv_dep_req()
1110 resp = digital_recv_dep_data_gather(ddev, pfb, resp, in digital_tg_recv_dep_req()
1112 if (IS_ERR(resp)) { in digital_tg_recv_dep_req()
1113 rc = PTR_ERR(resp); in digital_tg_recv_dep_req()
1114 resp = NULL; in digital_tg_recv_dep_req()
1122 if (!resp) in digital_tg_recv_dep_req()
1185 kfree_skb(resp); in digital_tg_recv_dep_req()
1189 rc = nfc_tm_data_received(ddev->nfc_dev, resp); in digital_tg_recv_dep_req()
1201 kfree_skb(resp); in digital_tg_recv_dep_req()
1258 void *arg, struct sk_buff *resp) in digital_tg_send_psl_res_complete() argument
1262 if (IS_ERR(resp)) in digital_tg_send_psl_res_complete()
1271 dev_kfree_skb(resp); in digital_tg_send_psl_res_complete()
1308 struct sk_buff *resp) in digital_tg_recv_psl_req() argument
1315 if (IS_ERR(resp)) { in digital_tg_recv_psl_req()
1316 rc = PTR_ERR(resp); in digital_tg_recv_psl_req()
1317 resp = NULL; in digital_tg_recv_psl_req()
1321 rc = ddev->skb_check_crc(resp); in digital_tg_recv_psl_req()
1327 rc = digital_skb_pull_dep_sod(ddev, resp); in digital_tg_recv_psl_req()
1333 psl_req = (struct digital_psl_req *)resp->data; in digital_tg_recv_psl_req()
1335 if (resp->len != sizeof(struct digital_psl_req) || in digital_tg_recv_psl_req()
1373 kfree_skb(resp); in digital_tg_recv_psl_req()
1377 void *arg, struct sk_buff *resp) in digital_tg_send_atr_res_complete() argument
1381 if (IS_ERR(resp)) { in digital_tg_send_atr_res_complete()
1387 if (resp->data[0] == DIGITAL_NFC_DEP_NFCA_SOD_SB) in digital_tg_send_atr_res_complete()
1392 if (resp->data[offset] == DIGITAL_CMD_PSL_REQ) in digital_tg_send_atr_res_complete()
1393 digital_tg_recv_psl_req(ddev, arg, resp); in digital_tg_send_atr_res_complete()
1395 digital_tg_recv_dep_req(ddev, arg, resp); in digital_tg_send_atr_res_complete()
1451 struct sk_buff *resp) in digital_tg_recv_atr_req() argument
1458 if (IS_ERR(resp)) { in digital_tg_recv_atr_req()
1459 rc = PTR_ERR(resp); in digital_tg_recv_atr_req()
1460 resp = NULL; in digital_tg_recv_atr_req()
1464 if (!resp->len) { in digital_tg_recv_atr_req()
1469 if (resp->data[0] == DIGITAL_NFC_DEP_NFCA_SOD_SB) { in digital_tg_recv_atr_req()
1477 if (resp->len < min_size) { in digital_tg_recv_atr_req()
1484 rc = ddev->skb_check_crc(resp); in digital_tg_recv_atr_req()
1490 rc = digital_skb_pull_dep_sod(ddev, resp); in digital_tg_recv_atr_req()
1496 atr_req = (struct digital_atr_req *)resp->data; in digital_tg_recv_atr_req()
1524 gb_len = resp->len - sizeof(struct digital_atr_req); in digital_tg_recv_atr_req()
1541 dev_kfree_skb(resp); in digital_tg_recv_atr_req()