linux-kernel-test/drivers/usb/core
Aleksey Gorelov 64a21d025d USB: Properly unregister reboot notifier in case of failure in ehci hcd
If some problem occurs during ehci startup, for instance, request_irq fails,
echi hcd driver tries it best to cleanup, but fails to unregister reboot
notifier, which in turn leads to crash on reboot/poweroff.

The following patch resolves this problem by not using reboot notifiers
anymore, but instead making ehci/ohci driver get its own shutdown method.  For
PCI, it is done through pci glue, for everything else through platform driver
glue.

One downside: sa1111 does not use platform driver stuff, and does not have its
own shutdown hook, so no 'shutdown' is called for it now.  I'm not sure if it
is really necessary on that platform, though.

Signed-off-by: Aleks Gorelov <dared1st@yahoo.com>
Cc: Alan Stern <stern@rowland.harvard.edu>
Cc: David Brownell <david-b@pacbell.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-09-27 11:58:54 -07:00
..
buffer.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
config.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
devices.c USB: Make file operations structs in drivers/usb const. 2006-09-27 11:58:52 -07:00
devio.c USB: Make file operations structs in drivers/usb const. 2006-09-27 11:58:52 -07:00
driver.c usbcore: suspending devices with no driver 2006-09-27 11:58:50 -07:00
endpoint.c [PATCH] USB: make endpoints real struct devices 2006-06-21 15:04:19 -07:00
file.c USB: Make file operations structs in drivers/usb const. 2006-09-27 11:58:52 -07:00
generic.c usbcore: fix up device and power state tests 2006-09-27 11:58:50 -07:00
hcd-pci.c USB: Properly unregister reboot notifier in case of failure in ehci hcd 2006-09-27 11:58:54 -07:00
hcd.c USB: Properly unregister reboot notifier in case of failure in ehci hcd 2006-09-27 11:58:54 -07:00
hcd.h USB: Properly unregister reboot notifier in case of failure in ehci hcd 2006-09-27 11:58:54 -07:00
hub.c USB: hub: Use usb_endpoint_* functions. 2006-09-27 11:58:53 -07:00
hub.h [PATCH] USB: Consider power budget when choosing configuration 2006-01-04 13:48:34 -08:00
inode.c USB: Make file operations structs in drivers/usb const. 2006-09-27 11:58:52 -07:00
Kconfig [PATCH] USB: remove devfs information from Kconfig 2006-07-12 16:03:23 -07:00
Makefile usbcore: move code among source files 2006-09-27 11:58:50 -07:00
message.c USB: usbcore get rid of the timer in usb_start_wait_urb() 2006-09-27 11:58:51 -07:00
notify.c usbfs: private mutex for open, release, and remove 2006-09-27 11:58:49 -07:00
otg_whitelist.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sysfs.c usbcore: add configuration_string to attribute group 2006-09-27 11:58:49 -07:00
urb.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
usb.c USB: New functions to check endpoints info. 2006-09-27 11:58:53 -07:00
usb.h USB: Make file operations structs in drivers/usb const. 2006-09-27 11:58:52 -07:00