summaryrefslogtreecommitdiff
path: root/firmware/usbstack
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/usbstack')
-rw-r--r--firmware/usbstack/usb_core.c12
-rw-r--r--firmware/usbstack/usb_hid.c6
-rw-r--r--firmware/usbstack/usb_serial.c8
-rw-r--r--firmware/usbstack/usb_storage.c10
4 files changed, 18 insertions, 18 deletions
diff --git a/firmware/usbstack/usb_core.c b/firmware/usbstack/usb_core.c
index b291dc7655..bf73c58abc 100644
--- a/firmware/usbstack/usb_core.c
+++ b/firmware/usbstack/usb_core.c
@@ -674,7 +674,7 @@ static void request_handler_device_get_descriptor(struct usb_ctrlrequest* req)
674 if (ptr != response_data) 674 if (ptr != response_data)
675 memcpy(response_data, ptr, length); 675 memcpy(response_data, ptr, length);
676 676
677 usb_drv_recv(EP_CONTROL, NULL, 0); 677 usb_drv_recv_nonblocking(EP_CONTROL, NULL, 0);
678 usb_drv_send(EP_CONTROL, response_data, length); 678 usb_drv_send(EP_CONTROL, response_data, length);
679 } 679 }
680} 680}
@@ -725,7 +725,7 @@ static void request_handler_device(struct usb_ctrlrequest* req)
725 case USB_REQ_GET_CONFIGURATION: { 725 case USB_REQ_GET_CONFIGURATION: {
726 logf("usb_core: GET_CONFIG"); 726 logf("usb_core: GET_CONFIG");
727 response_data[0] = (usb_state == ADDRESS ? 0 : 1); 727 response_data[0] = (usb_state == ADDRESS ? 0 : 1);
728 usb_drv_recv(EP_CONTROL, NULL, 0); 728 usb_drv_recv_nonblocking(EP_CONTROL, NULL, 0);
729 usb_drv_send(EP_CONTROL, response_data, 1); 729 usb_drv_send(EP_CONTROL, response_data, 1);
730 break; 730 break;
731 } 731 }
@@ -759,7 +759,7 @@ static void request_handler_device(struct usb_ctrlrequest* req)
759 case USB_REQ_GET_STATUS: 759 case USB_REQ_GET_STATUS:
760 response_data[0] = 0; 760 response_data[0] = 0;
761 response_data[1] = 0; 761 response_data[1] = 0;
762 usb_drv_recv(EP_CONTROL, NULL, 0); 762 usb_drv_recv_nonblocking(EP_CONTROL, NULL, 0);
763 usb_drv_send(EP_CONTROL, response_data, 2); 763 usb_drv_send(EP_CONTROL, response_data, 2);
764 break; 764 break;
765 default: 765 default:
@@ -781,7 +781,7 @@ static void request_handler_interface_standard(struct usb_ctrlrequest* req)
781 case USB_REQ_GET_INTERFACE: 781 case USB_REQ_GET_INTERFACE:
782 logf("usb_core: GET_INTERFACE"); 782 logf("usb_core: GET_INTERFACE");
783 response_data[0] = 0; 783 response_data[0] = 0;
784 usb_drv_recv(EP_CONTROL, NULL, 0); 784 usb_drv_recv_nonblocking(EP_CONTROL, NULL, 0);
785 usb_drv_send(EP_CONTROL, response_data, 1); 785 usb_drv_send(EP_CONTROL, response_data, 1);
786 break; 786 break;
787 case USB_REQ_CLEAR_FEATURE: 787 case USB_REQ_CLEAR_FEATURE:
@@ -791,7 +791,7 @@ static void request_handler_interface_standard(struct usb_ctrlrequest* req)
791 case USB_REQ_GET_STATUS: 791 case USB_REQ_GET_STATUS:
792 response_data[0] = 0; 792 response_data[0] = 0;
793 response_data[1] = 0; 793 response_data[1] = 0;
794 usb_drv_recv(EP_CONTROL, NULL, 0); 794 usb_drv_recv_nonblocking(EP_CONTROL, NULL, 0);
795 usb_drv_send(EP_CONTROL, response_data, 2); 795 usb_drv_send(EP_CONTROL, response_data, 2);
796 break; 796 break;
797 default: 797 default:
@@ -860,7 +860,7 @@ static void request_handler_endpoint_standard(struct usb_ctrlrequest* req)
860 response_data[0] = usb_drv_stalled(EP_NUM(req->wIndex), 860 response_data[0] = usb_drv_stalled(EP_NUM(req->wIndex),
861 EP_DIR(req->wIndex)); 861 EP_DIR(req->wIndex));
862 862
863 usb_drv_recv(EP_CONTROL, NULL, 0); 863 usb_drv_recv_nonblocking(EP_CONTROL, NULL, 0);
864 usb_drv_send(EP_CONTROL, response_data, 2); 864 usb_drv_send(EP_CONTROL, response_data, 2);
865 break; 865 break;
866 default: 866 default:
diff --git a/firmware/usbstack/usb_hid.c b/firmware/usbstack/usb_hid.c
index 885ae4c24a..16dddb7db1 100644
--- a/firmware/usbstack/usb_hid.c
+++ b/firmware/usbstack/usb_hid.c
@@ -693,7 +693,7 @@ static int usb_hid_set_report(struct usb_ctrlrequest *req)
693 } 693 }
694 694
695 memset(buf, 0, length); 695 memset(buf, 0, length);
696 usb_drv_recv(EP_CONTROL, buf, length); 696 usb_drv_recv_nonblocking(EP_CONTROL, buf, length);
697 697
698#ifdef LOGF_ENABLE 698#ifdef LOGF_ENABLE
699 if (buf[1] & 0x01) 699 if (buf[1] & 0x01)
@@ -772,7 +772,7 @@ bool usb_hid_control_request(struct usb_ctrlrequest *req, unsigned char *dest)
772 772
773 if (dest != orig_dest) 773 if (dest != orig_dest)
774 { 774 {
775 usb_drv_recv(EP_CONTROL, NULL, 0); /* ack */ 775 usb_drv_recv_nonblocking(EP_CONTROL, NULL, 0); /* ack */
776 usb_drv_send(EP_CONTROL, orig_dest, dest - orig_dest); 776 usb_drv_send(EP_CONTROL, orig_dest, dest - orig_dest);
777 return true; 777 return true;
778 } 778 }
@@ -809,7 +809,7 @@ bool usb_hid_control_request(struct usb_ctrlrequest *req, unsigned char *dest)
809 809
810 if (dest != orig_dest) 810 if (dest != orig_dest)
811 { 811 {
812 usb_drv_recv(EP_CONTROL, NULL, 0); /* ack */ 812 usb_drv_recv_nonblocking(EP_CONTROL, NULL, 0); /* ack */
813 usb_drv_send(EP_CONTROL, orig_dest, dest - orig_dest); 813 usb_drv_send(EP_CONTROL, orig_dest, dest - orig_dest);
814 } 814 }
815 else 815 else
diff --git a/firmware/usbstack/usb_serial.c b/firmware/usbstack/usb_serial.c
index a08394c0a8..c96936f1d4 100644
--- a/firmware/usbstack/usb_serial.c
+++ b/firmware/usbstack/usb_serial.c
@@ -294,7 +294,7 @@ bool usb_serial_control_request(struct usb_ctrlrequest* req, unsigned char* dest
294 if (req->wLength == sizeof(line_coding)) 294 if (req->wLength == sizeof(line_coding))
295 { 295 {
296 /* Receive line coding into local copy */ 296 /* Receive line coding into local copy */
297 usb_drv_recv(EP_CONTROL, &line_coding, sizeof(line_coding)); 297 usb_drv_recv_nonblocking(EP_CONTROL, &line_coding, sizeof(line_coding));
298 usb_drv_send(EP_CONTROL, NULL, 0); /* ack */ 298 usb_drv_send(EP_CONTROL, NULL, 0); /* ack */
299 handled = true; 299 handled = true;
300 } 300 }
@@ -316,7 +316,7 @@ bool usb_serial_control_request(struct usb_ctrlrequest* req, unsigned char* dest
316 if (req->wLength == sizeof(line_coding)) 316 if (req->wLength == sizeof(line_coding))
317 { 317 {
318 /* Send back line coding so host is happy */ 318 /* Send back line coding so host is happy */
319 usb_drv_recv(EP_CONTROL, NULL, 0); /* ack */ 319 usb_drv_recv_nonblocking(EP_CONTROL, NULL, 0); /* ack */
320 usb_drv_send(EP_CONTROL, &line_coding, sizeof(line_coding)); 320 usb_drv_send(EP_CONTROL, &line_coding, sizeof(line_coding));
321 handled = true; 321 handled = true;
322 } 322 }
@@ -329,7 +329,7 @@ bool usb_serial_control_request(struct usb_ctrlrequest* req, unsigned char* dest
329void usb_serial_init_connection(void) 329void usb_serial_init_connection(void)
330{ 330{
331 /* prime rx endpoint */ 331 /* prime rx endpoint */
332 usb_drv_recv(ep_out, receive_buffer, sizeof receive_buffer); 332 usb_drv_recv_nonblocking(ep_out, receive_buffer, sizeof receive_buffer);
333 333
334 /* we come here too after a bus reset, so reset some data */ 334 /* we come here too after a bus reset, so reset some data */
335 buffer_transitlength = 0; 335 buffer_transitlength = 0;
@@ -420,7 +420,7 @@ void usb_serial_transfer_complete(int ep,int dir, int status, int length)
420 /* Data received. TODO : Do something with it ? */ 420 /* Data received. TODO : Do something with it ? */
421 421
422 /* Get the next bit */ 422 /* Get the next bit */
423 usb_drv_recv(ep_out, receive_buffer, sizeof receive_buffer); 423 usb_drv_recv_nonblocking(ep_out, receive_buffer, sizeof receive_buffer);
424 break; 424 break;
425 425
426 case USB_DIR_IN: 426 case USB_DIR_IN:
diff --git a/firmware/usbstack/usb_storage.c b/firmware/usbstack/usb_storage.c
index 8e1b507ac4..947006c1ec 100644
--- a/firmware/usbstack/usb_storage.c
+++ b/firmware/usbstack/usb_storage.c
@@ -470,7 +470,7 @@ void usb_storage_init_connection(void)
470 ramdisk_buffer = tb.transfer_buffer + ALLOCATE_BUFFER_SIZE; 470 ramdisk_buffer = tb.transfer_buffer + ALLOCATE_BUFFER_SIZE;
471#endif 471#endif
472#endif 472#endif
473 usb_drv_recv(ep_out, cbw_buffer, MAX_CBW_SIZE); 473 usb_drv_recv_nonblocking(ep_out, cbw_buffer, MAX_CBW_SIZE);
474 474
475 int i; 475 int i;
476 for(i=0;i<storage_num_drives();i++) { 476 for(i=0;i<storage_num_drives();i++) {
@@ -685,7 +685,7 @@ bool usb_storage_control_request(struct usb_ctrlrequest* req, unsigned char* des
685 if(skip_first) (*tb.max_lun) --; 685 if(skip_first) (*tb.max_lun) --;
686#endif 686#endif
687 logf("ums: getmaxlun"); 687 logf("ums: getmaxlun");
688 usb_drv_recv(EP_CONTROL, NULL, 0); /* ack */ 688 usb_drv_recv_nonblocking(EP_CONTROL, NULL, 0); /* ack */
689 usb_drv_send(EP_CONTROL, tb.max_lun, 1); 689 usb_drv_send(EP_CONTROL, tb.max_lun, 1);
690 handled = true; 690 handled = true;
691 break; 691 break;
@@ -1187,14 +1187,14 @@ static void send_command_failed_result(void)
1187#if CONFIG_RTC 1187#if CONFIG_RTC
1188static void receive_time(void) 1188static void receive_time(void)
1189{ 1189{
1190 usb_drv_recv(ep_out, tb.transfer_buffer, 12); 1190 usb_drv_recv_nonblocking(ep_out, tb.transfer_buffer, 12);
1191 state = RECEIVING_TIME; 1191 state = RECEIVING_TIME;
1192} 1192}
1193#endif /* CONFIG_RTC */ 1193#endif /* CONFIG_RTC */
1194 1194
1195static void receive_block_data(void *data,int size) 1195static void receive_block_data(void *data,int size)
1196{ 1196{
1197 usb_drv_recv(ep_out, data, size); 1197 usb_drv_recv_nonblocking(ep_out, data, size);
1198 state = RECEIVING_BLOCKS; 1198 state = RECEIVING_BLOCKS;
1199} 1199}
1200 1200
@@ -1210,7 +1210,7 @@ static void send_csw(int status)
1210 state = WAITING_FOR_CSW_COMPLETION_OR_COMMAND; 1210 state = WAITING_FOR_CSW_COMPLETION_OR_COMMAND;
1211 //logf("CSW: %X",status); 1211 //logf("CSW: %X",status);
1212 /* Already start waiting for the next command */ 1212 /* Already start waiting for the next command */
1213 usb_drv_recv(ep_out, cbw_buffer, MAX_CBW_SIZE); 1213 usb_drv_recv_nonblocking(ep_out, cbw_buffer, MAX_CBW_SIZE);
1214 /* The next completed transfer will be either the CSW one 1214 /* The next completed transfer will be either the CSW one
1215 * or the new command */ 1215 * or the new command */
1216 1216