u-boot/drivers/mtd/spi
Marek Vasut b91a0822d7 mtd: spi-nor: Add CHIP_ERASE optimization
Add support for CHIP_ERASE opcode 0xc7 . This is useful in case the
entire SPI NOR is supposed to be erase at once, as is it considerably
faster than 4k sector erase and even slightly faster than 64k block
erase. The spi_nor_erase_chip() implementation is adapted from Linux
6.1.y as of commit 7d54cb2c26dad ("Linux 6.1.14") . The chip erase is
only used in case the entire MTD device is being erased, and the chip
does support this functionality.

Timing figures from W25Q128JW:
16 MiB erase using 4kiB sector erase opcode 0x20 ... 107.5s
16 MiB erase using 64kiB block erase opcode 0xd8 ... 39.1s
16 MiB erase using chip erase opcode 0xc7 .......... 38.7s

Signed-off-by: Marek Vasut <marex@denx.de>
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
2023-04-25 22:52:55 +05:30
..
fsl_espi_spl.c global: Finish CONFIG -> CFG migration 2023-01-20 12:27:24 -05:00
Kconfig bootstd: Add a SPI flash bootdev 2023-01-23 18:11:41 -05:00
Makefile bootstd: Add a SPI flash bootdev 2023-01-23 18:11:41 -05:00
sandbox.c dm: Avoid accessing seq directly 2020-12-18 20:32:21 -07:00
sf-uclass.c bootstd: Add a SPI flash bootdev 2023-01-23 18:11:41 -05:00
sf_bootdev.c bootstd: Add a new pre-scan priority for bootdevs 2023-01-23 18:11:41 -05:00
sf_dataflash.c common: Drop display_options.h from common header 2022-08-10 13:46:55 -04:00
sf_internal.h mtd: spi-nor-core: Add support for DTR protocol 2021-06-28 12:00:32 +05:30
sf_mtd.c Audit <flash.h> inclusion 2022-08-04 16:18:47 -04:00
sf_probe.c mtd: spi-nor: Use spi-mem dirmap API 2022-09-13 12:08:41 -04:00
spi-nor-core.c mtd: spi-nor: Add CHIP_ERASE optimization 2023-04-25 22:52:55 +05:30
spi-nor-ids.c Xilinx chnages for v2023.04-rc1 2023-01-27 10:15:39 -05:00
spi-nor-tiny.c mtd: spi-nor-tiny: Add fixups for Cypress s25hl-t/s25hs-t 2021-06-29 19:16:54 +05:30