1234567891011121314151617181920212223242526272829303132333435363738394041 |
- --- a/drivers/mtd/devices/Kconfig
- +++ b/drivers/mtd/devices/Kconfig
- @@ -110,6 +110,14 @@ config MTD_SPEAR_SMI
- help
- This enable SNOR support on SPEAR platforms using SMI controller
-
- +config M25PXX_PREFER_SMALL_SECTOR_ERASE
- + bool "Prefer small sector erase"
- + depends on MTD_M25P80
- + default y
- + help
- + This option enables use of the small erase sectors if that is
- + supported by the flash chip.
- +
- config MTD_SST25L
- tristate "Support SST25L (non JEDEC) SPI Flash chips"
- depends on SPI_MASTER
- --- a/drivers/mtd/devices/m25p80.c
- +++ b/drivers/mtd/devices/m25p80.c
- @@ -76,6 +76,12 @@
-
- #define JEDEC_MFR(_jedec_id) ((_jedec_id) >> 16)
-
- +#ifdef CONFIG_M25PXX_PREFER_SMALL_SECTOR_ERASE
- +#define PREFER_SMALL_SECTOR_ERASE 1
- +#else
- +#define PREFER_SMALL_SECTOR_ERASE 0
- +#endif
- +
- /****************************************************************************/
-
- struct m25p {
- @@ -918,7 +924,7 @@ static int m25p_probe(struct spi_device
- flash->mtd._write = m25p80_write;
-
- /* prefer "small sector" erase if possible */
- - if (info->flags & SECT_4K) {
- + if (PREFER_SMALL_SECTOR_ERASE && (info->flags & SECT_4K)) {
- flash->erase_opcode = OPCODE_BE_4K;
- flash->mtd.erasesize = 4096;
- } else if (info->flags & SECT_4K_PMC) {
|