- 09 May, 2003 15 commits
-
-
Greg Kroah-Hartman authored
into kroah.com:/home/greg/linux/BK/gadget-2.5
-
Petr Vandrovec authored
send_sig_info() has been broken since 2.5.60. The function can be invoked from a the time interrupt (timer_interrpt -> do_timer -> update_process_times -> -> update_one_process -> ( do_process_times, do_it_prof, do_it_virt ) -> -> send_sig -> send_sig_info) but it uses spin_unlock_irq instead of the correct spin_unlock_irqrestore. This enables interrupts, and later scheduler_tick() locks runqueue (without disabling interrupts). And if we are unlucky, a new interrupt comes at this point. And if this interrupt tries to do wake_up() (like RTC interrupt does), we will deadlock on runqueue lock :-( The bug was introduced by signal-fixes-2.5.59-A4, which split the original send_sig_info into two functions, and in one branch it started using these unsafe spinlock variants (while the "group" variant uses irqsave/restore correctly).
-
Linus Torvalds authored
-
Linus Torvalds authored
-
Linus Torvalds authored
definition.
-
Linus Torvalds authored
-
Linus Torvalds authored
-
bk://kernel.bkbits.net/davem/net-2.5Linus Torvalds authored
into penguin.transmeta.com:/home/torvalds/v2.5/linux
-
Linus Torvalds authored
to touch K&R C.
-
David S. Miller authored
-
Christoph Hellwig authored
-
James Morris authored
-
James Morris authored
-
Hideaki Yoshifuji authored
-
David S. Miller authored
into nuts.ninka.net:/home/davem/src/BK/net-2.5
-
- 08 May, 2003 25 commits
-
-
Andi Kleen authored
-
Matthew Wilcox authored
-
David S. Miller authored
-
Chas Williams authored
-
James Morris authored
-
David S. Miller authored
-
David S. Miller authored
-
David S. Miller authored
-
David S. Miller authored
-
David S. Miller authored
-
Greg Kroah-Hartman authored
into kroah.com:/home/linux/linux/BK/gadget-2.5
-
Linus Torvalds authored
-
David Brownell authored
This patch has two small fixes for issues that people reported to me yesterday: - One of the out-of-tree drivers sees odd things happening when dma chaining is enabled. (The in-tree drivers seem fine with it.) So disable for now; it's easily enabled if needed. - Zero Length Packets (ZLPs): * Should now read/write ok with PIO. * On DMA endpoints, explicit ZLPs need PIO. Until they do, don't allow queuing zero length buffers onto DMA endpoints.
-
David Brownell authored
If the host writes OUT packets using URB_ZERO_PACKET (or its analogue on other USB host systems), then the loopback configuration should set req->zero, to use that same transfer termination policy when it writes the response back IN to the host.
-
David Brownell authored
> can you get rid of all of the #ifdef HAVE_DRIVER_MODEL stuff? Done. Now this code "knows" it's running in a 2.5 environment, and needs modifications to run on 2.4. I also changed the file modes in the module_parm() calls so the parameters will be writable when they eventually show up in sysfs; and fixed a typo. Compile-tested with and without DEBUG enabled.
-
David Brownell authored
This patch adds kconfig/kbuild support for the preceding code, so that an EXPERIMENTAL option appears in the USB part of the config menus. Once a USB device controller driver is configured (which just now means net2280, but sa11x0 and pxa25x options are just waiting for updates!), gadget driver options are also available.
-
David Brownell authored
This adds utility code that gadget drivers can use to manage string descriptors (drivers/usb/gadget/usbstring.c) in the common case that the ISO-8859/1 character set is in use. Both "Gadget Zero" and the Ethernet gadget code use this.
-
David Brownell authored
This patch adds an "Ethernet Gadget" driver, implementing the CDC Ethernet model (drivers/usb/gadget/ether.c). It interops with the current CDC Ether drivers on Linux, both 2.4 (CDCEther, using Marcelo's latest) and 2.5 (cdc-ether with recent patches, or on 2.5.68 "usbnet") On a net2280, this has successfully streamed dozens of megabytes per second using "ttcp" (high speed, and using "usbnet" on the host side), for days at a time. And no problems using SSH/NFS/etc in lighter duty testing. It's possible this will need tweaking to cope with UDC bugs on Intel's pxa25x controllers, presenting itself as a non-CDC device. (I'm told altsettings are even more broken than originally specified to be.)
-
David Brownell authored
This patch adds "Gadget Zero" (drivers/usb/gadget/zero.c). Gadget Zero is a simple gadget driver that's useful for testing controller drivers, and as an example to be used for clone/modify style development. This driver implements two configurations, and needs only two bulk endpoints (in addition to ep0) ... so pretty much any USB device controller should be usable with it in one configuration or another. It (optionally) supports high speed devices, and has passed the USB-IF "chapter 9" device model conformance tests. It's worth noticing the kinds of hardware differences that gadget drivers need to cope with. Endpoints differ, in ways that must be reflected various ways in descriptors. And sometimes chip errata cause interoperability problems; for example, an sa1100 can't change configurations after enumerating.
-
David Brownell authored
This patch creates drivers/usb/gadget/net2280.[hc], providing a driver for NetChip's "Net2280 PCI USB 2.0 High Speed Peripheral Controller". It implements the API included in the first patch. The driver has behaved well with chiprev 0100 under stress tests with Gadget Zero and the ethernet model driver, and has passed sanity tests for chiprev 0110.
-
David Brownell authored
This patch createss <linux/usb_gadget.h>, the gadget API and inlined implementation. There's additional kerneldoc, which I won't submit at this time, available.
-
Rusty Russell authored
-
David S. Miller authored
into kernel.bkbits.net:/home/davem/net-2.5
-
David S. Miller authored
-
David S. Miller authored
into nuts.ninka.net:/home/davem/src/BK/net-2.5
-