linux-kernel-test/drivers/misc
Alex Dubov 8e02f8581c tifm_sd: restructure initialization, removal and command handling
In order to support correct suspend and resume several changes were needed:
1. Switch from work_struct to tasklet for command handling. When device
suspend is called workqueues are already frozen and can not be used.
2. Separate host initialization code from driver's probe and don't rely
on interrupts for host initialization. This, in turn, addresses two
problems:
 a) Resume needs to re-initialize the host, but can not assume that
    device interrupts were already re-armed.
 b) Previously, probe will return successfully before really knowing
    the state of the host, as host interrupts were not armed in time.
    Now it uses polling to determine the real host state before returning.
3. Separate termination code from driver's remove. Termination may be caused
by resume, if media changed type or became unavailable during suspend.

Signed-off-by: Alex Dubov <oakad@yahoo.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
2007-02-04 20:54:07 +01:00
..
hdpuftrs Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-11-11 09:24:26 -08:00
ibmasm IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
ioc4.c [PATCH] ioc4: fix printk format warning 2006-10-28 11:30:53 -07:00
Kconfig [PATCH] IOC4 should depend on PCI 2006-10-24 22:01:11 -07:00
lkdtm.c [PATCH] Fix for LKDTM MEM_SWAPOUT crashpoint 2006-11-06 01:46:23 -08:00
Makefile [PATCH] ioc4: Enable build on non-SN2 2006-10-17 08:18:42 -07:00
msi-laptop.c ACPI: video: Add dev argument for backlight_device_register 2006-12-20 01:42:19 -05:00
tifm_7xx1.c tifm_sd: restructure initialization, removal and command handling 2007-02-04 20:54:07 +01:00
tifm_core.c tifm_sd: restructure initialization, removal and command handling 2007-02-04 20:54:07 +01:00