From: Greg KH To: torvalds@transmeta.com Cc: linux-usb-devel@lists.sourceforge.net Subject: [BK PATCH] USB changes for 2.5.21 More USB changes for 2.5.21 Pull from: bk://linuxusb.bkbits.net/linus-2.5 drivers/usb/Makefile | 1 drivers/usb/class/printer.c | 8 drivers/usb/core/message.c | 8 drivers/usb/host/ohci-hcd.c | 103 ++++++---- drivers/usb/input/Config.help | 11 + drivers/usb/input/Config.in | 1 drivers/usb/input/Makefile | 3 drivers/usb/input/aiptek.c | 339 +++++++++++++++++++++++++++++++++++ drivers/usb/media/ov511.c | 2 drivers/usb/media/pwc-if.c | 2 drivers/usb/media/se401.c | 18 - drivers/usb/media/stv680.c | 2 drivers/usb/media/stv680.h | 2 drivers/usb/media/vicam.c | 2 drivers/usb/net/kaweth.c | 23 +- drivers/usb/serial/belkin_sa.c | 4 drivers/usb/serial/cyberjack.c | 4 drivers/usb/serial/digi_acceleport.c | 8 drivers/usb/serial/empeg.c | 4 drivers/usb/serial/ftdi_sio.c | 8 drivers/usb/serial/io_tables.h | 16 - drivers/usb/serial/ipaq.c | 4 drivers/usb/serial/ir-usb.c | 4 drivers/usb/serial/keyspan.h | 16 - drivers/usb/serial/keyspan_pda.c | 12 - drivers/usb/serial/kl5kusb105.c | 4 drivers/usb/serial/mct_u232.c | 4 drivers/usb/serial/omninet.c | 2 drivers/usb/serial/pl2303.c | 4 drivers/usb/serial/safe_serial.c | 4 drivers/usb/serial/usb-serial.h | 22 +- drivers/usb/serial/usbserial.c | 110 +++++++++-- drivers/usb/serial/visor.c | 41 ++-- drivers/usb/serial/whiteheat.c | 34 +-- 34 files changed, 656 insertions(+), 174 deletions(-) ------ ChangeSet@1.491, 2002-06-14 13:59:39-07:00, greg@kroah.com USB: fixups due to the aiptek patch to get everything to build properly. drivers/usb/Makefile | 1 + drivers/usb/input/Makefile | 2 +- drivers/usb/input/aiptek.c | 6 ++++++ 3 files changed, 8 insertions(+), 1 deletion(-) ------ ChangeSet@1.490, 2002-06-14 13:57:18-07:00, bwheadley@earthlink.net [PATCH] add Aiptek 8000U USB driver This patch adds support for the Aiptek 8000U driver to the kernel tree. drivers/usb/input/Config.help | 11 + drivers/usb/input/Config.in | 1 drivers/usb/input/Makefile | 1 drivers/usb/input/aiptek.c | 333 ++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 346 insertions(+) ------ ChangeSet@1.489, 2002-06-14 13:35:21-07:00, greg@kroah.com USB serial drivers: changed startup() to attach() due to usbserial api change. drivers/usb/serial/belkin_sa.c | 2 +- drivers/usb/serial/cyberjack.c | 2 +- drivers/usb/serial/digi_acceleport.c | 4 ++-- drivers/usb/serial/empeg.c | 2 +- drivers/usb/serial/ftdi_sio.c | 4 ++-- drivers/usb/serial/io_tables.h | 8 ++++---- drivers/usb/serial/ipaq.c | 2 +- drivers/usb/serial/ir-usb.c | 2 +- drivers/usb/serial/keyspan.h | 8 ++++---- drivers/usb/serial/keyspan_pda.c | 6 +++--- drivers/usb/serial/kl5kusb105.c | 2 +- drivers/usb/serial/mct_u232.c | 2 +- drivers/usb/serial/pl2303.c | 2 +- drivers/usb/serial/safe_serial.c | 2 +- 14 files changed, 24 insertions(+), 24 deletions(-) ------ ChangeSet@1.488, 2002-06-14 13:34:29-07:00, greg@kroah.com USB whiteheat driver: changes due to the usb-serial api changes. - moved the firmware download to probe() time drivers/usb/serial/whiteheat.c | 30 +++++++++++++++--------------- 1 files changed, 15 insertions(+), 15 deletions(-) ------ ChangeSet@1.487, 2002-06-14 13:33:03-07:00, greg@kroah.com USB visor driver: changes due to core api changes - added calc_num_ports() ability to determine the number of actual ports the device has on the fly. This should help out with some of the Palm and Sony devices. drivers/usb/serial/visor.c | 31 ++++++++++++++++++++++++------- 1 files changed, 24 insertions(+), 7 deletions(-) ------ ChangeSet@1.486, 2002-06-14 13:31:35-07:00, greg@kroah.com USB: usb-serial api changes - added calc_num_ports() callback so that driver can override the fixed num_ports value after querying the device. - split startup() callback into probe() and attach() in anticipation of the driverfs api changes - probe() is called before the usb_serial structure is set up, and can be used to download firmware to a device, and other early initialization. - attach() is called after the usb_serial structure is completely setup, allowing the device to create private structures, and have full access to the device. drivers/usb/serial/usb-serial.h | 22 ++++++-- drivers/usb/serial/usbserial.c | 110 ++++++++++++++++++++++++++++++++-------- 2 files changed, 107 insertions(+), 25 deletions(-) ------ ChangeSet@1.485, 2002-06-14 09:45:04-07:00, tiwai@suse.de [PATCH] usb_set_interface for discontinous altsettings during debugging ALSA's usb audio driver, it's found out that there are devices with insuccessive alternate settings. for example, m-audio's quattro usb audio has audio streaming descriptors jumping from altset 0 to 4 or 3. apparently, usb_set_interface() sends the array index instead of the actual altset value. the attached patch fixes this behavior. drivers/usb/core/message.c | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) ------ ChangeSet@1.484, 2002-06-13 16:45:54-07:00, flavien@lebarbe.net [PATCH] usblp_ioctl for non-little-endian machines ioctl(LPGETSTATUS) is known to put the status into an int. The usblp driver has a problem in this area as it does not put it into an int but into a char. Let's see : from drivers/char/lp.c : lp_ioctl : int status copy_to_user((int *) arg, &status, sizeof(int)) from drivers/usb/printer.c : usblp_ioctl : unsigned char status; copy_to_user ((unsigned char *)arg, &status, 1) Even though in most cases it can work unnoticed on little-endian machines ;o), it's broken on non-little-endian machines (I got bitten on PPC). drivers/usb/class/printer.c | 8 +++++--- 1 files changed, 5 insertions(+), 3 deletions(-) ------ ChangeSet@1.483, 2002-06-13 16:43:37-07:00, oliver@neukum.name [PATCH] USB: saving memory on kaweth this saves memory by making the buffer for firmware temporary. drivers/usb/net/kaweth.c | 23 ++++++++++++++++------- 1 files changed, 16 insertions(+), 7 deletions(-) ------ ChangeSet@1.482, 2002-06-13 16:39:09-07:00, david-b@pacbell.net [PATCH] ohci-hcd init err detect Here's a followup patch, should apply on top of what I sent this morning ... please do so! (Sorry, same name but the patch is different.) Along with some cleanups, this actually restores a line that was dropped somewhere in 2.5 ... basically, at least SiS and OPTi violate the OHCI spec so they don't init "by the book". drivers/usb/host/ohci-hcd.c | 59 ++++++++++++++++++++++++++------------------ 1 files changed, 36 insertions(+), 23 deletions(-) ------ ChangeSet@1.481, 2002-06-12 14:15:25-07:00, greg@kroah.com USB: fixed problems when CONFIG_HOTPLUG=n and usb drivers were built into the kernel. removed __devinitdata and __devinit on structures and functions that should not have them. Thanks to Tom Rini for pointing this out. drivers/usb/media/ov511.c | 2 +- drivers/usb/media/pwc-if.c | 2 +- drivers/usb/media/se401.c | 18 ++---------------- drivers/usb/media/stv680.c | 2 +- drivers/usb/media/stv680.h | 2 +- drivers/usb/media/vicam.c | 2 +- drivers/usb/serial/belkin_sa.c | 2 +- drivers/usb/serial/cyberjack.c | 2 +- drivers/usb/serial/digi_acceleport.c | 4 ++-- drivers/usb/serial/empeg.c | 2 +- drivers/usb/serial/ftdi_sio.c | 4 ++-- drivers/usb/serial/io_tables.h | 8 ++++---- drivers/usb/serial/ipaq.c | 2 +- drivers/usb/serial/ir-usb.c | 2 +- drivers/usb/serial/keyspan.h | 8 ++++---- drivers/usb/serial/keyspan_pda.c | 6 +++--- drivers/usb/serial/kl5kusb105.c | 2 +- drivers/usb/serial/mct_u232.c | 2 +- drivers/usb/serial/omninet.c | 2 +- drivers/usb/serial/pl2303.c | 2 +- drivers/usb/serial/safe_serial.c | 2 +- drivers/usb/serial/visor.c | 10 +++++----- drivers/usb/serial/whiteheat.c | 4 ++-- 23 files changed, 39 insertions(+), 53 deletions(-) ------ ChangeSet@1.480, 2002-06-12 13:59:06-07:00, david-b@pacbell.net [PATCH] ohci-hcd init err detect I tracked down some of those "can't enumerate" problems to a chip init problem. This patch detects and reports that case (better than the current nasty failure mode, and worth keeping even after we have a fix that works on OPTi/SiS/...) as well as doing some other minor cleanup. except that the repository that you are pushing to is 52 changesets ahead of your repository. Please do a "bk pull" to get these changes or do a "bk pull -nl" to see what they are. drivers/usb/host/ohci-hcd.c | 44 ++++++++++++++++++++++++++++++-------------- 1 files changed, 30 insertions(+), 14 deletions(-) ------