rpms/kernel/devel linux-2.6-ohci-multi-init.patch, 1.1, 1.2 linux-2.6-usb-endian-quirks.patch, 1.1, 1.2
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Fri Dec 29 10:57:32 UTC 2006
Author: dwmw2
Update of /cvs/dist/rpms/kernel/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv18777
Modified Files:
linux-2.6-ohci-multi-init.patch
linux-2.6-usb-endian-quirks.patch
Log Message:
Fix USB patches
linux-2.6-ohci-multi-init.patch:
ohci-at91.c | 15 --------
ohci-au1xxx.c | 16 ---------
ohci-ep93xx.c | 12 ------
ohci-hcd.c | 98 ++++++++++++++++++++++++++++++++++++++++++++++++---------
ohci-lh7a404.c | 16 ---------
ohci-omap.c | 19 -----------
ohci-pci.c | 20 -----------
ohci-pnx4008.c | 12 ------
ohci-pnx8550.c | 16 ---------
ohci-ppc-soc.c | 16 ---------
ohci-pxa27x.c | 16 ---------
ohci-s3c2410.c | 12 ------
ohci-sa1111.c | 16 ---------
13 files changed, 83 insertions(+), 201 deletions(-)
Index: linux-2.6-ohci-multi-init.patch
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/linux-2.6-ohci-multi-init.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- linux-2.6-ohci-multi-init.patch 17 Dec 2006 17:29:07 -0000 1.1
+++ linux-2.6-ohci-multi-init.patch 29 Dec 2006 10:57:30 -0000 1.2
@@ -1,7 +1,10 @@
-From e7b5f22b56d5d941cde3a76e62e5984ba155c241 Mon Sep 17 00:00:00 2001
+From tnt at 246tNt.com Wed Dec 13 12:37:18 2006
From: Sylvain Munaut <tnt at 246tNt.com>
-Date: Wed, 13 Dec 2006 20:35:37 +0100
-Subject: [PATCH] ohci: Rework bus glue integration to allow several at once
+To: Greg KH <greg at kroah.com>
+Cc: David Brownell <david-b at pacbell.net>, linux-usb-devel at lists.sourceforge.net, Benjamin Herrenschmidt <benh at kernel.crashing.org>, Sylvain Munaut <tnt at 246tNt.com>
+Subject: ohci: Rework bus glue integration to allow several at once
+Date: Wed, 13 Dec 2006 21:09:54 +0100
+Message-Id: <1166040597363-git-send-email-tnt at 246tNt.com>
The previous model had the module_init & module_exit function in the
bus glue .c files themselves. That's a problem if several glues need
@@ -15,26 +18,26 @@
Signed-off-by: Sylvain Munaut <tnt at 246tNt.com>
Acked-by: David Brownell <dbrownell at users.sourceforge.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh at suse.de>
+
---
drivers/usb/host/ohci-at91.c | 15 ------
drivers/usb/host/ohci-au1xxx.c | 16 ------
- drivers/usb/host/ohci-ep93xx.c | 12 -----
- drivers/usb/host/ohci-hcd.c | 98 +++++++++++++++++++++++++++++++++------
+ drivers/usb/host/ohci-ep93xx.c | 12 ----
+ drivers/usb/host/ohci-hcd.c | 98 +++++++++++++++++++++++++++++++++-------
drivers/usb/host/ohci-lh7a404.c | 16 ------
- drivers/usb/host/ohci-omap.c | 19 --------
+ drivers/usb/host/ohci-omap.c | 19 -------
drivers/usb/host/ohci-pci.c | 20 --------
- drivers/usb/host/ohci-pnx4008.c | 12 -----
+ drivers/usb/host/ohci-pnx4008.c | 12 ----
drivers/usb/host/ohci-pnx8550.c | 16 ------
drivers/usb/host/ohci-ppc-soc.c | 16 ------
drivers/usb/host/ohci-pxa27x.c | 16 ------
- drivers/usb/host/ohci-s3c2410.c | 12 -----
+ drivers/usb/host/ohci-s3c2410.c | 12 ----
drivers/usb/host/ohci-sa1111.c | 16 ------
13 files changed, 83 insertions(+), 201 deletions(-)
-diff --git a/drivers/usb/host/ohci-at91.c b/drivers/usb/host/ohci-at91.c
-index cc40551..53f62cf 100644
---- a/drivers/usb/host/ohci-at91.c
-+++ b/drivers/usb/host/ohci-at91.c
+--- gregkh-2.6.orig/drivers/usb/host/ohci-at91.c
++++ gregkh-2.6/drivers/usb/host/ohci-at91.c
@@ -320,18 +320,3 @@ static struct platform_driver ohci_hcd_a
},
};
@@ -54,10 +57,8 @@
-
-module_init (ohci_hcd_at91_init);
-module_exit (ohci_hcd_at91_cleanup);
-diff --git a/drivers/usb/host/ohci-au1xxx.c b/drivers/usb/host/ohci-au1xxx.c
-index e70b243..663a060 100644
---- a/drivers/usb/host/ohci-au1xxx.c
-+++ b/drivers/usb/host/ohci-au1xxx.c
+--- gregkh-2.6.orig/drivers/usb/host/ohci-au1xxx.c
++++ gregkh-2.6/drivers/usb/host/ohci-au1xxx.c
@@ -345,19 +345,3 @@ static struct platform_driver ohci_hcd_a
},
};
@@ -78,11 +79,9 @@
-
-module_init (ohci_hcd_au1xxx_init);
-module_exit (ohci_hcd_au1xxx_cleanup);
-diff --git a/drivers/usb/host/ohci-ep93xx.c b/drivers/usb/host/ohci-ep93xx.c
-index 43ae696..e9974c3 100644
---- a/drivers/usb/host/ohci-ep93xx.c
-+++ b/drivers/usb/host/ohci-ep93xx.c
-@@ -214,15 +214,3 @@ #endif
+--- gregkh-2.6.orig/drivers/usb/host/ohci-ep93xx.c
++++ gregkh-2.6/drivers/usb/host/ohci-ep93xx.c
+@@ -214,15 +214,3 @@ static struct platform_driver ohci_hcd_e
},
};
@@ -98,11 +97,9 @@
-
-module_init(ohci_hcd_ep93xx_init);
-module_exit(ohci_hcd_ep93xx_cleanup);
-diff --git a/drivers/usb/host/ohci-hcd.c b/drivers/usb/host/ohci-hcd.c
-index c1c1d87..9926b8f 100644
---- a/drivers/usb/host/ohci-hcd.c
-+++ b/drivers/usb/host/ohci-hcd.c
-@@ -855,59 +855,126 @@ MODULE_LICENSE ("GPL");
+--- gregkh-2.6.orig/drivers/usb/host/ohci-hcd.c
++++ gregkh-2.6/drivers/usb/host/ohci-hcd.c
+@@ -855,63 +855,131 @@ MODULE_LICENSE ("GPL");
#ifdef CONFIG_PCI
#include "ohci-pci.c"
@@ -144,6 +141,14 @@
+#define PLATFORM_DRIVER ohci_hcd_au1xxx_driver
#endif
+-#ifdef CONFIG_PNX8550
+-#include "ohci-pnx8550.c"
+-#endif
++#ifdef CONFIG_PNX8550
++#include "ohci-pnx8550.c"
++#define PLATFORM_DRIVER ohci_hcd_pnx8550_driver
++#endif
+
#ifdef CONFIG_USB_OHCI_HCD_PPC_SOC
#include "ohci-ppc-soc.c"
+#define PLATFORM_DRIVER ohci_hcd_ppc_soc_driver
@@ -241,10 +246,8 @@
+}
+module_exit(ohci_hcd_mod_exit);
+
-diff --git a/drivers/usb/host/ohci-lh7a404.c b/drivers/usb/host/ohci-lh7a404.c
-index e9807cf..4a043ab 100644
---- a/drivers/usb/host/ohci-lh7a404.c
-+++ b/drivers/usb/host/ohci-lh7a404.c
+--- gregkh-2.6.orig/drivers/usb/host/ohci-lh7a404.c
++++ gregkh-2.6/drivers/usb/host/ohci-lh7a404.c
@@ -251,19 +251,3 @@ static struct platform_driver ohci_hcd_l
},
};
@@ -265,11 +268,9 @@
-
-module_init (ohci_hcd_lh7a404_init);
-module_exit (ohci_hcd_lh7a404_cleanup);
-diff --git a/drivers/usb/host/ohci-omap.c b/drivers/usb/host/ohci-omap.c
-index 27be1f9..5cfa3d1 100644
---- a/drivers/usb/host/ohci-omap.c
-+++ b/drivers/usb/host/ohci-omap.c
-@@ -544,22 +544,3 @@ #endif
+--- gregkh-2.6.orig/drivers/usb/host/ohci-omap.c
++++ gregkh-2.6/drivers/usb/host/ohci-omap.c
+@@ -544,22 +544,3 @@ static struct platform_driver ohci_hcd_o
},
};
@@ -292,16 +293,14 @@
-
-module_init (ohci_hcd_omap_init);
-module_exit (ohci_hcd_omap_cleanup);
-diff --git a/drivers/usb/host/ohci-pci.c b/drivers/usb/host/ohci-pci.c
-index 649cdfe..bc7f173 100644
---- a/drivers/usb/host/ohci-pci.c
-+++ b/drivers/usb/host/ohci-pci.c
-@@ -311,23 +311,3 @@ #endif
+--- gregkh-2.6.orig/drivers/usb/host/ohci-pci.c
++++ gregkh-2.6/drivers/usb/host/ohci-pci.c
+@@ -311,23 +311,3 @@ static struct pci_driver ohci_pci_driver
.shutdown = usb_hcd_pci_shutdown,
};
--
--static int __init ohci_hcd_pci_init (void)
+-
+-static int __init ohci_hcd_pci_init (void)
-{
- printk (KERN_DEBUG "%s: " DRIVER_INFO " (PCI)\n", hcd_name);
- if (usb_disabled())
@@ -315,15 +314,13 @@
-
-/*-------------------------------------------------------------------------*/
-
--static void __exit ohci_hcd_pci_cleanup (void)
--{
+-static void __exit ohci_hcd_pci_cleanup (void)
+-{
- pci_unregister_driver (&ohci_pci_driver);
-}
-module_exit (ohci_hcd_pci_cleanup);
-diff --git a/drivers/usb/host/ohci-pnx4008.c b/drivers/usb/host/ohci-pnx4008.c
-index 3a8cbfb..893b172 100644
---- a/drivers/usb/host/ohci-pnx4008.c
-+++ b/drivers/usb/host/ohci-pnx4008.c
+--- gregkh-2.6.orig/drivers/usb/host/ohci-pnx4008.c
++++ gregkh-2.6/drivers/usb/host/ohci-pnx4008.c
@@ -465,15 +465,3 @@ static struct platform_driver usb_hcd_pn
.remove = usb_hcd_pnx4008_remove,
};
@@ -340,11 +337,31 @@
-
-module_init(usb_hcd_pnx4008_init);
-module_exit(usb_hcd_pnx4008_cleanup);
-diff --git a/drivers/usb/host/ohci-ppc-soc.c b/drivers/usb/host/ohci-ppc-soc.c
-index c7ce8e6..1a2e177 100644
---- a/drivers/usb/host/ohci-ppc-soc.c
-+++ b/drivers/usb/host/ohci-ppc-soc.c
-@@ -208,19 +208,3 @@ #endif
+--- gregkh-2.6.orig/drivers/usb/host/ohci-pnx8550.c
++++ gregkh-2.6/drivers/usb/host/ohci-pnx8550.c
+@@ -240,19 +240,3 @@ static struct platform_driver ohci_hcd_p
+ .remove = ohci_hcd_pnx8550_drv_remove,
+ };
+
+-static int __init ohci_hcd_pnx8550_init (void)
+-{
+- pr_debug (DRIVER_INFO " (pnx8550)");
+- pr_debug ("block sizes: ed %d td %d\n",
+- sizeof (struct ed), sizeof (struct td));
+-
+- return platform_driver_register(&ohci_hcd_pnx8550_driver);
+-}
+-
+-static void __exit ohci_hcd_pnx8550_cleanup (void)
+-{
+- platform_driver_unregister(&ohci_hcd_pnx8550_driver);
+-}
+-
+-module_init (ohci_hcd_pnx8550_init);
+-module_exit (ohci_hcd_pnx8550_cleanup);
+--- gregkh-2.6.orig/drivers/usb/host/ohci-ppc-soc.c
++++ gregkh-2.6/drivers/usb/host/ohci-ppc-soc.c
+@@ -208,19 +208,3 @@ static struct platform_driver ohci_hcd_p
},
};
@@ -364,11 +381,9 @@
-
-module_init(ohci_hcd_ppc_soc_init);
-module_exit(ohci_hcd_ppc_soc_cleanup);
-diff --git a/drivers/usb/host/ohci-pxa27x.c b/drivers/usb/host/ohci-pxa27x.c
-index 3bbea84..f1563dc 100644
---- a/drivers/usb/host/ohci-pxa27x.c
-+++ b/drivers/usb/host/ohci-pxa27x.c
-@@ -369,19 +369,3 @@ #endif
+--- gregkh-2.6.orig/drivers/usb/host/ohci-pxa27x.c
++++ gregkh-2.6/drivers/usb/host/ohci-pxa27x.c
+@@ -369,19 +369,3 @@ static struct platform_driver ohci_hcd_p
},
};
@@ -388,10 +403,8 @@
-
-module_init (ohci_hcd_pxa27x_init);
-module_exit (ohci_hcd_pxa27x_cleanup);
-diff --git a/drivers/usb/host/ohci-s3c2410.c b/drivers/usb/host/ohci-s3c2410.c
-index b350d45..6829814 100644
---- a/drivers/usb/host/ohci-s3c2410.c
-+++ b/drivers/usb/host/ohci-s3c2410.c
+--- gregkh-2.6.orig/drivers/usb/host/ohci-s3c2410.c
++++ gregkh-2.6/drivers/usb/host/ohci-s3c2410.c
@@ -501,15 +501,3 @@ static struct platform_driver ohci_hcd_s
},
};
@@ -408,10 +421,8 @@
-
-module_init (ohci_hcd_s3c2410_init);
-module_exit (ohci_hcd_s3c2410_cleanup);
-diff --git a/drivers/usb/host/ohci-sa1111.c b/drivers/usb/host/ohci-sa1111.c
-index fe0090e..0f48f2d 100644
---- a/drivers/usb/host/ohci-sa1111.c
-+++ b/drivers/usb/host/ohci-sa1111.c
+--- gregkh-2.6.orig/drivers/usb/host/ohci-sa1111.c
++++ gregkh-2.6/drivers/usb/host/ohci-sa1111.c
@@ -269,19 +269,3 @@ static struct sa1111_driver ohci_hcd_sa1
.remove = ohci_hcd_sa1111_drv_remove,
};
@@ -432,6 +443,3 @@
-
-module_init (ohci_hcd_sa1111_init);
-module_exit (ohci_hcd_sa1111_cleanup);
---
-1.4.2
-
linux-2.6-usb-endian-quirks.patch:
ohci-pci.c | 173 ++++++++++++++++++++++++++++++++++++++-----------------------
1 files changed, 110 insertions(+), 63 deletions(-)
Index: linux-2.6-usb-endian-quirks.patch
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/linux-2.6-usb-endian-quirks.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- linux-2.6-usb-endian-quirks.patch 17 Dec 2006 21:55:32 -0000 1.1
+++ linux-2.6-usb-endian-quirks.patch 29 Dec 2006 10:57:30 -0000 1.2
@@ -1,21 +1,5 @@
-This patch applies David Brownell's suggestion for reworking the
-OHCI quirk mechanism via a table of PCI IDs. It adapts the existing
-quirks to use that mechanism.
-
-This also moves the quirks to reset() as suggested by the comment
-in there. This is necessary as we need to have the endian properly
-set before we try to init the controller.
-
-Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
-Acked-by: David Brownell <dbrownell at users.sourceforge.net>
-
- drivers/usb/host/ohci-pci.c | 173 +++++++++++++++++++++++++++-----------------
- 1 file changed, 110 insertions(+), 63 deletions(-)
-
-diff --git a/drivers/usb/host/ohci-pci.c b/drivers/usb/host/ohci-pci.c
-index 8744185..dab43bb 100644
---- a/drivers/usb/host/ohci-pci.c
-+++ b/drivers/usb/host/ohci-pci.c
+--- linux-2.6.19.ppc/drivers/usb/host/ohci-pci.c.usb1 2006-12-29 10:45:26.000000000 +0000
++++ linux-2.6.19.ppc/drivers/usb/host/ohci-pci.c 2006-12-29 10:48:20.000000000 +0000
@@ -20,79 +20,128 @@
/*-------------------------------------------------------------------------*/
@@ -116,17 +100,10 @@
+ /* FIXME for some of the early AMD 760 southbridges, OHCI
+ * won't work at all. blacklist them.
*/
+- if (hcd->self.controller) {
+- struct pci_dev *pdev = to_pci_dev(hcd->self.controller);
+ {},
+};
-+
-+static int ohci_pci_reset (struct usb_hcd *hcd)
-+{
-+ struct ohci_hcd *ohci = hcd_to_ohci (hcd);
-+ int ret = 0;
-+
- if (hcd->self.controller) {
- struct pci_dev *pdev = to_pci_dev(hcd->self.controller);
-+ const struct pci_device_id *quirk_id;
- /* AMD 756, for most chips (early revs), corrupts register
- * values on read ... so enable the vendor workaround.
@@ -137,6 +114,27 @@
- ohci_dbg (ohci, "AMD756 erratum 4 workaround\n");
- /* also erratum 10 (suspend/resume issues) */
- device_init_wakeup(&hcd->self.root_hub->dev, 0);
+- }
++static int ohci_pci_reset (struct usb_hcd *hcd)
++{
++ struct ohci_hcd *ohci = hcd_to_ohci (hcd);
++ int ret = 0;
+
+- /* FIXME for some of the early AMD 760 southbridges, OHCI
+- * won't work at all. blacklist them.
+- */
++ if (hcd->self.controller) {
++ struct pci_dev *pdev = to_pci_dev(hcd->self.controller);
++ const struct pci_device_id *quirk_id;
+
+- /* Apple's OHCI driver has a lot of bizarre workarounds
+- * for this chip. Evidently control and bulk lists
+- * can get confused. (B&W G3 models, and ...)
+- */
+- else if (pdev->vendor == PCI_VENDOR_ID_OPTI
+- && pdev->device == 0xc861) {
+- ohci_dbg (ohci,
+- "WARNING: OPTi workarounds unavailable\n");
+ quirk_id = pci_match_id(ohci_pci_quirks, pdev);
+ if (quirk_id != NULL) {
+ int (*quirk)(struct usb_hcd *ohci);
@@ -151,27 +149,13 @@
+ return ret;
+}
-- /* FIXME for some of the early AMD 760 southbridges, OHCI
-- * won't work at all. blacklist them.
-- */
--
-- /* Apple's OHCI driver has a lot of bizarre workarounds
-- * for this chip. Evidently control and bulk lists
-- * can get confused. (B&W G3 models, and ...)
-- */
-- else if (pdev->vendor == PCI_VENDOR_ID_OPTI
-- && pdev->device == 0xc861) {
-- ohci_dbg (ohci,
-- "WARNING: OPTi workarounds unavailable\n");
-- }
-
- /* Check for NSC87560. We have to look at the bridge (fn1) to
- * identify the USB (fn2). This quirk might apply to more or
- * even all NSC stuff.
- */
- else if (pdev->vendor == PCI_VENDOR_ID_NS) {
- struct pci_dev *b;
--
+
- b = pci_get_slot (pdev->bus,
- PCI_DEVFN (PCI_SLOT (pdev->devfn), 1));
- if (b && b->device == PCI_DEVICE_ID_NS_87560_LIO
@@ -186,7 +170,7 @@
+ struct ohci_hcd *ohci = hcd_to_ohci (hcd);
+ int ret;
-- /* Check for Compaq's ZFMicro chipset, which needs short
+- /* Check for Compaq's ZFMicro chipset, which needs short
- * delays before control or bulk queues get re-activated
- * in finish_unlinks()
- */
More information about the fedora-cvs-commits
mailing list