alistair23-linux/drivers/mtd/devices
Brian Norris ddba7c5ad7 mtd: m25p80: remove M25PXX_USE_FAST_READ Kconfig
Remove the compile-time option for FAST_READ, since we have run-time
support for detecting it. This refactors the logic for enabling
fast-read, such that for DT-enabled devices, we honor the
"m25p,fast-read" property but for non-DT devices, we default to using
FAST_READ whenever the flash device supports it.

Normal READ and FAST_READ differ only in the following:

  * FAST_READ supports SPI higher clock frequencies [1]

  * number of dummy cycles; FAST_READ requires 8 dummy cycles (whereas
    READ requires 0) to allow the flash sufficient setup time, even when
    running at higher clock speeds

Thus, for flash chips which support FAST_READ, there is otherwise no
limiting reason why we cannot use the FAST_READ opcode instead of READ.
It simply allows the SPI controller to run at higher clock rates. So
theoretically, nobody should be needing the compile-time option anyway.

  [1] I have a Spansion S25FL128S datasheet which says:

    "The maximum operating clock frequency for the READ command is 50
    MHz."

  And:

    "The maximum operating clock frequency for FAST READ command is 133
    MHz."

Signed-off-by: Brian Norris <computersforpeace@gmail.com>
2013-11-06 23:33:06 -08:00
..
bcm47xxsflash.c mtd: bcm47xxsflash: writing support 2013-08-30 21:52:20 +01:00
bcm47xxsflash.h mtd: bcm47xxsflash: implement ChipCommon R/W ops 2013-08-05 18:20:32 +01:00
block2mtd.c mtd: Move major number definitions to major.h 2013-11-06 23:32:59 -08:00
docg3.c mtg: docg3: use free_bch() instead of kfree() 2013-11-06 23:32:52 -08:00
docg3.h mtd: docg3 add protection against concurrency 2012-03-27 01:03:27 +01:00
elm.c mtd: simplify use of devm_ioremap_resource 2013-08-30 21:36:15 +01:00
Kconfig mtd: m25p80: remove M25PXX_USE_FAST_READ Kconfig 2013-11-06 23:33:06 -08:00
lart.c mtd: move zero length verification to MTD API functions 2012-03-27 00:32:19 +01:00
m25p80.c mtd: m25p80: remove M25PXX_USE_FAST_READ Kconfig 2013-11-06 23:33:06 -08:00
Makefile mtd: doc: remove support for DoC 2000/2001/2001+ 2013-04-05 12:04:31 +01:00
ms02-nv.c mtd: do not duplicate length and offset checks in drivers 2012-03-27 00:28:18 +01:00
ms02-nv.h MTD/JFFS2: remove CVS keywords 2008-06-04 17:50:17 +01:00
mtd_dataflash.c mtd: dataflash: remove unused field 2013-10-27 16:26:59 -07:00
mtdram.c mtd: harmonize mtd_point interface implementation 2012-03-27 00:32:11 +01:00
phram.c mtd: phram: Make phram 64-bit compatible 2013-11-06 23:32:37 -08:00
pmc551.c MTD merge for 3.4 2012-03-30 17:31:56 -07:00
slram.c mtd: slram: invalid checking of absolute end address 2012-11-09 17:02:50 +02:00
spear_smi.c mtd: spear_smi: add missing __iomem annotation 2013-08-30 21:51:48 +01:00
sst25l.c mtd: sst25l: Use devm_kzalloc 2013-11-06 23:32:48 -08:00