linux/drivers
Anders Grafström e93cafe45f [MTD] [NOR] cfi_cmdset_0001: Timeouts for erase, write and unlock operations
Timeouts are currently given by the typical operation time times 8.
It works in the general well-behaved case but not when an erase block is
failing. For erase operations, it seems that a failing erase block will
keep the device state machine in erasing state until the vendor
specified maximum timeout period has passed. By this time the driver
would have long since timed out, left erasing state and attempted
further operations which all fail. This patch implements timeouts using
values from the CFI Query structure when available.
The patch also sets a longer timeout for locking operations. The current
value used for locking/unlocking given by 1000000/HZ microseconds is too
short for devices like J3 and J5 Strataflash which have a typical clear
lock-bits time of 0.5 seconds.

Signed-off-by: Anders Grafström <grfstrm@users.sourceforge.net>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
2008-08-06 09:44:54 +01:00
..
accessibility
acpi acpi cpufreq cleanup: move bailing out of function before locking the mutex 2008-07-30 09:41:43 -07:00
amba
ata [ARM] 5179/1: Replace obsolete IRQT_* and __IRQT_* values with IRQ_TYPE_* 2008-07-27 09:46:18 +01:00
atm atm: [fore200e] use MODULE_FIRMWARE() and other suggested cleanups 2008-07-23 20:29:21 -07:00
auxdisplay auxdisplay: small cleanups 2008-07-24 10:47:41 -07:00
base more sysdev API change fallout - drivers/base/memory.c 2008-07-28 08:31:58 -07:00
block aoe: convert emsgs_sema into a completion 2008-07-25 10:53:45 -07:00
bluetooth Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2008-07-20 17:43:29 -07:00
cdrom sh: More header path fixups for mach dir refactoring. 2008-07-29 22:10:01 +09:00
char Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2008-07-30 10:43:56 -07:00
clocksource Fix printk format warning in clocksource/acpi_pm.c 2008-07-15 11:01:39 -07:00
connector CONNECTOR: add a proc entry to list connectors 2008-06-27 20:03:24 -07:00
cpufreq cpufreq acpi: only call _PPC after cpufreq ACPI init funcs got called already 2008-07-30 09:41:43 -07:00
cpuidle ACPI/CPUIDLE: prevent setting pm_idle to NULL 2008-07-28 08:31:58 -07:00
crypto crypto: talitos - sparse fix 2008-07-17 20:20:59 +08:00
dca Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx 2008-07-23 12:03:18 -07:00
dio dio: use dio_match_device() in dio_bus_match() 2008-07-20 17:24:40 -07:00
dma I/OAT: I/OAT version 3.0 support 2008-07-22 17:30:57 -07:00
edac edac: mpc85xx fix pci ofdev 2nd pass 2008-07-25 10:53:49 -07:00
eisa driver core: remove DEVICE_NAME_SIZE define 2008-07-21 21:54:53 -07:00
firewire Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 2008-07-27 10:24:06 -07:00
firmware iscsi_ibft_find: fix modpost warning 2008-07-30 09:41:44 -07:00
gpio gpio: max732x driver 2008-07-25 10:53:30 -07:00
gpu drm: make drm_minors_cleanup() static 2008-07-26 12:00:11 -07:00
hid Merge branches 'upstream' and 'upstream-fixes' into for-linus 2008-07-23 15:26:10 +02:00
hwmon device create: hwmon: convert device_create to device_create_drvdata 2008-07-21 21:54:42 -07:00
i2c i2c: Blackfin I2C Driver: Functional power management support 2008-07-28 12:41:03 +01:00
ide ide/powermac: Fix use of uninitialized pointer on media-bay 2008-07-30 15:26:53 +10:00
ieee1394 PAGE_ALIGN(): correctly handle 64-bit values on 32-bit architectures 2008-07-24 10:47:21 -07:00
infiniband Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband 2008-07-26 20:40:36 -07:00
input sh: More header path fixups for mach dir refactoring. 2008-07-29 22:10:01 +09:00
isdn Remove deprecated virt_to_bus() 2008-07-28 12:21:25 +02:00
leds leds: Ensure led->trigger is set earlier 2008-07-23 09:49:56 +01:00
lguest lguest: use cpu capability accessors 2008-07-29 09:58:34 +10:00
macintosh device create: macintosh: convert device_create to device_create_drvdata 2008-07-21 21:54:43 -07:00
mca driver core: remove DEVICE_NAME_SIZE define 2008-07-21 21:54:53 -07:00
md [PATCH] switch mtd and dm-table to lookup_bdev() 2008-08-01 11:25:31 -04:00
media V4L/DVB (8549): mxl5007: Fix an error at include file 2008-07-27 19:36:08 -03:00
memstick memstick: use fully asynchronous request processing 2008-07-26 12:00:04 -07:00
message Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 2008-07-27 10:04:52 -07:00
mfd mfd: accept pure device as a parent, not only platform_device 2008-07-29 01:30:26 +02:00
misc sgi-xp: setup the notify GRU message queue 2008-07-30 09:41:50 -07:00
mmc au1xmmc: raise segment size limit. 2008-08-01 19:04:26 +02:00
mtd [MTD] [NOR] cfi_cmdset_0001: Timeouts for erase, write and unlock operations 2008-08-06 09:44:54 +01:00
net niu: Fix error checking in niu_ethflow_to_class. 2008-07-29 23:59:20 -07:00
nubus
of spi: Add OF binding support for SPI busses 2008-07-25 22:34:40 -04:00
oprofile
parisc parisc-eisa_eeprom: BKL pushdown 2008-07-02 15:06:24 -06:00
parport make parport_cs_release() static 2008-07-26 12:00:11 -07:00
pci PCI: add D3 power state avoidance quirk 2008-07-28 15:12:11 -07:00
pcmcia [ARM] 5179/1: Replace obsolete IRQT_* and __IRQT_* values with IRQ_TYPE_* 2008-07-27 09:46:18 +01:00
pnp make pnp_add_card_id() static 2008-07-26 12:00:11 -07:00
power Merge branch 'master' of /home/cbou/linux-2.6 2008-07-30 02:05:23 +04:00
ps3
rapidio rapidio: fix device reference counting 2008-07-10 18:04:43 -07:00
regulator regulator: TI bq24022 Li-Ion Charger driver 2008-07-30 10:10:23 +01:00
rtc rtc-dev: stop periodic interrupts on device release 2008-07-30 09:41:47 -07:00
s390 [S390] qeth: avoid use of include/asm-s390 2008-08-01 16:39:36 +02:00
sbus sparc64: fix up bus_id changes in sparc core code 2008-07-21 21:55:03 -07:00
scsi [SCSI] qla2xxx: fix msleep compile error 2008-07-28 10:13:22 -05:00
serial Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 2008-08-01 10:53:43 -07:00
sh sh/maple: clean maple bus code 2008-07-29 22:10:56 +09:00
sn
spi spi_s3c24xx: really assign busnum 2008-07-28 16:30:21 -07:00
ssb Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-07-08 16:30:17 -07:00
tc
telephony ixj: push BKL into driver and wrap ioctls 2008-07-25 10:53:43 -07:00
thermal thermal: Create CONFIG_THERMAL_HWMON=n 2008-06-25 19:25:42 -04:00
uio UIO: add generic UIO platform driver 2008-07-21 21:54:55 -07:00
usb USB: m66592-udc: Fix up dev_set_name() badness. 2008-07-30 09:41:46 -07:00
video Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 2008-08-01 10:53:43 -07:00
virtio virtio: Add transport feature handling stub for virtio_ring. 2008-07-25 12:06:14 +10:00
w1 w1/ds2482: Convert to a new-style driver 2008-07-16 19:30:07 +02:00
watchdog hpwdt: don't use static flags 2008-07-30 09:41:45 -07:00
xen sysdev: Pass the attribute to the low level sysdev show/store function 2008-07-21 21:55:02 -07:00
zorro move memory_read_from_buffer() from fs.h to string.h 2008-07-24 10:47:13 -07:00
Kconfig
Makefile regulator: core kbuild files 2008-07-30 10:10:22 +01:00