123456789101112131415161718192021222324252627282930313233343536 |
- From: Felix Fietkau <nbd@nbd.name>
- Date: Fri, 23 Feb 2018 17:12:16 +0100
- Subject: [PATCH] mtd: m25p80: allow fallback from spi_flash_read to regular
- SPI transfer
- Some flash controllers, e.g. on the ath79 platform can support a fast
- flash read via memory mapping, but only if the flash chip is in
- 3-byte address mode.
- Since spi_flash_read_supported does not have access to the same data as
- spi_flash_read, the driver can't detect an unsupported call until m25p80
- has decided to use spi_flash_read.
- Allow the driver to indicate a fallback to a regular SPI transfer by
- returning -EOPNOTSUPP
- Signed-off-by: Felix Fietkau <nbd@nbd.name>
- ---
- --- a/drivers/mtd/devices/m25p80.c
- +++ b/drivers/mtd/devices/m25p80.c
- @@ -155,9 +155,11 @@ static ssize_t m25p80_read(struct spi_no
- msg.data_nbits = m25p80_rx_nbits(nor);
-
- ret = spi_flash_read(spi, &msg);
- - if (ret < 0)
- - return ret;
- - return msg.retlen;
- + if (ret != -EOPNOTSUPP) {
- + if (ret < 0)
- + return ret;
- + return msg.retlen;
- + }
- }
-
- spi_message_init(&m);
|