Lines Matching refs:phy

61 	struct pn533_usb_phy *phy = urb->context;  in pn533_recv_response()  local
67 nfc_err(&phy->udev->dev, "failed to alloc memory\n"); in pn533_recv_response()
74 pn533_recv_frame(phy->priv, skb, urb->status); in pn533_recv_response()
77 static int pn533_submit_urb_for_response(struct pn533_usb_phy *phy, gfp_t flags) in pn533_submit_urb_for_response() argument
79 phy->in_urb->complete = pn533_recv_response; in pn533_submit_urb_for_response()
81 return usb_submit_urb(phy->in_urb, flags); in pn533_submit_urb_for_response()
86 struct pn533_usb_phy *phy = urb->context; in pn533_recv_ack() local
87 struct pn533 *priv = phy->priv; in pn533_recv_ack()
99 dev_dbg(&phy->udev->dev, in pn533_recv_ack()
105 nfc_err(&phy->udev->dev, in pn533_recv_ack()
110 in_frame = phy->in_urb->transfer_buffer; in pn533_recv_ack()
113 nfc_err(&phy->udev->dev, "Received an invalid ack\n"); in pn533_recv_ack()
118 rc = pn533_submit_urb_for_response(phy, GFP_ATOMIC); in pn533_recv_ack()
120 nfc_err(&phy->udev->dev, in pn533_recv_ack()
132 static int pn533_submit_urb_for_ack(struct pn533_usb_phy *phy, gfp_t flags) in pn533_submit_urb_for_ack() argument
134 phy->in_urb->complete = pn533_recv_ack; in pn533_submit_urb_for_ack()
136 return usb_submit_urb(phy->in_urb, flags); in pn533_submit_urb_for_ack()
141 struct pn533_usb_phy *phy = dev->phy; in pn533_usb_send_ack() local
145 if (!phy->ack_buffer) { in pn533_usb_send_ack()
146 phy->ack_buffer = kmemdup(ack, sizeof(ack), flags); in pn533_usb_send_ack()
147 if (!phy->ack_buffer) in pn533_usb_send_ack()
151 phy->ack_urb->transfer_buffer = phy->ack_buffer; in pn533_usb_send_ack()
152 phy->ack_urb->transfer_buffer_length = sizeof(ack); in pn533_usb_send_ack()
153 return usb_submit_urb(phy->ack_urb, flags); in pn533_usb_send_ack()
159 struct pn533_usb_phy *phy = dev->phy; in pn533_usb_send_frame() local
162 if (phy->priv == NULL) in pn533_usb_send_frame()
163 phy->priv = dev; in pn533_usb_send_frame()
165 phy->out_urb->transfer_buffer = out->data; in pn533_usb_send_frame()
166 phy->out_urb->transfer_buffer_length = out->len; in pn533_usb_send_frame()
171 rc = usb_submit_urb(phy->out_urb, GFP_KERNEL); in pn533_usb_send_frame()
177 rc = pn533_submit_urb_for_response(phy, GFP_KERNEL); in pn533_usb_send_frame()
182 rc = pn533_submit_urb_for_ack(phy, GFP_KERNEL); in pn533_usb_send_frame()
190 usb_unlink_urb(phy->out_urb); in pn533_usb_send_frame()
196 struct pn533_usb_phy *phy = dev->phy; in pn533_usb_abort_cmd() local
210 usb_kill_urb(phy->in_urb); in pn533_usb_abort_cmd()
367 static int pn533_acr122_poweron_rdr(struct pn533_usb_phy *phy) in pn533_acr122_poweron_rdr() argument
378 dev_dbg(&phy->udev->dev, "%s\n", __func__); in pn533_acr122_poweron_rdr()
385 cntx = phy->in_urb->context; /* backup context */ in pn533_acr122_poweron_rdr()
387 phy->in_urb->complete = pn533_acr122_poweron_rdr_resp; in pn533_acr122_poweron_rdr()
388 phy->in_urb->context = &arg; in pn533_acr122_poweron_rdr()
393 rc = usb_bulk_msg(phy->udev, phy->out_urb->pipe, buffer, sizeof(cmd), in pn533_acr122_poweron_rdr()
397 nfc_err(&phy->udev->dev, in pn533_acr122_poweron_rdr()
402 rc = usb_submit_urb(phy->in_urb, GFP_KERNEL); in pn533_acr122_poweron_rdr()
404 nfc_err(&phy->udev->dev, in pn533_acr122_poweron_rdr()
410 phy->in_urb->context = cntx; /* restore context */ in pn533_acr122_poweron_rdr()
417 struct pn533_usb_phy *phy = urb->context; in pn533_send_complete() local
424 dev_dbg(&phy->udev->dev, in pn533_send_complete()
430 nfc_err(&phy->udev->dev, in pn533_send_complete()
446 struct pn533_usb_phy *phy; in pn533_usb_probe() local
461 phy = devm_kzalloc(&interface->dev, sizeof(*phy), GFP_KERNEL); in pn533_usb_probe()
462 if (!phy) in pn533_usb_probe()
469 phy->udev = usb_get_dev(interface_to_usbdev(interface)); in pn533_usb_probe()
470 phy->interface = interface; in pn533_usb_probe()
490 phy->in_urb = usb_alloc_urb(0, GFP_KERNEL); in pn533_usb_probe()
491 phy->out_urb = usb_alloc_urb(0, GFP_KERNEL); in pn533_usb_probe()
492 phy->ack_urb = usb_alloc_urb(0, GFP_KERNEL); in pn533_usb_probe()
494 if (!phy->in_urb || !phy->out_urb || !phy->ack_urb) in pn533_usb_probe()
497 usb_fill_bulk_urb(phy->in_urb, phy->udev, in pn533_usb_probe()
498 usb_rcvbulkpipe(phy->udev, in_endpoint), in pn533_usb_probe()
499 in_buf, in_buf_len, NULL, phy); in pn533_usb_probe()
501 usb_fill_bulk_urb(phy->out_urb, phy->udev, in pn533_usb_probe()
502 usb_sndbulkpipe(phy->udev, out_endpoint), in pn533_usb_probe()
503 NULL, 0, pn533_send_complete, phy); in pn533_usb_probe()
504 usb_fill_bulk_urb(phy->ack_urb, phy->udev, in pn533_usb_probe()
505 usb_sndbulkpipe(phy->udev, out_endpoint), in pn533_usb_probe()
506 NULL, 0, pn533_send_complete, phy); in pn533_usb_probe()
522 rc = pn533_acr122_poweron_rdr(phy); in pn533_usb_probe()
538 phy, &usb_phy_ops, fops, in pn533_usb_probe()
539 &phy->udev->dev); in pn533_usb_probe()
546 phy->priv = priv; in pn533_usb_probe()
552 usb_set_intfdata(interface, phy); in pn533_usb_probe()
562 usb_kill_urb(phy->in_urb); in pn533_usb_probe()
563 usb_kill_urb(phy->out_urb); in pn533_usb_probe()
564 usb_kill_urb(phy->ack_urb); in pn533_usb_probe()
566 usb_free_urb(phy->in_urb); in pn533_usb_probe()
567 usb_free_urb(phy->out_urb); in pn533_usb_probe()
568 usb_free_urb(phy->ack_urb); in pn533_usb_probe()
569 usb_put_dev(phy->udev); in pn533_usb_probe()
571 kfree(phy->ack_buffer); in pn533_usb_probe()
578 struct pn533_usb_phy *phy = usb_get_intfdata(interface); in pn533_usb_disconnect() local
580 if (!phy) in pn533_usb_disconnect()
583 pn53x_unregister_nfc(phy->priv); in pn533_usb_disconnect()
584 pn53x_common_clean(phy->priv); in pn533_usb_disconnect()
588 usb_kill_urb(phy->in_urb); in pn533_usb_disconnect()
589 usb_kill_urb(phy->out_urb); in pn533_usb_disconnect()
590 usb_kill_urb(phy->ack_urb); in pn533_usb_disconnect()
592 kfree(phy->in_urb->transfer_buffer); in pn533_usb_disconnect()
593 usb_free_urb(phy->in_urb); in pn533_usb_disconnect()
594 usb_free_urb(phy->out_urb); in pn533_usb_disconnect()
595 usb_free_urb(phy->ack_urb); in pn533_usb_disconnect()
596 kfree(phy->ack_buffer); in pn533_usb_disconnect()