summaryrefslogtreecommitdiffstats
path: root/drivers/usb/gadget (follow)
Commit message (Collapse)AuthorAgeFilesLines
* usb: gadget zero style fixups (mostly whitespace)David Brownell2008-05-021-193/+172
| | | | | | | | | | | | | | | Minor updates to "Gadget Zero". - Primarily these are whitespace updates to address the fact that since this was written, Documentation/CodingStyle was changed to disapprove of parts of the original coding style. - Update a few comments that weren't quite correct, notably mentioning the "autoresume" module parameter. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* usb serial gadget: CDC ACM fixesDavid Brownell2008-05-021-17/+73
| | | | | | | | | | | | | | | | Based on a patch from <Aurel.Thomi@ruag.com>, this makes the CDC-ACM support in the serial gadget handle the SET_LINE_CODING and SET_CONTROL_LINE_STATE requests ... which should improve interop with at least MS-Windows "usbser.sys" if not some other ACM host drivers. It also adds a few REVISIT comments where this code plays a bit loose with the CDC ACM spec. If this were used to hook up to a real RS232 or modem link, those places would need a bit of work. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* usb: pxa27x_udc driverRobert Jarzmik2008-05-025-4/+2916
| | | | | | | | | | | | | | | | Adds pxa27x udc driver to support USB peripherals on pxa27x chips. The driver is compatible with: Gadget Zero, the File Storage gadget, and the Ethernet gadget (only in CDC subset mode). The driver can't properly support multiple interfaces, because of hardware bugs without possible workaround. That means no RNDIS support from g_ether, and no CDC ACM support in g_serial. Signed-off-by: Robert Jarzmik <rjarzmik@free.fr> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* usb gadget: switch to put_char returning intAlan Cox2008-04-301-4/+6
| | | | | | | | Signed-off-by: Alan Cox <alan@redhat.com> Acked-by: Greg Kroah-Hartman <gregkh@suse.de> Acked-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* usb: use get/put_unaligned_* helpersHarvey Harrison2008-04-293-27/+17
| | | | | | | | | | Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Acked-by: Greg Kroah-Hartman <gregkh@suse.de> Cc: Alan Stern <stern@rowland.harvard.edu> Cc: David Brownell <dbrownell@users.sourceforge.net> Cc: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* usb: use non-racy method for proc entries creationDenis V. Lunev2008-04-292-14/+4
| | | | | | | | | | | | Use proc_create()/proc_create_data() to make sure that ->proc_fops and ->data be setup before gluing PDE to main tree. Signed-off-by: Denis V. Lunev <den@openvz.org> Acked-by: Greg Kroah-Hartman <gregkh@suse.de> Cc: Alexey Dobriyan <adobriyan@gmail.com> Cc: "Eric W. Biederman" <ebiederm@xmission.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* drivers/usb annotations and fixesAl Viro2008-04-284-15/+16
| | | | | | | | | | | | * endianness annotations * endianness fixes * missing get_unaligned/put_unaligned It's pretty much all over the place, changes to different files are independent. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Serial-parts-Acked-by: Alan Cox <alan@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* USB: replace remaining __FUNCTION__ occurrencesHarvey Harrison2008-04-2514-204/+204
| | | | | | | | __FUNCTION__ is gcc-specific, use __func__ Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: g_file_storage: ignore bulk-out data after invalid CBWAlan Stern2008-04-251-13/+15
| | | | | | | | | | This patch (as1061) makes g_file_storage more compliant with the Bulk-Only Transport specification. After an invalid CBW is received, the gadget must ignore any further bulk-OUT data until it is reset. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: at91_udc can prefetch dataDavid Brownell2008-04-251-1/+4
| | | | | | | | | The at91sam9 chip are ARMv5 so they support preload instructions. Use preloading to load the FIFO a bit faster. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: dummy-hcd: use dynamic allocation for platform_devicesAlan Stern2008-04-251-41/+29
| | | | | | | | | | | | | | | | This patch (as1075) changes dummy-hcd to dynamically allocate its platform_device structures, using the core platform_device_alloc() interface. This is what it should have done all along, because the dynamically-allocated structures have a release method in the driver core and are therefore immune to being released after the module has been unloaded. Thanks to Richard Purdie for pointing out the need for this change. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Cc: Richard Purdie <rpurdie@rpsys.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: gadget section fixesDavid Brownell2008-04-254-11/+11
| | | | | | | | | | | | Restore some section annotations: they were switched to "__devinit" while they should have been "__init", because of bogus warnings. The warnings are now fixed, so the runtime footprint of various drivers can now shrink a bit. On ARMv5, it's about 600 bytes except for the Ethernet gadget, where it can save a bit more. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: gadget: dummy_hcd.c: fix nested switch statementsIngo van Lil2008-04-251-8/+6
| | | | | | | | | | | | | | | | | Fix a messed up combination of two nested switch statements in drivers/usb/gadget/dummy_hcd.c. According to the USB spec (section 5.8.3) the maximum packet size for bulk endpoints can be 512 for high-speed devices and 8, 16, 32 or 64 for full-speed devices. Low-speed devices must not have bulk endpoints. Signed-off-by: Ingo van Lil <inguin@gmx.de> Cc: David Brownell <david-b@pacbell.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Acked-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: mem leak fixes for AMD 5536 UDC high/full speed USB device controller ↵Jesper Juhl2008-04-251-0/+10
| | | | | | | | | | | | | | | | | driver In drivers/usb/gadget/amd5536udc.c::udc_pci_probe(), sizeof(struct udc) storage is allocated for 'dev'. There are many exit points from the function where 'dev' is not free'd but has also not yet been used for anything. The following patch free's 'dev' at the return points where it has not yet been used. Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Cc: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: g_printer bugfixesCraig W. Nadler2008-04-251-32/+54
| | | | | | | | | | | | | | | | G_PRINTER: Bug fix for blocking reads and a fix for a memory leak. This fixes bugs in blocking IO calls. When the poll() entry point is called receive transfers will be setup if they have not already been. Another bug fix is that the poll() entry point now checks the current receive buffer for data when reporting if any data had been received. A memory leak was fixed that could have occurred when a USB reset happened. Signed-off-by: Craig W. Nadler <craig@nadler.us> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: Remove EXPERIMENTAL tags from some USB gadget Kconfig entries.Robert P. J. Day2008-04-251-8/+10
| | | | | | | | | | | | | Based on a recent discussion on the Linux USB mailing list, remove the designation of EXPERIMENTAL from some USB gadget entries, and tag some of them as DEVELOPMENT. just for fun, i added a bit of help for gadgetfs, explaining the race condition. Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Acked-by: David Brownell <dbrownell@users.sourceforge.net>
* USB: remove dev->power.power_stateAlan Stern2008-04-252-6/+0
| | | | | | | | | | | | | | | | power.power_state is scheduled for removal. This patch (as1053) removes all uses of that field from drivers/usb. Almost all of them were write-only, the most significant exceptions being sl811-hcd.c and u132-hcd.c. Part of this patch was written by Pavel Machek. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Cc: David Brownell <david-b@pacbell.net> Acked-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: gadget: Hangup tty on g_serial disconnectSavin Zlobec2008-04-251-2/+1
| | | | | | | | | | | | | | On USB cable disconnect g_serial doesn't hangup the port tty, which results in an endless read on the tty device. With the following patch the read and select behave correctly when the cable is unplugged. Tested on at91rm9200 Signed-off-by: Savin Zlobec <savin@epiko.si> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: m66592-udc: reduce size of data structure.Paul Mundt2008-04-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Poking around with pahole, we see that m66592 handily shoves a u16 in between larger types on 2 separate occasions leaving us with 2 2-byte holes: struct m66592 { ... /* size: 1196, cachelines: 38 */ /* sum members: 1192, holes: 2, sum holes: 4 */ /* last cacheline: 12 bytes */ }; /* definitions: 1 */ Pairing them gets back 4-bytes: struct m66592 { ... /* size: 1192, cachelines: 38 */ /* last cacheline: 8 bytes */ }; /* definitions: 1 */ Unfortunately it's not enough to save a cacheline with this massive structure, but every byte helps. Signed-off-by: Paul Mundt <lethal@linux-sh.org> Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Merge branch 'master' of ↵Haavard Skinnemoen2008-04-203-86/+83
|\ | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/hskinnemoen/usba-2.6.26 into base
| * atmel_usba_udc: Add support for AT91CAP9 UDPHSStelian Pop2008-04-063-8/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch is part of the series adding support for the USB High Speed Device Port on the AT91CAP9 system on chip. The AT91CAP9 uses the same UDPHS IP as the AVR32 and the AT91SAM9RL. The only differences between the AVR32 and the AT91 version of the device are in the enable/disable and suspend/wakeup sequences: the AT91 version needs to toggle the USB bias and pulldown explicitly. Signed-off-by: Stelian Pop <stelian@popies.net> Acked-by: Andrew Victor <linux@maxim.org.za> Acked-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
| * atmel_usba_udc: Add missing kfree() in usba_udc_remove()Stelian Pop2008-04-061-0/+1
| | | | | | | | | | Signed-off-by: Stelian Pop <stelian@popies.net> Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
| * atmel_usba_udc: move endpoint declarations into platform data.Stelian Pop2008-04-061-33/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The atmel_usba_udc driver is being used by several platforms and arches (avr32 and at91 ATM), and each platform may have different endpoint settings. The patch below moves the endpoint declarations into the platform data and make the necessary adjustments for AVR32 (improved by Haavard Skinnemoen <hskinnemoen@atmel.com>). Signed-off-by: Stelian Pop <stelian@popies.net> Acked-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
| * atmel_usba_udc: Kill GPIO_PIN_NONEStelian Pop2008-04-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | GPIO_PIN_NONE should no longer be used. Replace it with a simple test against negative values. This is a transitional patch, waiting for gpio_is_valid() to be merged at which point the tests should be revisited. Signed-off-by: Stelian Pop <stelian@popies.net> Acked-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
| * atmel_usba_udc: Fix endpoint names.Stelian Pop2008-04-061-7/+7
| | | | | | | | | | | | | | | | | | | | The endpoints of the atmel_usba_udc driver do not have directional (in/out) or usage (ctrl/bulk/iso) restrictions, as their names incorrectly implied. Signed-off-by: Stelian Pop <stelian@popies.net> Acked-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
| * atmel_usba: Kill copy_to_fifo() and copy_from_fifo()Haavard Skinnemoen2008-04-061-51/+4
| | | | | | | | | | | | | | | | These functions do exactly the same as memcpy_toio() and memcpy_fromio() respectively. Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com> Acked-by: David Brownell <dbrownell@users.sourceforge.net>
* | usb gadget: fix platform driver hotplug/coldplugKay Sievers2008-04-118-2/+11
|/ | | | | | | | | | | | | Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable usb peripheral drivers, to re-eable module auto loading. [dbrownell@users.sourceforge.net: registration fixes] Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Cc: Greg KH <greg@kroah.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* USB: fix gadgetfs class request delegationRoy Hashimoto2008-03-251-2/+2
| | | | | | | | | | | gadgetfs (drivers/usb/gadget/inode.c) was not delegating all non-device requests to userspace. This patch makes the handling of all request cases consistent. Signed-off-by: Roy Hashimoto <hashimot@alumni.caltech.edu> Acked-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: fsl_usb2_udc: fix broken KconfigLi Yang2008-03-111-1/+1
| | | | | | | | | | The patch fixes broken Kconfig caused by the name change of MPC834x option. It also makes fsl_usb2_udc selectable on new platforms like MPC837x. Signed-off-by: Li Yang <leoli@freescale.com> Acked-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: remove incorrect struct class_device from the printer gadgetTony Jones2008-03-041-1/+0
| | | | | | | | | | This field does nothing, and should not be allowed to stick around incase someone gets any other ideas... Signed-off-by: Tony Jones <tonyj@suse.de> Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: pxa2xx_udc: fix misuse of clock enable/disable callsDmitry Baryshkov2008-03-042-39/+53
| | | | | | | | | | | Fix pxa2xx_udc to balance calls to clk_enable/clk_disable. [db: remove inline #ifdefs for IXP non-support of <linux/clk.h> calls] Signed-off-by: Dmitry Baryshkov dbaryshkov@gmail.com Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: gadget: queue usb USB_CDC_GET_ENCAPSULATED_RESPONSE messageJan Altenberg2008-02-221-0/+1
| | | | | | | | | | | | | | commit 0cf4f2de0a0f4100795f38ef894d4910678c74f8 introduced a bug, which prevents sending an USB_CDC_GET_ENCAPSULATED_RESPONSE message. This breaks the RNDIS initialization (especially / only Windoze machines dislike this behavior...). Signed-off-by: Benedikt Spranger <b.spranger@linutronix.de> Signed-off-by: Jan Altenberg <jan.altenberg@linutronix.de> Acked-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: g_printer, fix empty if statementAdrian Bunk2008-02-221-1/+1
| | | | | | | | | | | A bug every C programmer makes at some point in time... Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Craig W. Nadler <craig@nadler.us> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* d_path: Make d_path() use a struct pathJan Blunck2008-02-151-5/+3
| | | | | | | | | | | | | | | | d_path() is used on a <dentry,vfsmount> pair. Lets use a struct path to reflect this. [akpm@linux-foundation.org: fix build in mm/memory.c] Signed-off-by: Jan Blunck <jblunck@suse.de> Acked-by: Bryan Wu <bryan.wu@analog.com> Acked-by: Christoph Hellwig <hch@infradead.org> Cc: Al Viro <viro@zeniv.linux.org.uk> Cc: "J. Bruce Fields" <bfields@fieldses.org> Cc: Neil Brown <neilb@suse.de> Cc: Michael Halcrow <mhalcrow@us.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* usb: net2280 can't have a function called show_registers()David Howells2008-02-081-3/+3
| | | | | | | | | | | | | | net2280 can't have a function called show_registers() because this can produce a namespace clash with an arch function of the same name. All this driver's functions and variables should really be prefixed with "net2280_" to avoid such a problem in future. Signed-off-by: David Howells <dhowells@redhat.com> Cc: Greg KH <greg@kroah.com> Cc: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* USB: Use menuconfig objectsDenis Cheng2008-02-011-4/+5
| | | | | | | | | | | commit 04d06ad0f1fdb499af84ae3d7969e2136a462f38 have added menuconfig support for the whole USB Kconfig, but there are still menuconfig need for usb/serial, usb/atm, and usb/gadget, so that the user can disable all the options in that menu at once instead of having to disable each option separately. Signed-off-by: Denis Cheng <crquan@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: pxa2xx_udc: use debugfs not procfsDmitry Baryshkov2008-02-012-69/+62
| | | | | | | | | Use debugfs instead of /proc/driver/udc Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: at91_udc uses generic GPIO calls; minor cleanupDavid Brownell2008-02-012-20/+61
| | | | | | | | | | | | | | | | | | | | | Various small at91_udc cleanups: - Use generic GPIO calls, not older platform-specific ones - Use gpio_request()/gpio_free() - Use VERBOSE_DEBUG convention, not older VERBOSE - Fix sparse complaint about parameter type (changed to gfp_t) - Add missing newline to some rarely-seen debug messages - Fix some old cleanup bugs on probe() fault paths Also add a mechanism whereby rm9200 gpios can drive the D+ pullup through an inverting transistor, based on a patch from Steve Birtles. Most UDC drivers supporting a GPIO based pullup should probably have such an option, but testing it requries such a board in hand! Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Cc: Steve Birtles <arm_kernel_development@micromark.net.cn> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: gadget: at91_udc minor fix (there is no number six)David Brownell2008-02-011-3/+3
| | | | | | | | | | | Fix a small glitch noted by Yannick Cote. There is no endpoint number six, so if a (broken) host wrongly tried to change or read status of that endpoint, the driver could access reserved register space. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Cc: Yannick Cote <yanick@yanos.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: gadget: ethernet error path potential oops fixDavid Brownell2008-02-011-3/+3
| | | | | | | | | | | | Fix potential (never-observed) oops on rare error path, bugzilla #9594. Fix uses the same test as used earlier. Also make the adjacent "else" block look like an "else" block instead of hiding like a bug. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: Spelling fixesJoe Perches2008-02-013-3/+3
| | | | | | Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: gadget: pxa2xx_udc supports inverted vbusDmitry Baryshkov2008-02-011-2/+7
| | | | | | | | | | | Some boards (like e.g. Tosa) invert the VBUS-detection signal: it's low when a host is supplying VBUS, and high otherwise. Allow specifying whether gpio_vbus value is inverted. Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: dummy_hcd: change the default power budgetAlan Stern2008-02-011-2/+3
| | | | | | | | | This patch (as1025) changes the default power budget for dummy-hcd to 500 mA and makes it a preprocessor parameter for easier testing. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: dummy_hcd: don't register drivers on the platform busAlan Stern2008-02-011-25/+8
| | | | | | | | | | | | | This patch (as1017) makes dummy_hcd behave more like the other USB peripheral controller drivers by no longer registering its gadget driver on the platform bus. Doing that has always been a mistake, since a usb_gadget_driver isn't a platform_driver. Instead the gadget driver is left unregistered in sysfs. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> CC: David Brownell <david-b@pacbell.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: usb peripheral controller driver oops avoidancePatrik Sevallius2008-02-016-0/+7
| | | | | | | | | | | | | I'm having problem with oopses when rebooting, if I modprobe g_serial and rmmod g_serial and do a reboot I get an oops in device_shutdown(). The reason seems to be that usb_gadget_unregister_driver() doesn't do enough cleanup. With this at91_udc patch I don't get the oops. Signed-off-by: Patrik Sevallius <patrik.sevallius@enea.com> [ Same bug was in other peripheral controller drivers; fixed ] Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: gadget code switches to pr_err() and friendsDavid Brownell2008-02-0114-171/+151
| | | | | | | | | | We now have pr_err(), pr_warning(), and friends ... start using them in the gadget stack instead of printk(KERN_ERR) and friends. This gives us shorter lines and somewhat increased readability. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: add Printer Gadget DriverCraig W. Nadler2008-02-013-0/+1609
| | | | | | | | | | | | | | | G_PRINTER: Adds a USB printer gadget driver for use in printer firmware. This adds a USB printer gadget driver for use in printer firmware. The printer gadget channels data between the USB host and a userspace program driving the print engine. The user space program reads and writes the device file /dev/g_printer to receive or send printer data. It can use ioctl calls to the device file to get or set printer status. Signed-off-by: Craig W. Nadler <craig@nadler.us> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: Add missing "space" to printk messagesJoe Perches2008-02-013-3/+3
| | | | | | | Signed-off-by: Joe Perches <joe@perches.com> Acked-by: David Brownell <david-b@pacbell.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: m66592-udc: Add support for SH7722 USBFYoshihiro Shimoda2008-02-013-1/+118
| | | | | | | | | | | | Add support for SuperH SH7722 USB Function. M66592 is similar to SH7722 USBF. It can support SH7722 USBF by changing several M66592 code. Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com> Acked-by: David Brownell <david-b@pacbell.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* USB: device DMA support on OMAP2Kyungmin Park2008-02-011-22/+49
| | | | | | | | | | | | | | | | | The current omap udc dosen't support the DMA mode and it has some problem at setup time on OMAP2 with previous patch file. I found that the code assumes bulk out required the big data transfer. But MODE SELECT(6) sent the only 24 bytes. it makes a problem. So I implement the small packets handling for it. It is tested with both linux and windows. Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Cc: David Brownell <david-b@pacbell.net> Cc: Tony Lindgren <tony@atomide.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>