Lines Matching full:dev

33 int nfc_fw_download(struct nfc_dev *dev, const char *firmware_name)  in nfc_fw_download()  argument
37 pr_debug("%s do firmware %s\n", dev_name(&dev->dev), firmware_name); in nfc_fw_download()
39 device_lock(&dev->dev); in nfc_fw_download()
41 if (!device_is_registered(&dev->dev)) { in nfc_fw_download()
46 if (dev->dev_up) { in nfc_fw_download()
51 if (!dev->ops->fw_download) { in nfc_fw_download()
56 dev->fw_download_in_progress = true; in nfc_fw_download()
57 rc = dev->ops->fw_download(dev, firmware_name); in nfc_fw_download()
59 dev->fw_download_in_progress = false; in nfc_fw_download()
62 device_unlock(&dev->dev); in nfc_fw_download()
69 * @dev: The nfc device to which firmware was downloaded
73 int nfc_fw_download_done(struct nfc_dev *dev, const char *firmware_name, in nfc_fw_download_done() argument
76 dev->fw_download_in_progress = false; in nfc_fw_download_done()
78 return nfc_genl_fw_download_done(dev, firmware_name, result); in nfc_fw_download_done()
85 * @dev: The nfc device to be turned on
89 int nfc_dev_up(struct nfc_dev *dev) in nfc_dev_up() argument
93 pr_debug("dev_name=%s\n", dev_name(&dev->dev)); in nfc_dev_up()
95 device_lock(&dev->dev); in nfc_dev_up()
97 if (dev->rfkill && rfkill_blocked(dev->rfkill)) { in nfc_dev_up()
102 if (!device_is_registered(&dev->dev)) { in nfc_dev_up()
107 if (dev->fw_download_in_progress) { in nfc_dev_up()
112 if (dev->dev_up) { in nfc_dev_up()
117 if (dev->ops->dev_up) in nfc_dev_up()
118 rc = dev->ops->dev_up(dev); in nfc_dev_up()
121 dev->dev_up = true; in nfc_dev_up()
124 if (dev->ops->discover_se && dev->ops->discover_se(dev)) in nfc_dev_up()
128 device_unlock(&dev->dev); in nfc_dev_up()
135 * @dev: The nfc device to be turned off
137 int nfc_dev_down(struct nfc_dev *dev) in nfc_dev_down() argument
141 pr_debug("dev_name=%s\n", dev_name(&dev->dev)); in nfc_dev_down()
143 device_lock(&dev->dev); in nfc_dev_down()
145 if (!device_is_registered(&dev->dev)) { in nfc_dev_down()
150 if (!dev->dev_up) { in nfc_dev_down()
155 if (dev->polling || dev->active_target) { in nfc_dev_down()
160 if (dev->ops->dev_down) in nfc_dev_down()
161 dev->ops->dev_down(dev); in nfc_dev_down()
163 dev->dev_up = false; in nfc_dev_down()
166 device_unlock(&dev->dev); in nfc_dev_down()
172 struct nfc_dev *dev = data; in nfc_rfkill_set_block() local
174 pr_debug("%s blocked %d", dev_name(&dev->dev), blocked); in nfc_rfkill_set_block()
179 nfc_dev_down(dev); in nfc_rfkill_set_block()
191 * @dev: The nfc device that must start polling
197 int nfc_start_poll(struct nfc_dev *dev, u32 im_protocols, u32 tm_protocols) in nfc_start_poll() argument
202 dev_name(&dev->dev), im_protocols, tm_protocols); in nfc_start_poll()
207 device_lock(&dev->dev); in nfc_start_poll()
209 if (!device_is_registered(&dev->dev)) { in nfc_start_poll()
214 if (!dev->dev_up) { in nfc_start_poll()
219 if (dev->polling) { in nfc_start_poll()
224 rc = dev->ops->start_poll(dev, im_protocols, tm_protocols); in nfc_start_poll()
226 dev->polling = true; in nfc_start_poll()
227 dev->rf_mode = NFC_RF_NONE; in nfc_start_poll()
231 device_unlock(&dev->dev); in nfc_start_poll()
238 * @dev: The nfc device that must stop polling
240 int nfc_stop_poll(struct nfc_dev *dev) in nfc_stop_poll() argument
244 pr_debug("dev_name=%s\n", dev_name(&dev->dev)); in nfc_stop_poll()
246 device_lock(&dev->dev); in nfc_stop_poll()
248 if (!device_is_registered(&dev->dev)) { in nfc_stop_poll()
253 if (!dev->polling) { in nfc_stop_poll()
258 dev->ops->stop_poll(dev); in nfc_stop_poll()
259 dev->polling = false; in nfc_stop_poll()
260 dev->rf_mode = NFC_RF_NONE; in nfc_stop_poll()
263 device_unlock(&dev->dev); in nfc_stop_poll()
267 static struct nfc_target *nfc_find_target(struct nfc_dev *dev, u32 target_idx) in nfc_find_target() argument
271 for (i = 0; i < dev->n_targets; i++) { in nfc_find_target()
272 if (dev->targets[i].idx == target_idx) in nfc_find_target()
273 return &dev->targets[i]; in nfc_find_target()
279 int nfc_dep_link_up(struct nfc_dev *dev, int target_index, u8 comm_mode) in nfc_dep_link_up() argument
286 pr_debug("dev_name=%s comm %d\n", dev_name(&dev->dev), comm_mode); in nfc_dep_link_up()
288 if (!dev->ops->dep_link_up) in nfc_dep_link_up()
291 device_lock(&dev->dev); in nfc_dep_link_up()
293 if (!device_is_registered(&dev->dev)) { in nfc_dep_link_up()
298 if (dev->dep_link_up == true) { in nfc_dep_link_up()
303 gb = nfc_llcp_general_bytes(dev, &gb_len); in nfc_dep_link_up()
309 target = nfc_find_target(dev, target_index); in nfc_dep_link_up()
315 rc = dev->ops->dep_link_up(dev, target, comm_mode, gb, gb_len); in nfc_dep_link_up()
317 dev->active_target = target; in nfc_dep_link_up()
318 dev->rf_mode = NFC_RF_INITIATOR; in nfc_dep_link_up()
322 device_unlock(&dev->dev); in nfc_dep_link_up()
326 int nfc_dep_link_down(struct nfc_dev *dev) in nfc_dep_link_down() argument
330 pr_debug("dev_name=%s\n", dev_name(&dev->dev)); in nfc_dep_link_down()
332 if (!dev->ops->dep_link_down) in nfc_dep_link_down()
335 device_lock(&dev->dev); in nfc_dep_link_down()
337 if (!device_is_registered(&dev->dev)) { in nfc_dep_link_down()
342 if (dev->dep_link_up == false) { in nfc_dep_link_down()
347 rc = dev->ops->dep_link_down(dev); in nfc_dep_link_down()
349 dev->dep_link_up = false; in nfc_dep_link_down()
350 dev->active_target = NULL; in nfc_dep_link_down()
351 dev->rf_mode = NFC_RF_NONE; in nfc_dep_link_down()
352 nfc_llcp_mac_is_down(dev); in nfc_dep_link_down()
353 nfc_genl_dep_link_down_event(dev); in nfc_dep_link_down()
357 device_unlock(&dev->dev); in nfc_dep_link_down()
362 int nfc_dep_link_is_up(struct nfc_dev *dev, u32 target_idx, in nfc_dep_link_is_up() argument
365 dev->dep_link_up = true; in nfc_dep_link_is_up()
367 if (!dev->active_target && rf_mode == NFC_RF_INITIATOR) { in nfc_dep_link_is_up()
370 target = nfc_find_target(dev, target_idx); in nfc_dep_link_is_up()
374 dev->active_target = target; in nfc_dep_link_is_up()
377 dev->polling = false; in nfc_dep_link_is_up()
378 dev->rf_mode = rf_mode; in nfc_dep_link_is_up()
380 nfc_llcp_mac_is_up(dev, target_idx, comm_mode, rf_mode); in nfc_dep_link_is_up()
382 return nfc_genl_dep_link_up_event(dev, target_idx, comm_mode, rf_mode); in nfc_dep_link_is_up()
389 * @dev: The nfc device that found the target
393 int nfc_activate_target(struct nfc_dev *dev, u32 target_idx, u32 protocol) in nfc_activate_target() argument
399 dev_name(&dev->dev), target_idx, protocol); in nfc_activate_target()
401 device_lock(&dev->dev); in nfc_activate_target()
403 if (!device_is_registered(&dev->dev)) { in nfc_activate_target()
408 if (dev->active_target) { in nfc_activate_target()
413 target = nfc_find_target(dev, target_idx); in nfc_activate_target()
419 rc = dev->ops->activate_target(dev, target, protocol); in nfc_activate_target()
421 dev->active_target = target; in nfc_activate_target()
422 dev->rf_mode = NFC_RF_INITIATOR; in nfc_activate_target()
424 if (dev->ops->check_presence && !dev->shutting_down) in nfc_activate_target()
425 mod_timer(&dev->check_pres_timer, jiffies + in nfc_activate_target()
430 device_unlock(&dev->dev); in nfc_activate_target()
437 * @dev: The nfc device that found the target
440 int nfc_deactivate_target(struct nfc_dev *dev, u32 target_idx, u8 mode) in nfc_deactivate_target() argument
445 dev_name(&dev->dev), target_idx); in nfc_deactivate_target()
447 device_lock(&dev->dev); in nfc_deactivate_target()
449 if (!device_is_registered(&dev->dev)) { in nfc_deactivate_target()
454 if (dev->active_target == NULL) { in nfc_deactivate_target()
459 if (dev->active_target->idx != target_idx) { in nfc_deactivate_target()
464 if (dev->ops->check_presence) in nfc_deactivate_target()
465 del_timer_sync(&dev->check_pres_timer); in nfc_deactivate_target()
467 dev->ops->deactivate_target(dev, dev->active_target, mode); in nfc_deactivate_target()
468 dev->active_target = NULL; in nfc_deactivate_target()
471 device_unlock(&dev->dev); in nfc_deactivate_target()
478 * @dev: The nfc device that found the target
486 int nfc_data_exchange(struct nfc_dev *dev, u32 target_idx, struct sk_buff *skb, in nfc_data_exchange() argument
492 dev_name(&dev->dev), target_idx, skb->len); in nfc_data_exchange()
494 device_lock(&dev->dev); in nfc_data_exchange()
496 if (!device_is_registered(&dev->dev)) { in nfc_data_exchange()
502 if (dev->rf_mode == NFC_RF_INITIATOR && dev->active_target != NULL) { in nfc_data_exchange()
503 if (dev->active_target->idx != target_idx) { in nfc_data_exchange()
509 if (dev->ops->check_presence) in nfc_data_exchange()
510 del_timer_sync(&dev->check_pres_timer); in nfc_data_exchange()
512 rc = dev->ops->im_transceive(dev, dev->active_target, skb, cb, in nfc_data_exchange()
515 if (!rc && dev->ops->check_presence && !dev->shutting_down) in nfc_data_exchange()
516 mod_timer(&dev->check_pres_timer, jiffies + in nfc_data_exchange()
518 } else if (dev->rf_mode == NFC_RF_TARGET && dev->ops->tm_send != NULL) { in nfc_data_exchange()
519 rc = dev->ops->tm_send(dev, skb); in nfc_data_exchange()
528 device_unlock(&dev->dev); in nfc_data_exchange()
532 struct nfc_se *nfc_find_se(struct nfc_dev *dev, u32 se_idx) in nfc_find_se() argument
536 list_for_each_entry(se, &dev->secure_elements, list) in nfc_find_se()
544 int nfc_enable_se(struct nfc_dev *dev, u32 se_idx) in nfc_enable_se() argument
549 pr_debug("%s se index %d\n", dev_name(&dev->dev), se_idx); in nfc_enable_se()
551 device_lock(&dev->dev); in nfc_enable_se()
553 if (!device_is_registered(&dev->dev)) { in nfc_enable_se()
558 if (!dev->dev_up) { in nfc_enable_se()
563 if (dev->polling) { in nfc_enable_se()
568 if (!dev->ops->enable_se || !dev->ops->disable_se) { in nfc_enable_se()
573 se = nfc_find_se(dev, se_idx); in nfc_enable_se()
584 rc = dev->ops->enable_se(dev, se_idx); in nfc_enable_se()
589 device_unlock(&dev->dev); in nfc_enable_se()
593 int nfc_disable_se(struct nfc_dev *dev, u32 se_idx) in nfc_disable_se() argument
598 pr_debug("%s se index %d\n", dev_name(&dev->dev), se_idx); in nfc_disable_se()
600 device_lock(&dev->dev); in nfc_disable_se()
602 if (!device_is_registered(&dev->dev)) { in nfc_disable_se()
607 if (!dev->dev_up) { in nfc_disable_se()
612 if (!dev->ops->enable_se || !dev->ops->disable_se) { in nfc_disable_se()
617 se = nfc_find_se(dev, se_idx); in nfc_disable_se()
628 rc = dev->ops->disable_se(dev, se_idx); in nfc_disable_se()
633 device_unlock(&dev->dev); in nfc_disable_se()
637 int nfc_set_remote_general_bytes(struct nfc_dev *dev, u8 *gb, u8 gb_len) in nfc_set_remote_general_bytes() argument
639 pr_debug("dev_name=%s gb_len=%d\n", dev_name(&dev->dev), gb_len); in nfc_set_remote_general_bytes()
641 return nfc_llcp_set_remote_gb(dev, gb, gb_len); in nfc_set_remote_general_bytes()
645 u8 *nfc_get_local_general_bytes(struct nfc_dev *dev, size_t *gb_len) in nfc_get_local_general_bytes() argument
647 pr_debug("dev_name=%s\n", dev_name(&dev->dev)); in nfc_get_local_general_bytes()
649 return nfc_llcp_general_bytes(dev, gb_len); in nfc_get_local_general_bytes()
653 int nfc_tm_data_received(struct nfc_dev *dev, struct sk_buff *skb) in nfc_tm_data_received() argument
656 if (dev->dep_link_up == false) { in nfc_tm_data_received()
661 return nfc_llcp_data_received(dev, skb); in nfc_tm_data_received()
665 int nfc_tm_activated(struct nfc_dev *dev, u32 protocol, u8 comm_mode, in nfc_tm_activated() argument
670 device_lock(&dev->dev); in nfc_tm_activated()
672 dev->polling = false; in nfc_tm_activated()
675 rc = nfc_set_remote_general_bytes(dev, gb, gb_len); in nfc_tm_activated()
680 dev->rf_mode = NFC_RF_TARGET; in nfc_tm_activated()
683 nfc_dep_link_is_up(dev, 0, comm_mode, NFC_RF_TARGET); in nfc_tm_activated()
685 rc = nfc_genl_tm_activated(dev, protocol); in nfc_tm_activated()
688 device_unlock(&dev->dev); in nfc_tm_activated()
694 int nfc_tm_deactivated(struct nfc_dev *dev) in nfc_tm_deactivated() argument
696 dev->dep_link_up = false; in nfc_tm_deactivated()
697 dev->rf_mode = NFC_RF_NONE; in nfc_tm_deactivated()
699 return nfc_genl_tm_deactivated(dev); in nfc_tm_deactivated()
708 struct sk_buff *nfc_alloc_send_skb(struct nfc_dev *dev, struct sock *sk, in nfc_alloc_send_skb() argument
716 dev->tx_headroom + dev->tx_tailroom + NFC_HEADER_SIZE; in nfc_alloc_send_skb()
720 skb_reserve(skb, dev->tx_headroom + NFC_HEADER_SIZE); in nfc_alloc_send_skb()
749 * @dev: The nfc device that found the targets
762 int nfc_targets_found(struct nfc_dev *dev, in nfc_targets_found() argument
767 pr_debug("dev_name=%s n_targets=%d\n", dev_name(&dev->dev), n_targets); in nfc_targets_found()
770 targets[i].idx = dev->target_next_idx++; in nfc_targets_found()
772 device_lock(&dev->dev); in nfc_targets_found()
774 if (dev->polling == false) { in nfc_targets_found()
775 device_unlock(&dev->dev); in nfc_targets_found()
779 dev->polling = false; in nfc_targets_found()
781 dev->targets_generation++; in nfc_targets_found()
783 kfree(dev->targets); in nfc_targets_found()
784 dev->targets = NULL; in nfc_targets_found()
787 dev->targets = kmemdup(targets, in nfc_targets_found()
791 if (!dev->targets) { in nfc_targets_found()
792 dev->n_targets = 0; in nfc_targets_found()
793 device_unlock(&dev->dev); in nfc_targets_found()
798 dev->n_targets = n_targets; in nfc_targets_found()
799 device_unlock(&dev->dev); in nfc_targets_found()
801 nfc_genl_targets_found(dev); in nfc_targets_found()
810 * @dev: The nfc device that had the activated target in field
819 int nfc_target_lost(struct nfc_dev *dev, u32 target_idx) in nfc_target_lost() argument
824 pr_debug("dev_name %s n_target %d\n", dev_name(&dev->dev), target_idx); in nfc_target_lost()
826 device_lock(&dev->dev); in nfc_target_lost()
828 for (i = 0; i < dev->n_targets; i++) { in nfc_target_lost()
829 tg = &dev->targets[i]; in nfc_target_lost()
834 if (i == dev->n_targets) { in nfc_target_lost()
835 device_unlock(&dev->dev); in nfc_target_lost()
839 dev->targets_generation++; in nfc_target_lost()
840 dev->n_targets--; in nfc_target_lost()
841 dev->active_target = NULL; in nfc_target_lost()
843 if (dev->n_targets) { in nfc_target_lost()
844 memcpy(&dev->targets[i], &dev->targets[i + 1], in nfc_target_lost()
845 (dev->n_targets - i) * sizeof(struct nfc_target)); in nfc_target_lost()
847 kfree(dev->targets); in nfc_target_lost()
848 dev->targets = NULL; in nfc_target_lost()
851 device_unlock(&dev->dev); in nfc_target_lost()
853 nfc_genl_target_lost(dev, target_idx); in nfc_target_lost()
859 inline void nfc_driver_failure(struct nfc_dev *dev, int err) in nfc_driver_failure() argument
861 nfc_targets_found(dev, NULL, 0); in nfc_driver_failure()
865 int nfc_add_se(struct nfc_dev *dev, u32 se_idx, u16 type) in nfc_add_se() argument
870 pr_debug("%s se index %d\n", dev_name(&dev->dev), se_idx); in nfc_add_se()
872 se = nfc_find_se(dev, se_idx); in nfc_add_se()
885 list_add(&se->list, &dev->secure_elements); in nfc_add_se()
887 rc = nfc_genl_se_added(dev, se_idx, type); in nfc_add_se()
899 int nfc_remove_se(struct nfc_dev *dev, u32 se_idx) in nfc_remove_se() argument
904 pr_debug("%s se index %d\n", dev_name(&dev->dev), se_idx); in nfc_remove_se()
906 list_for_each_entry_safe(se, n, &dev->secure_elements, list) in nfc_remove_se()
908 rc = nfc_genl_se_removed(dev, se_idx); in nfc_remove_se()
922 int nfc_se_transaction(struct nfc_dev *dev, u8 se_idx, in nfc_se_transaction() argument
929 device_lock(&dev->dev); in nfc_se_transaction()
936 rc = nfc_genl_se_transaction(dev, se_idx, evt_transaction); in nfc_se_transaction()
938 device_unlock(&dev->dev); in nfc_se_transaction()
943 int nfc_se_connectivity(struct nfc_dev *dev, u8 se_idx) in nfc_se_connectivity() argument
949 device_lock(&dev->dev); in nfc_se_connectivity()
950 rc = nfc_genl_se_connectivity(dev, se_idx); in nfc_se_connectivity()
951 device_unlock(&dev->dev); in nfc_se_connectivity()
958 struct nfc_dev *dev = to_nfc_dev(d); in nfc_release() local
961 pr_debug("dev_name=%s\n", dev_name(&dev->dev)); in nfc_release()
963 nfc_genl_data_exit(&dev->genl_data); in nfc_release()
964 kfree(dev->targets); in nfc_release()
966 list_for_each_entry_safe(se, n, &dev->secure_elements, list) { in nfc_release()
967 nfc_genl_se_removed(dev, se->idx); in nfc_release()
972 ida_simple_remove(&nfc_index_ida, dev->idx); in nfc_release()
974 kfree(dev); in nfc_release()
979 struct nfc_dev *dev = container_of(work, struct nfc_dev, in nfc_check_pres_work() local
983 device_lock(&dev->dev); in nfc_check_pres_work()
985 if (dev->active_target && timer_pending(&dev->check_pres_timer) == 0) { in nfc_check_pres_work()
986 rc = dev->ops->check_presence(dev, dev->active_target); in nfc_check_pres_work()
990 u32 active_target_idx = dev->active_target->idx; in nfc_check_pres_work()
991 device_unlock(&dev->dev); in nfc_check_pres_work()
992 nfc_target_lost(dev, active_target_idx); in nfc_check_pres_work()
996 if (!dev->shutting_down) in nfc_check_pres_work()
997 mod_timer(&dev->check_pres_timer, jiffies + in nfc_check_pres_work()
1002 device_unlock(&dev->dev); in nfc_check_pres_work()
1007 struct nfc_dev *dev = from_timer(dev, t, check_pres_timer); in nfc_check_pres_timeout() local
1009 schedule_work(&dev->check_pres_work); in nfc_check_pres_timeout()
1020 struct nfc_dev *dev = to_nfc_dev(d); in match_idx() local
1023 return dev->idx == *idx; in match_idx()
1047 struct nfc_dev *dev; in nfc_allocate_device() local
1057 dev = kzalloc(sizeof(struct nfc_dev), GFP_KERNEL); in nfc_allocate_device()
1058 if (!dev) in nfc_allocate_device()
1064 dev->idx = rc; in nfc_allocate_device()
1066 dev->dev.class = &nfc_class; in nfc_allocate_device()
1067 dev_set_name(&dev->dev, "nfc%d", dev->idx); in nfc_allocate_device()
1068 device_initialize(&dev->dev); in nfc_allocate_device()
1070 dev->ops = ops; in nfc_allocate_device()
1071 dev->supported_protocols = supported_protocols; in nfc_allocate_device()
1072 dev->tx_headroom = tx_headroom; in nfc_allocate_device()
1073 dev->tx_tailroom = tx_tailroom; in nfc_allocate_device()
1074 INIT_LIST_HEAD(&dev->secure_elements); in nfc_allocate_device()
1076 nfc_genl_data_init(&dev->genl_data); in nfc_allocate_device()
1078 dev->rf_mode = NFC_RF_NONE; in nfc_allocate_device()
1081 dev->targets_generation = 1; in nfc_allocate_device()
1084 timer_setup(&dev->check_pres_timer, nfc_check_pres_timeout, 0); in nfc_allocate_device()
1085 INIT_WORK(&dev->check_pres_work, nfc_check_pres_work); in nfc_allocate_device()
1088 return dev; in nfc_allocate_device()
1091 kfree(dev); in nfc_allocate_device()
1100 * @dev: The nfc device to register
1102 int nfc_register_device(struct nfc_dev *dev) in nfc_register_device() argument
1106 pr_debug("dev_name=%s\n", dev_name(&dev->dev)); in nfc_register_device()
1110 rc = device_add(&dev->dev); in nfc_register_device()
1116 rc = nfc_llcp_register_device(dev); in nfc_register_device()
1120 rc = nfc_genl_device_added(dev); in nfc_register_device()
1123 dev_name(&dev->dev)); in nfc_register_device()
1125 dev->rfkill = rfkill_alloc(dev_name(&dev->dev), &dev->dev, in nfc_register_device()
1126 RFKILL_TYPE_NFC, &nfc_rfkill_ops, dev); in nfc_register_device()
1127 if (dev->rfkill) { in nfc_register_device()
1128 if (rfkill_register(dev->rfkill) < 0) { in nfc_register_device()
1129 rfkill_destroy(dev->rfkill); in nfc_register_device()
1130 dev->rfkill = NULL; in nfc_register_device()
1141 * @dev: The nfc device to unregister
1143 void nfc_unregister_device(struct nfc_dev *dev) in nfc_unregister_device() argument
1147 pr_debug("dev_name=%s\n", dev_name(&dev->dev)); in nfc_unregister_device()
1149 if (dev->rfkill) { in nfc_unregister_device()
1150 rfkill_unregister(dev->rfkill); in nfc_unregister_device()
1151 rfkill_destroy(dev->rfkill); in nfc_unregister_device()
1154 if (dev->ops->check_presence) { in nfc_unregister_device()
1155 device_lock(&dev->dev); in nfc_unregister_device()
1156 dev->shutting_down = true; in nfc_unregister_device()
1157 device_unlock(&dev->dev); in nfc_unregister_device()
1158 del_timer_sync(&dev->check_pres_timer); in nfc_unregister_device()
1159 cancel_work_sync(&dev->check_pres_work); in nfc_unregister_device()
1162 rc = nfc_genl_device_removed(dev); in nfc_unregister_device()
1165 "was removed\n", dev_name(&dev->dev)); in nfc_unregister_device()
1167 nfc_llcp_unregister_device(dev); in nfc_unregister_device()
1171 device_del(&dev->dev); in nfc_unregister_device()