diff options
Diffstat (limited to 'firmware/usbstack/usb_core.c')
-rw-r--r-- | firmware/usbstack/usb_core.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/firmware/usbstack/usb_core.c b/firmware/usbstack/usb_core.c index eef963cf8a..64690a1d32 100644 --- a/firmware/usbstack/usb_core.c +++ b/firmware/usbstack/usb_core.c | |||
@@ -631,14 +631,6 @@ static void usb_core_control_request_handler(struct usb_ctrlrequest* req) | |||
631 | } | 631 | } |
632 | size = sizeof(struct usb_config_descriptor); | 632 | size = sizeof(struct usb_config_descriptor); |
633 | 633 | ||
634 | #ifdef USB_CHARGING_ONLY | ||
635 | if(usb_core_charging_enabled){ | ||
636 | charging_interface_descriptor.bInterfaceNumber=interface_number; | ||
637 | interface_number++; | ||
638 | memcpy(&response_data[size],&charging_interface_descriptor,sizeof(struct usb_interface_descriptor)); | ||
639 | size += sizeof(struct usb_interface_descriptor); | ||
640 | } | ||
641 | #endif | ||
642 | #ifdef USB_STORAGE | 634 | #ifdef USB_STORAGE |
643 | if(usb_core_storage_enabled){ | 635 | if(usb_core_storage_enabled){ |
644 | mass_storage_ep_in_descriptor.wMaxPacketSize=max_packet_size; | 636 | mass_storage_ep_in_descriptor.wMaxPacketSize=max_packet_size; |
@@ -682,6 +674,14 @@ static void usb_core_control_request_handler(struct usb_ctrlrequest* req) | |||
682 | size += sizeof(struct usb_endpoint_descriptor); | 674 | size += sizeof(struct usb_endpoint_descriptor); |
683 | } | 675 | } |
684 | #endif | 676 | #endif |
677 | #ifdef USB_CHARGING_ONLY | ||
678 | if(usb_core_charging_enabled && interface_number == 0){ | ||
679 | charging_interface_descriptor.bInterfaceNumber=interface_number; | ||
680 | interface_number++; | ||
681 | memcpy(&response_data[size],&charging_interface_descriptor,sizeof(struct usb_interface_descriptor)); | ||
682 | size += sizeof(struct usb_interface_descriptor); | ||
683 | } | ||
684 | #endif | ||
685 | config_descriptor.bNumInterfaces=interface_number; | 685 | config_descriptor.bNumInterfaces=interface_number; |
686 | config_descriptor.wTotalLength = size; | 686 | config_descriptor.wTotalLength = size; |
687 | memcpy(&response_data[0],&config_descriptor,sizeof(struct usb_config_descriptor)); | 687 | memcpy(&response_data[0],&config_descriptor,sizeof(struct usb_config_descriptor)); |