Skip to content

Commit b01cf67

Browse files
committed
Merge tag 'usb-4.8-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
Pull USB fixes from Greg KH: "Here are two small fixes, and one new device id, for 4.8-rc7 The fixes solve a build error that was reported in your tree for the blackfin arch, and resolve an issue with a number of broken USB devices that reported the wrong interval rate. Included here is also a new device id for the usb-serial driver. All have been in linux-next with no reported issues" * tag 'usb-4.8-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: USB: change bInterval default to 10 ms usb: musb: Fix tusb6010 compile error on blackfin USB: serial: simple: add support for another Infineon flashloader
2 parents 88b4ad2 + e06226e commit b01cf67

File tree

3 files changed

+20
-13
lines changed

3 files changed

+20
-13
lines changed

drivers/usb/core/config.c

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -240,8 +240,10 @@ static int usb_parse_endpoint(struct device *ddev, int cfgno, int inum,
240240
memcpy(&endpoint->desc, d, n);
241241
INIT_LIST_HEAD(&endpoint->urb_list);
242242

243-
/* Fix up bInterval values outside the legal range. Use 32 ms if no
244-
* proper value can be guessed. */
243+
/*
244+
* Fix up bInterval values outside the legal range.
245+
* Use 10 or 8 ms if no proper value can be guessed.
246+
*/
245247
i = 0; /* i = min, j = max, n = default */
246248
j = 255;
247249
if (usb_endpoint_xfer_int(d)) {
@@ -250,13 +252,15 @@ static int usb_parse_endpoint(struct device *ddev, int cfgno, int inum,
250252
case USB_SPEED_SUPER_PLUS:
251253
case USB_SPEED_SUPER:
252254
case USB_SPEED_HIGH:
253-
/* Many device manufacturers are using full-speed
255+
/*
256+
* Many device manufacturers are using full-speed
254257
* bInterval values in high-speed interrupt endpoint
255-
* descriptors. Try to fix those and fall back to a
256-
* 32 ms default value otherwise. */
258+
* descriptors. Try to fix those and fall back to an
259+
* 8-ms default value otherwise.
260+
*/
257261
n = fls(d->bInterval*8);
258262
if (n == 0)
259-
n = 9; /* 32 ms = 2^(9-1) uframes */
263+
n = 7; /* 8 ms = 2^(7-1) uframes */
260264
j = 16;
261265

262266
/*
@@ -271,21 +275,23 @@ static int usb_parse_endpoint(struct device *ddev, int cfgno, int inum,
271275
}
272276
break;
273277
default: /* USB_SPEED_FULL or _LOW */
274-
/* For low-speed, 10 ms is the official minimum.
278+
/*
279+
* For low-speed, 10 ms is the official minimum.
275280
* But some "overclocked" devices might want faster
276-
* polling so we'll allow it. */
277-
n = 32;
281+
* polling so we'll allow it.
282+
*/
283+
n = 10;
278284
break;
279285
}
280286
} else if (usb_endpoint_xfer_isoc(d)) {
281287
i = 1;
282288
j = 16;
283289
switch (to_usb_device(ddev)->speed) {
284290
case USB_SPEED_HIGH:
285-
n = 9; /* 32 ms = 2^(9-1) uframes */
291+
n = 7; /* 8 ms = 2^(7-1) uframes */
286292
break;
287293
default: /* USB_SPEED_FULL */
288-
n = 6; /* 32 ms = 2^(6-1) frames */
294+
n = 4; /* 8 ms = 2^(4-1) frames */
289295
break;
290296
}
291297
}

drivers/usb/musb/Kconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ config USB_MUSB_DA8XX
8787
config USB_MUSB_TUSB6010
8888
tristate "TUSB6010"
8989
depends on HAS_IOMEM
90-
depends on ARCH_OMAP2PLUS || COMPILE_TEST
90+
depends on (ARCH_OMAP2PLUS || COMPILE_TEST) && !BLACKFIN
9191
depends on NOP_USB_XCEIV = USB_MUSB_HDRC # both built-in or both modules
9292

9393
config USB_MUSB_OMAP2PLUS

drivers/usb/serial/usb-serial-simple.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,8 @@ DEVICE(funsoft, FUNSOFT_IDS);
5454
/* Infineon Flashloader driver */
5555
#define FLASHLOADER_IDS() \
5656
{ USB_DEVICE_INTERFACE_CLASS(0x058b, 0x0041, USB_CLASS_CDC_DATA) }, \
57-
{ USB_DEVICE(0x8087, 0x0716) }
57+
{ USB_DEVICE(0x8087, 0x0716) }, \
58+
{ USB_DEVICE(0x8087, 0x0801) }
5859
DEVICE(flashloader, FLASHLOADER_IDS);
5960

6061
/* Google Serial USB SubClass */

0 commit comments

Comments
 (0)