void microread_remove(struct nfc_hci_dev *hdev) { struct microread_info *info = nfc_hci_get_clientdata(hdev); nfc_hci_unregister_device(hdev); nfc_hci_free_device(hdev); kfree(info); }
void pn544_hci_remove(struct nfc_hci_dev *hdev) { struct pn544_hci_info *info = nfc_hci_get_clientdata(hdev); nfc_hci_unregister_device(hdev); nfc_hci_free_device(hdev); kfree(info); }
void st21nfca_hci_remove(struct nfc_hci_dev *hdev) { struct st21nfca_hci_info *info = nfc_hci_get_clientdata(hdev); st21nfca_dep_deinit(hdev); nfc_hci_unregister_device(hdev); nfc_hci_free_device(hdev); kfree(info); }
void nfc_shdlc_free(struct nfc_shdlc *shdlc) { pr_debug("\n"); nfc_hci_unregister_device(shdlc->hdev); nfc_hci_free_device(shdlc->hdev); destroy_workqueue(shdlc->sm_wq); skb_queue_purge(&shdlc->rcv_q); skb_queue_purge(&shdlc->send_q); skb_queue_purge(&shdlc->ack_pending_q); kfree(shdlc); }