mtd: m25p80: remove M25PXX_USE_FAST_READ Kconfig
authorBrian Norris <computersforpeace@gmail.com>
Tue, 20 Aug 2013 04:30:22 +0000 (21:30 -0700)
committerBrian Norris <computersforpeace@gmail.com>
Thu, 7 Nov 2013 07:33:06 +0000 (23:33 -0800)
commitddba7c5ad797f4b878f4e177ef300c1f9837cd29
treee0f9934ced1dc0430c45697297e95616a19f22b8
parent6e5d9bda27000c682a9b38f0466941007e295f82
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>
drivers/mtd/devices/Kconfig
drivers/mtd/devices/m25p80.c