Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-22 Thread Greg KH
On Wed, Feb 21, 2007 at 10:24:02AM +0100, Robert Marquardt wrote: Greg KH wrote: Can you send this in 'diff -u' format so that I can apply it (or at least determine where it should go in the driver? Lets try it. A diff of iowarrior.c and iowarrior.h from your kernel tree. I renamed

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-22 Thread Robert Marquardt
Greg KH wrote: I've made these changes, and the locking ones, and will send the driver off to Linus in the next round of patches. Please activate the the ioctl() calls. At least the GETINFO ioctl() call. We can live without the others, but not without the GETINFO call. --

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-21 Thread Robert Marquardt
Greg KH wrote: Can you send this in 'diff -u' format so that I can apply it (or at least determine where it should go in the driver? Lets try it. A diff of iowarrior.c and iowarrior.h from your kernel tree. I renamed packet_size to report_size to make clear what is used in the driver. The

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-21 Thread Guido Körber
Am 20.02.2007 um 19:04 schrieb Alan Stern: On Tue, 20 Feb 2007, Guido Körber wrote: OK, I am starting to understand where that comes from. First of all USB does not allow to send two reports in a single transfer. That's right. Section 8.4 of the USB HID specification explicitly says:

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-21 Thread Guido Körber
Am 20.02.2007 um 20:36 schrieb Alan Stern: On Tue, 20 Feb 2007, Pete Zaitcev wrote: On Tue, 20 Feb 2007 11:57:14 -0500 (EST), Alan Stern [EMAIL PROTECTED] wrote: On Tue, 20 Feb 2007, Guido Körber wrote: There is no situation where a USB device sends multiple reports in the same

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-21 Thread Alan Stern
On Wed, 21 Feb 2007, Guido Körber wrote: But any device not following the specs will hit a wall with Windows and MacOS as well. Don't be so sure. In Pete's case, the misbehaving device was a Microsoft keyboard! What makes you think Windows always implements the spec exactly? (Hint -- it

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-21 Thread Alan Stern
On Wed, 21 Feb 2007, Guido Körber wrote: Am 21.02.2007 um 16:31 schrieb Alan Stern: On Wed, 21 Feb 2007, Guido Körber wrote: But any device not following the specs will hit a wall with Windows and MacOS as well. Don't be so sure. In Pete's case, the misbehaving device was a

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-21 Thread Pete Zaitcev
On Wed, 21 Feb 2007 12:05:55 -0500 (EST), Alan Stern [EMAIL PROTECTED] wrote: The majority of keyboardS is low speed USB, they can send no more than 8 bytes per transfer. The standard keyboard report is exactly 8 bytes long, so there is no chance of fitting two of them into the same

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-20 Thread Robert Marquardt
I just found a bug in the IOWarrior hardware. It can report a wrong wMaxPacketSize on interface 0. The diff fixes that in the driver. 781a782,784 if((dev-interface-cur_altsetting-desc.bInterfaceNumber == 0) (dev-product_id == USB_DEVICE_ID_CODEMERCS_IOW56))

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-20 Thread Robert Marquardt
Robert Marquardt wrote: I just found a bug in the IOWarrior hardware. It can report a wrong wMaxPacketSize on interface 0. The diff fixes that in the driver. To clarify. This is not a bug in the hardware. It is an inconsistency, but it is valid. The problem is that the driver uses

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-20 Thread Alan Stern
On Tue, 20 Feb 2007, Robert Marquardt wrote: Robert Marquardt wrote: I just found a bug in the IOWarrior hardware. It can report a wrong wMaxPacketSize on interface 0. The diff fixes that in the driver. To clarify. This is not a bug in the hardware. It is an inconsistency, but it is

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-20 Thread Guido Körber
PROTECTED], linux-usb- [EMAIL PROTECTED], [EMAIL PROTECTED] Betreff: Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree On Tue, 20 Feb 2007, Robert Marquardt wrote: Robert Marquardt wrote: I just found a bug in the IOWarrior hardware. It can report a wrong

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-20 Thread Alan Stern
On Tue, 20 Feb 2007, Guido Körber wrote: Using maxPacketSize instead of ReportSize is never an option. maxPacketSize signifies the maximum physical transfer size supported by an individual endpoint. This value may be lower, equal, or higher than ReportSize. In the last case multiple

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-20 Thread Guido Körber
Am 20.02.2007 um 17:17 schrieb Alan Stern: On Tue, 20 Feb 2007, Guido Körber wrote: Using maxPacketSize instead of ReportSize is never an option. maxPacketSize signifies the maximum physical transfer size supported by an individual endpoint. This value may be lower, equal, or higher than

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-20 Thread Alan Stern
On Tue, 20 Feb 2007, Guido Körber wrote: There is no situation where a USB device sends multiple reports in the same packet. I've never seen it happen myself, but Pete Zaitcev says he has: http://marc.theaimsgroup.com/?l=linux-usb-develm=116545264427365w=2 Alan Stern

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-20 Thread Guido Körber
OK, I am starting to understand where that comes from. First of all USB does not allow to send two reports in a single transfer. The effect that was described in the forum is likely something that happens in the buffers of the host controller. Since he writes that he had to ignore

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-20 Thread Alan Stern
On Tue, 20 Feb 2007, Guido Körber wrote: OK, I am starting to understand where that comes from. First of all USB does not allow to send two reports in a single transfer. That's right. Section 8.4 of the USB HID specification explicitly says: Only one report is allowed in a

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-20 Thread Pete Zaitcev
On Tue, 20 Feb 2007 11:57:14 -0500 (EST), Alan Stern [EMAIL PROTECTED] wrote: On Tue, 20 Feb 2007, Guido Körber wrote: There is no situation where a USB device sends multiple reports in the same packet. I've never seen it happen myself, but Pete Zaitcev says he has:

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-20 Thread Pete Zaitcev
On Tue, 20 Feb 2007 14:36:33 -0500 (EST), Alan Stern [EMAIL PROTECTED] wrote: Here's the argument for using the maxpacket size: I am not completely persuaded... But at least I see what you're thinking, thanks for the explanation. What are we going to do about iowarror specifically? It would

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-20 Thread Alan Stern
On Tue, 20 Feb 2007, Pete Zaitcev wrote: What are we going to do about iowarror specifically? It would not be the first time we work around broken descriptors. Until/unless other examples show up, I'd say to use the patch written by Robert Marquardt (provided he submits it in the proper

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-20 Thread Greg KH
On Tue, Feb 20, 2007 at 03:48:03PM +0100, Robert Marquardt wrote: I just found a bug in the IOWarrior hardware. It can report a wrong wMaxPacketSize on interface 0. The diff fixes that in the driver. 781a782,784 if((dev-interface-cur_altsetting-desc.bInterfaceNumber == 0)

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-20 Thread Robert Marquardt
Alan Stern wrote: It depends what you want to use it for. For some purposes it is better to use the maxpacket value instead of the report size. Alan Stern In this case definitely the report size is needed. I will change the variable name to reflect that. As soon as i know where to get

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree (was: Want to write driver for IrDA-USB dongle, question on possible course of action)

2007-02-17 Thread Greg KH
On Thu, Feb 15, 2007 at 11:00:35AM -0500, Alex Villac??s Lasso wrote: The usb-iowarrior patch looks interesting, since it might be used to drive a particular USB-IrDA dongle I have (idProduct 0x4200). I have a strong suspicion that this dongle is nothing more than a serial device wired to a

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-16 Thread Samuel Ortiz
Oliver Neukum wrote: Am Donnerstag, 15. Februar 2007 19:35 schrieb Greg KH: On Thu, Feb 15, 2007 at 01:51:31PM +0100, Oliver Neukum wrote: Am Donnerstag, 15. Februar 2007 00:31 schrieb [EMAIL PROTECTED]: +??dev = (struct iowarrior *)file-private_data; + +??/* verify

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-16 Thread Samuel Ortiz
Samuel Ortiz wrote: Oliver Neukum wrote: Am Donnerstag, 15. Februar 2007 19:35 schrieb Greg KH: On Thu, Feb 15, 2007 at 01:51:31PM +0100, Oliver Neukum wrote: Am Donnerstag, 15. Februar 2007 00:31 schrieb [EMAIL PROTECTED]: +??dev = (struct iowarrior *)file-private_data; +

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-16 Thread Oliver Neukum
Am Freitag, 16. Februar 2007 09:41 schrieb Samuel Ortiz: One stupid question: Suppose we're in iowarrior_read(), got a pointer on private_data, but haven't taken the mutex yet. iowarrior_release() is called, locks the mutex, decrements the opened counter to 0, and then call

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-16 Thread Samuel Ortiz
Oliver Neukum wrote: Am Freitag, 16. Februar 2007 09:41 schrieb Samuel Ortiz: One stupid question: Suppose we're in iowarrior_read(), got a pointer on private_data, but haven't taken the mutex yet. iowarrior_release() is called, locks the mutex, decrements the opened counter to 0, and then

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-16 Thread Oliver Neukum
Am Freitag, 16. Februar 2007 12:40 schrieb Samuel Ortiz: Oliver Neukum wrote: Am Freitag, 16. Februar 2007 09:41 schrieb Samuel Ortiz: One stupid question: Suppose we're in iowarrior_read(), got a pointer on private_data, but haven't taken the mutex yet. iowarrior_release() is

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-15 Thread Oliver Neukum
Am Donnerstag, 15. Februar 2007 00:31 schrieb [EMAIL PROTECTED]: +   dev = (struct iowarrior *)file-private_data; + +   /* verify that the device wasn't unplugged */ +   if (dev == NULL || !dev-present) { +   retval = -ENODEV; +   goto exit; +   }

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-15 Thread Robert Marquardt
Oliver Neukum wrote: This needs the lock to be taken. You've a race condition that allows URBs to be submitted for an interface that somebody else may have claimed. Regards Oliver Thanks for the info. I think Greg should fix that in his version to avoid any problems

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-15 Thread Oliver Neukum
Am Donnerstag, 15. Februar 2007 14:27 schrieb Robert Marquardt: Oliver Neukum wrote: This needs the lock to be taken. You've a race condition that allows URBs to be submitted for an interface that somebody else may have claimed. Regards Oliver Thanks for the

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-15 Thread Samuel Ortiz
[EMAIL PROTECTED] wrote: +static int iowarrior_release(struct inode *inode, struct file *file) +{ + struct iowarrior *dev; + int retval = 0; + + dev = (struct iowarrior *)file-private_data; + if (dev == NULL) { + return -ENODEV; + } + + dbg(%s -

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-15 Thread Robert Marquardt
Samuel Ortiz wrote: [EMAIL PROTECTED] wrote: +static int iowarrior_release(struct inode *inode, struct file *file) +{ +struct iowarrior *dev; +int retval = 0; + +dev = (struct iowarrior *)file-private_data; +if (dev == NULL) { +return -ENODEV; +} + +

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-15 Thread Greg KH
On Thu, Feb 15, 2007 at 02:38:08PM +0100, Oliver Neukum wrote: Am Donnerstag, 15. Februar 2007 14:27 schrieb Robert Marquardt: Oliver Neukum wrote: This needs the lock to be taken. You've a race condition that allows URBs to be submitted for an interface that somebody else may have

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree (was: Want to write driver for IrDA-USB dongle, question on possible course of action)

2007-02-15 Thread Alex Villací­s Lasso
The usb-iowarrior patch looks interesting, since it might be used to drive a particular USB-IrDA dongle I have (idProduct 0x4200). I have a strong suspicion that this dongle is nothing more than a serial device wired to a IR transceiver. What should I take into account in order to test this

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-15 Thread Greg KH
On Thu, Feb 15, 2007 at 03:56:54PM +0100, Robert Marquardt wrote: Samuel Ortiz wrote: [EMAIL PROTECTED] wrote: +static int iowarrior_release(struct inode *inode, struct file *file) +{ +struct iowarrior *dev; +int retval = 0; + +dev = (struct iowarrior *)file-private_data; +

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-15 Thread Greg KH
On Thu, Feb 15, 2007 at 03:18:23PM +0100, Samuel Ortiz wrote: [EMAIL PROTECTED] wrote: +static int iowarrior_release(struct inode *inode, struct file *file) +{ +struct iowarrior *dev; +int retval = 0; + +dev = (struct iowarrior *)file-private_data; +if (dev == NULL) { +

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-15 Thread Greg KH
On Thu, Feb 15, 2007 at 01:51:31PM +0100, Oliver Neukum wrote: Am Donnerstag, 15. Februar 2007 00:31 schrieb [EMAIL PROTECTED]: +??dev = (struct iowarrior *)file-private_data; + +??/* verify that the device wasn't unplugged */ +??if (dev == NULL ||

Re: [linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-15 Thread Oliver Neukum
Am Donnerstag, 15. Februar 2007 19:35 schrieb Greg KH: On Thu, Feb 15, 2007 at 01:51:31PM +0100, Oliver Neukum wrote: Am Donnerstag, 15. Februar 2007 00:31 schrieb [EMAIL PROTECTED]: +??dev = (struct iowarrior *)file-private_data; + +??/* verify that the device

[linux-usb-devel] patch usb-iowarrior.patch added to gregkh-2.6 tree

2007-02-14 Thread gregkh
This is a note to let you know that I've just added the patch titled Subject: USB: add driver for iowarrior devices. to my gregkh-2.6 tree. Its filename is usb-iowarrior.patch This tree can be found at http://www.kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/patches/