Re: 2.6.20-rc4-mm1: different values for OHCI_QUIRK_ZFMICRO

David Brownell <[email protected]>
Newsgroups gmane.linux.kernel,gmane.linux.usb.devel
Message-ID <[email protected]>
On Thursday 29 March 2007 3:06 pm, Randy Dunlap wrote:
> On Tue, 20 Feb 2007 01:06:54 +0100 Adrian Bunk wrote:
> 
> > On Sun, Jan 14, 2007 at 06:36:10AM -0800, David Brownell wrote:
> > > On Sunday 14 January 2007 1:10 am, Adrian Bunk wrote:
> > > > <--  snip  -->
> > > 
> > > Waiting for Tony to submit bugfixes to his driver...
> > 
> > Still unfixed as of 2.6.20-mm1.
>
> so is there a patch around for this yet?
> 
> or shall someone other than Tony (??) make one?

ISTR posting the appended patch back in January; it's been
refreshed since then.  Presumably it still works.

- Dave

=============	CUT HERE
Partial fix for bogosity in the ftdi-elan and u13-hcd drivers ... these
have no business including with the internals of other drivers, much less
doing so in a broken way!!

Signed-off-by: David Brownell <[email protected]>

Index: g26/drivers/usb/misc/ftdi-elan.c
===================================================================
--- g26.orig/drivers/usb/misc/ftdi-elan.c	2007-01-02 20:05:33.000000000 -0800
+++ g26/drivers/usb/misc/ftdi-elan.c	2007-02-08 18:45:13.000000000 -0800
@@ -73,6 +73,13 @@ static struct list_head ftdi_static_list
 #include "usb_u132.h"
 #include <asm/io.h>
 #include "../core/hcd.h"
+
+	/* FIXME ohci.h is ONLY for internal use by the OHCI driver.
+	 * If you're going to try crap like this, you need to split
+	 * out the common stuff (register declarations?) into a
+	 * sharable file, maybe name <linux/usb/ohci.h>
+	 */
+
 #include "../host/ohci.h"
 /* Define these values to match your devices*/
 #define USB_FTDI_ELAN_VENDOR_ID 0x0403
@@ -2300,11 +2307,7 @@ static int ftdi_elan_checkingPCI(struct 
         offsetof(struct ohci_regs, member), 0, data);
 #define ftdi_write_pcimem(ftdi, member, data) ftdi_elan_write_pcimem(ftdi, \
         offsetof(struct ohci_regs, member), 0, data);
-#define OHCI_QUIRK_AMD756 0x01
-#define OHCI_QUIRK_SUPERIO 0x02
-#define OHCI_QUIRK_INITRESET 0x04
-#define OHCI_BIG_ENDIAN 0x08
-#define OHCI_QUIRK_ZFMICRO 0x10
+
 #define OHCI_CONTROL_INIT OHCI_CTRL_CBSR
 #define OHCI_INTR_INIT (OHCI_INTR_MIE | OHCI_INTR_UE | OHCI_INTR_RD | \
         OHCI_INTR_WDH)
Index: g26/drivers/usb/host/u132-hcd.c
===================================================================
--- g26.orig/drivers/usb/host/u132-hcd.c	2007-01-02 20:05:33.000000000 -0800
+++ g26/drivers/usb/host/u132-hcd.c	2007-02-08 18:45:06.000000000 -0800
@@ -58,6 +58,13 @@
 #include <asm/system.h>
 #include <asm/byteorder.h>
 #include "../core/hcd.h"
+
+	/* FIXME ohci.h is ONLY for internal use by the OHCI driver.
+	 * If you're going to try crap like this, you need to split
+	 * out the common stuff (register declarations?) into a
+	 * sharable file, maybe name <linux/usb/ohci.h>
+	 */
+
 #include "ohci.h"
 #define OHCI_CONTROL_INIT OHCI_CTRL_CBSR
 #define OHCI_INTR_INIT (OHCI_INTR_MIE | OHCI_INTR_UE | OHCI_INTR_RD | \
@@ -174,11 +181,6 @@ struct u132_ring {
         struct u132_endp *curr_endp;
         struct delayed_work scheduler;
 };
-#define OHCI_QUIRK_AMD756 0x01
-#define OHCI_QUIRK_SUPERIO 0x02
-#define OHCI_QUIRK_INITRESET 0x04
-#define OHCI_BIG_ENDIAN 0x08
-#define OHCI_QUIRK_ZFMICRO 0x10
 struct u132 {
         struct kref kref;
         struct list_head u132_list;
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.