Message ID | 1441355402-6837-4-git-send-email-vigneshr@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Fri, Sep 04, 2015 at 02:00:00PM +0530, Vignesh R wrote: > + if (spi->master->spi_mtd_mmap_read) { > + return spi->master->spi_mtd_mmap_read(spi, from, len, > + retlen, buf, > + nor->read_opcode, > + nor->addr_width, > + dummy); > + } We should be calling some API provided by the SPI core here, not peering directly into the ops struture.
On 09/14/2015 11:57 PM, Mark Brown wrote: > On Fri, Sep 04, 2015 at 02:00:00PM +0530, Vignesh R wrote: > >> + if (spi->master->spi_mtd_mmap_read) { >> + return spi->master->spi_mtd_mmap_read(spi, from, len, >> + retlen, buf, >> + nor->read_opcode, >> + nor->addr_width, >> + dummy); >> + } > > We should be calling some API provided by the SPI core here, not peering > directly into the ops struture. > Ok..
diff --git a/drivers/mtd/devices/m25p80.c b/drivers/mtd/devices/m25p80.c index d313f948b96c..b8b391aab331 100644 --- a/drivers/mtd/devices/m25p80.c +++ b/drivers/mtd/devices/m25p80.c @@ -133,6 +133,14 @@ static int m25p80_read(struct spi_nor *nor, loff_t from, size_t len, /* convert the dummy cycles to the number of bytes */ dummy /= 8; + if (spi->master->spi_mtd_mmap_read) { + return spi->master->spi_mtd_mmap_read(spi, from, len, + retlen, buf, + nor->read_opcode, + nor->addr_width, + dummy); + } + spi_message_init(&m); memset(t, 0, (sizeof t));
Certain spi controllers may support memory mapped interface to read from m25p80 type flash devices. This interface provides better read performance than regular SPI interface. Call spi_mtd_mmap_read() function, if available, to make use of memory-mapped interface. Signed-off-by: Vignesh R <vigneshr@ti.com> --- drivers/mtd/devices/m25p80.c | 8 ++++++++ 1 file changed, 8 insertions(+)