summaryrefslogtreecommitdiff
path: root/firmware/usbstack
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/usbstack')
-rw-r--r--firmware/usbstack/usb_core.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/firmware/usbstack/usb_core.c b/firmware/usbstack/usb_core.c
index b1e13cd..27d545d 100644
--- a/firmware/usbstack/usb_core.c
+++ b/firmware/usbstack/usb_core.c
@@ -381,7 +381,10 @@ void usb_core_control_request(struct usb_ctrlrequest* req)
usb_storage_control_request(req);
#endif
ack_control(req);
- usb_state = CONFIGURED;
+ if (req->wValue)
+ usb_state = CONFIGURED;
+ else
+ usb_state = ADDRESS;
break;
case USB_REQ_GET_CONFIGURATION: {