Lines Matching refs:ddev

164 static int digital_in_send_sdd_req(struct nfc_digital_dev *ddev,
167 int digital_in_iso_dep_pull_sod(struct nfc_digital_dev *ddev,
195 int digital_in_iso_dep_push_sod(struct nfc_digital_dev *ddev,
202 if (skb->len + 3 > ddev->target_fsc)
207 *skb->data = DIGITAL_ISO_DEP_I_PCB | ddev->curr_nfc_dep_pni;
209 ddev->curr_nfc_dep_pni =
210 DIGITAL_ISO_DEP_PNI(ddev->curr_nfc_dep_pni + 1);
215 static void digital_in_recv_ats(struct nfc_digital_dev *ddev, void *arg,
235 ddev->target_fsc = DIGITAL_ATS_MAX_FSC;
237 ddev->target_fsc = digital_ats_fsc[fsdi];
239 ddev->curr_nfc_dep_pni = 0;
241 rc = digital_target_found(ddev, target, NFC_PROTO_ISO14443);
248 digital_poll_next_tech(ddev);
251 static int digital_in_send_rats(struct nfc_digital_dev *ddev,
257 skb = digital_skb_alloc(ddev, 2);
264 rc = digital_in_send_cmd(ddev, skb, 30, digital_in_recv_ats,
272 static void digital_in_recv_sel_res(struct nfc_digital_dev *ddev, void *arg,
286 if (!DIGITAL_DRV_CAPS_IN_CRC(ddev)) {
302 rc = digital_in_send_sdd_req(ddev, target);
316 rc = digital_in_send_rats(ddev, target);
329 rc = digital_target_found(ddev, target, nfc_proto);
338 digital_poll_next_tech(ddev);
341 static int digital_in_send_sel_req(struct nfc_digital_dev *ddev,
350 skb = digital_skb_alloc(ddev, sizeof(struct digital_sel_req));
369 if (DIGITAL_DRV_CAPS_IN_CRC(ddev)) {
370 rc = digital_in_configure_hw(ddev, NFC_DIGITAL_CONFIG_FRAMING,
378 rc = digital_in_send_cmd(ddev, skb, 30, digital_in_recv_sel_res,
387 static void digital_in_recv_sdd_res(struct nfc_digital_dev *ddev, void *arg,
431 rc = digital_in_send_sel_req(ddev, target, sdd_res);
438 digital_poll_next_tech(ddev);
442 static int digital_in_send_sdd_req(struct nfc_digital_dev *ddev,
449 rc = digital_in_configure_hw(ddev, NFC_DIGITAL_CONFIG_FRAMING,
454 skb = digital_skb_alloc(ddev, 2);
468 rc = digital_in_send_cmd(ddev, skb, 30, digital_in_recv_sdd_res,
476 static void digital_in_recv_sens_res(struct nfc_digital_dev *ddev, void *arg,
508 rc = digital_target_found(ddev, target, NFC_PROTO_JEWEL);
510 rc = digital_in_send_sdd_req(ddev, target);
517 digital_poll_next_tech(ddev);
521 int digital_in_send_sens_req(struct nfc_digital_dev *ddev, u8 rf_tech)
526 rc = digital_in_configure_hw(ddev, NFC_DIGITAL_CONFIG_RF_TECH,
531 rc = digital_in_configure_hw(ddev, NFC_DIGITAL_CONFIG_FRAMING,
536 skb = digital_skb_alloc(ddev, 1);
542 rc = digital_in_send_cmd(ddev, skb, 30, digital_in_recv_sens_res, NULL);
575 static void digital_in_recv_attrib_res(struct nfc_digital_dev *ddev, void *arg,
602 rc = digital_target_found(ddev, target, NFC_PROTO_ISO14443_B);
609 digital_poll_next_tech(ddev);
612 static int digital_in_send_attrib_req(struct nfc_digital_dev *ddev,
620 skb = digital_skb_alloc(ddev, sizeof(*attrib_req));
637 rc = digital_in_send_cmd(ddev, skb, 30, digital_in_recv_attrib_res,
645 static void digital_in_recv_sensb_res(struct nfc_digital_dev *ddev, void *arg,
687 ddev->target_fsc = DIGITAL_ATS_MAX_FSC;
689 ddev->target_fsc = digital_ats_fsc[fsci];
697 rc = digital_in_send_attrib_req(ddev, target, sensb_res);
704 digital_poll_next_tech(ddev);
708 int digital_in_send_sensb_req(struct nfc_digital_dev *ddev, u8 rf_tech)
714 rc = digital_in_configure_hw(ddev, NFC_DIGITAL_CONFIG_RF_TECH,
719 rc = digital_in_configure_hw(ddev, NFC_DIGITAL_CONFIG_FRAMING,
724 skb = digital_skb_alloc(ddev, sizeof(*sensb_req));
734 rc = digital_in_send_cmd(ddev, skb, 30, digital_in_recv_sensb_res,
742 static void digital_in_recv_sensf_res(struct nfc_digital_dev *ddev, void *arg,
761 if (!DIGITAL_DRV_CAPS_IN_CRC(ddev)) {
787 rc = digital_target_found(ddev, &target, proto);
793 digital_poll_next_tech(ddev);
796 int digital_in_send_sensf_req(struct nfc_digital_dev *ddev, u8 rf_tech)
803 rc = digital_in_configure_hw(ddev, NFC_DIGITAL_CONFIG_RF_TECH, rf_tech);
807 rc = digital_in_configure_hw(ddev, NFC_DIGITAL_CONFIG_FRAMING,
814 skb = digital_skb_alloc(ddev, size);
829 if (!DIGITAL_DRV_CAPS_IN_CRC(ddev))
832 rc = digital_in_send_cmd(ddev, skb, 30, digital_in_recv_sensf_res,
840 static void digital_in_recv_iso15693_inv_res(struct nfc_digital_dev *ddev,
876 rc = digital_target_found(ddev, target, NFC_PROTO_ISO15693);
884 digital_poll_next_tech(ddev);
887 int digital_in_send_iso15693_inv_req(struct nfc_digital_dev *ddev, u8 rf_tech)
893 rc = digital_in_configure_hw(ddev, NFC_DIGITAL_CONFIG_RF_TECH,
898 rc = digital_in_configure_hw(ddev, NFC_DIGITAL_CONFIG_FRAMING,
903 skb = digital_skb_alloc(ddev, sizeof(*req));
919 rc = digital_in_send_cmd(ddev, skb, 30,
927 static int digital_tg_send_sel_res(struct nfc_digital_dev *ddev)
932 skb = digital_skb_alloc(ddev, 1);
938 if (!DIGITAL_DRV_CAPS_TG_CRC(ddev))
941 rc = digital_tg_configure_hw(ddev, NFC_DIGITAL_CONFIG_FRAMING,
948 rc = digital_tg_send_cmd(ddev, skb, 300, digital_tg_recv_atr_req,
956 static void digital_tg_recv_sel_req(struct nfc_digital_dev *ddev, void *arg,
967 if (!DIGITAL_DRV_CAPS_TG_CRC(ddev)) {
977 rc = digital_tg_send_sel_res(ddev);
981 digital_poll_next_tech(ddev);
986 static int digital_tg_send_sdd_res(struct nfc_digital_dev *ddev)
992 skb = digital_skb_alloc(ddev, sizeof(struct digital_sdd_res));
1006 rc = digital_tg_configure_hw(ddev, NFC_DIGITAL_CONFIG_FRAMING,
1013 rc = digital_tg_send_cmd(ddev, skb, 300, digital_tg_recv_sel_req,
1021 static void digital_tg_recv_sdd_req(struct nfc_digital_dev *ddev, void *arg,
1041 rc = digital_tg_send_sdd_res(ddev);
1045 digital_poll_next_tech(ddev);
1050 static int digital_tg_send_sens_res(struct nfc_digital_dev *ddev)
1056 skb = digital_skb_alloc(ddev, 2);
1065 rc = digital_tg_configure_hw(ddev, NFC_DIGITAL_CONFIG_FRAMING,
1072 rc = digital_tg_send_cmd(ddev, skb, 300, digital_tg_recv_sdd_req,
1080 void digital_tg_recv_sens_req(struct nfc_digital_dev *ddev, void *arg,
1100 rc = digital_tg_send_sens_res(ddev);
1104 digital_poll_next_tech(ddev);
1109 static void digital_tg_recv_atr_or_sensf_req(struct nfc_digital_dev *ddev,
1114 digital_tg_recv_sensf_req(ddev, arg, resp);
1116 digital_tg_recv_atr_req(ddev, arg, resp);
1121 static int digital_tg_send_sensf_res(struct nfc_digital_dev *ddev,
1134 skb = digital_skb_alloc(ddev, size);
1162 if (!DIGITAL_DRV_CAPS_TG_CRC(ddev))
1165 rc = digital_tg_send_cmd(ddev, skb, 300,
1173 void digital_tg_recv_sensf_req(struct nfc_digital_dev *ddev, void *arg,
1185 if (!DIGITAL_DRV_CAPS_TG_CRC(ddev)) {
1206 rc = digital_tg_send_sensf_res(ddev, sensf_req);
1210 digital_poll_next_tech(ddev);
1215 static int digital_tg_config_nfca(struct nfc_digital_dev *ddev)
1219 rc = digital_tg_configure_hw(ddev, NFC_DIGITAL_CONFIG_RF_TECH,
1224 return digital_tg_configure_hw(ddev, NFC_DIGITAL_CONFIG_FRAMING,
1228 int digital_tg_listen_nfca(struct nfc_digital_dev *ddev, u8 rf_tech)
1232 rc = digital_tg_config_nfca(ddev);
1236 return digital_tg_listen(ddev, 300, digital_tg_recv_sens_req, NULL);
1239 static int digital_tg_config_nfcf(struct nfc_digital_dev *ddev, u8 rf_tech)
1243 rc = digital_tg_configure_hw(ddev, NFC_DIGITAL_CONFIG_RF_TECH, rf_tech);
1247 return digital_tg_configure_hw(ddev, NFC_DIGITAL_CONFIG_FRAMING,
1251 int digital_tg_listen_nfcf(struct nfc_digital_dev *ddev, u8 rf_tech)
1255 rc = digital_tg_config_nfcf(ddev, rf_tech);
1259 return digital_tg_listen(ddev, 300, digital_tg_recv_sensf_req, NULL);
1262 void digital_tg_recv_md_req(struct nfc_digital_dev *ddev, void *arg,
1273 rc = ddev->ops->tg_get_rf_tech(ddev, &rf_tech);
1279 rc = digital_tg_config_nfca(ddev);
1282 digital_tg_recv_sens_req(ddev, arg, resp);
1286 rc = digital_tg_config_nfcf(ddev, rf_tech);
1289 digital_tg_recv_sensf_req(ddev, arg, resp);
1298 digital_poll_next_tech(ddev);