These patches are against kernels 2.6.18 through at least 2.6.18-git7.

patch 4: modes ehci_iso_sched funtions to one place.  Trivial patch
that makes no funcitonal difference.

Signed-off-by: Christopher "Monty" Montgomery <[EMAIL PROTECTED]>

---

diff -X b/Documentation/dontdiff -upr a/drivers/usb/host/ehci-sched.c
b/drivers/usb/host/ehci-sched.c
--- a/drivers/usb/host/ehci-sched.c     2006-09-26 22:19:16.000000000 -0400
+++ b/drivers/usb/host/ehci-sched.c     2006-09-26 22:19:26.000000000 -0400
@@ -939,6 +939,36 @@ done:
 }

 /*-------------------------------------------------------------------------*/
+/* ISO scheduling temporary structure machinery necessitated by lazy
+   alloc of the iso_stream structure */
+
+static struct ehci_iso_sched *
+iso_sched_alloc (unsigned packets, gfp_t mem_flags)
+{
+       struct ehci_iso_sched   *iso_sched;
+       int                     size = sizeof *iso_sched;
+
+       size += packets * sizeof (struct ehci_iso_packet);
+       iso_sched = kzalloc(size, mem_flags);
+       if (likely (iso_sched != NULL)) {
+               INIT_LIST_HEAD (&iso_sched->td_list);
+       }
+       return iso_sched;
+}
+
+static void
+iso_sched_free (struct ehci_iso_stream *stream,
+               struct ehci_iso_sched   *iso_sched)
+{
+       if (!iso_sched){
+               return;
+       }
+       // caller must hold ehci->lock!
+       list_splice (&iso_sched->td_list, &stream->free_list);
+       kfree (iso_sched);
+}
+
+/*-------------------------------------------------------------------------*/

 /* ehci_iso_stream ops work with both ITD and SITD */

@@ -1164,24 +1194,6 @@ iso_stream_find (struct ehci_hcd *ehci,
        return stream;
 }

-/*-------------------------------------------------------------------------*/
-
-/* ehci_iso_sched ops can be ITD-only or SITD-only */
-
-static struct ehci_iso_sched *
-iso_sched_alloc (unsigned packets, gfp_t mem_flags)
-{
-       struct ehci_iso_sched   *iso_sched;
-       int                     size = sizeof *iso_sched;
-
-       size += packets * sizeof (struct ehci_iso_packet);
-       iso_sched = kzalloc(size, mem_flags);
-       if (likely (iso_sched != NULL)) {
-               INIT_LIST_HEAD (&iso_sched->td_list);
-       }
-       return iso_sched;
-}
-
 static inline void
 itd_sched_init (
        struct ehci_iso_sched   *iso_sched,
@@ -1223,19 +1235,6 @@ itd_sched_init (
        }
 }

-static void
-iso_sched_free (
-       struct ehci_iso_stream  *stream,
-       struct ehci_iso_sched   *iso_sched
-)
-{
-       if (!iso_sched)
-               return;
-       // caller must hold ehci->lock!
-       list_splice (&iso_sched->td_list, &stream->free_list);
-       kfree (iso_sched);
-}
-
 static int
 itd_urb_transaction (
        struct ehci_iso_stream  *stream,

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to