aboutsummaryrefslogtreecommitdiff
path: root/drivers/usb/gadget/u_ether.c
diff options
context:
space:
mode:
authorDaniel Mack <daniel@caiaq.de>2009-07-10 11:04:58 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2009-07-12 15:16:40 -0700
commit0cce2eda19923e5e5ccc8b042dec5af87b3ffad0 (patch)
tree7222080c1f276caacd237f239dac0704107da319 /drivers/usb/gadget/u_ether.c
parentc5f3d87d61a116fdf2e4a2804d5e32cf8a4eeac7 (diff)
USB: fix LANGID=0 regression
commit b7af0bb ("USB: allow malformed LANGID descriptors") broke support for devices without string descriptor support. Reporting string descriptors is optional to USB devices, and a device lets us know it can't deal with strings by responding to the LANGID request with a STALL token. The kernel handled that correctly before b7af0bb came in, but failed hard if the LANGID was reported but broken. More than that, if a device was not able to provide string descriptors, the LANGID was retrieved over and over again at each string read request. This patch changes the behaviour so that a) the LANGID is only queried once b) devices which can't handle string requests are not asked again c) devices with malformed LANGID values have a sane fallback to 0x0409 Signed-off-by: Daniel Mack <daniel@caiaq.de> Acked-by: Alan Stern <stern@rowland.harvard.edu> Cc: stable <stable@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/gadget/u_ether.c')
0 files changed, 0 insertions, 0 deletions