[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180608134818.21387-1-tudor.ambarus@microchip.com>
Date: Fri, 8 Jun 2018 16:48:17 +0300
From: Tudor Ambarus <tudor.ambarus@...rochip.com>
To: <marek.vasut@...il.com>, <cyrille.pitchen@...rochip.com>,
<dwmw2@...radead.org>, <computersforpeace@...il.com>,
<boris.brezillon@...tlin.com>, <richard@....at>
CC: <linux-mtd@...ts.infradead.org>, <linux-kernel@...r.kernel.org>,
<nicolas.ferre@...rochip.com>, <Cristian.Birsan@...rochip.com>,
Tudor Ambarus <tudor.ambarus@...rochip.com>
Subject: [PATCH] add support to non-uniform SFDP SPI NOR flash memories
The commit message became wall-of-text, my feeling is that I heavily
reworked the code so I changed the author. If someone thinks differently,
please say and I'll change back to the initial authorship. What I've done:
- minimize the amount of erase() calls by using the best sequence of erase
type commands depending on alignment.
- build the list of best fitted erase commands to be executed once we
validate that the erase can be performed.
- add improvements on how the erase map is handled. The regions are
consecutive in the address space, walk through the regions incrementally.
- speed up finding the best erase type command. Order erase types by
size, iterate them from the biggest to the smallest and stop when best
fitted command is found.
- determine at init if there are erase types that can erase the entire
memory
- fix the erase size in overlaid regions. S25FS512S states that 'if a sector
erase command is applied to a 256KB range that is overlaid by 4KB secors,
the overlaid 4kB sectors are not affected by the erase'
Backward compatibility test done on MX25L25673G.
Changes since RFC PATCH:
- build a list of erase commands to be executed once we validate
that the erase can be performed
- fix walking through the address space in overlaid regions
- drop wall-of-text description commit message, change author
Tudor Ambarus (1):
mtd: spi-nor: add support to non-uniform SFDP SPI NOR flash memories
drivers/mtd/spi-nor/spi-nor.c | 357 ++++++++++++++++++++++++++++++++++++++++--
include/linux/mtd/spi-nor.h | 108 +++++++++++++
2 files changed, 451 insertions(+), 14 deletions(-)
--
2.9.4
Powered by blists - more mailing lists