From 53c1d2c8d92e055f02b56e589e9f098a42a1e76c Mon Sep 17 00:00:00 2001 From: Karl Palsson Date: Sun, 20 Apr 2014 14:49:05 +0530 Subject: [PATCH] usb: get_configuration should return bConfigurationValue Rather than the index of the config. This happens to be the same thing if you have zero based sequential configurations. --- lib/usb/usb_standard.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/usb/usb_standard.c b/lib/usb/usb_standard.c index 0333edea..a27f69a8 100644 --- a/lib/usb/usb_standard.c +++ b/lib/usb/usb_standard.c @@ -310,7 +310,8 @@ static int usb_standard_get_configuration(usbd_device *usbd_dev, if (*len > 1) { *len = 1; } - (*buf)[0] = usbd_dev->current_config; + const struct usb_config_descriptor *cfg = &usbd_dev->config[usbd_dev->current_config - 1]; + (*buf)[0] = cfg->bConfigurationValue; return 1; }