u-boot/drivers/mtd
Prasad Kummari f59cb6a697 Revert "mtd: spi-nor: Remove recently added SST special case"
SST(sst26wf016) flashes have multiple erase block sizes, including
8 KB, 32 KB, and 64 KB. Since a 64 KB sector erase cannot be performed
on all blocks, the 4 KB sector erase command should be used instead.
Enabling the SPI_FLASH_USE_4K_SECTORS configuration allows the use of
4 KB sector erases, but it may increase the erase operation time for large
memory flashes.

This reverts commit 34cd4a72fb

MEMORY ORGANIZATION:
The SST26WF016B/016BA SQI memory array is organized
in uniform, 4 KByte erasable sectors with the following
erasable blocks: eight 8 KByte parameter, two
32 KByte overlay, and thirty 64 KByte overlay blocks.
See Figure 3-1.

Top of Memory Block
┌──────────┐
│  8 KByte │
├──────────┤
│  8 KByte │
├──────────┤
│  8 KByte │
├──────────┤
│  8 KByte │
├──────────┤
│ 32 KByte │
├──────────┤
│ 64 KByte │
├──────────┤
│ 64 KByte │
├──────────┤
│ 64 KByte │
├──────────┤
│ 32 KByte │
├──────────┤
│  8 KByte │
├──────────┤
│  8 KByte │
├──────────┤
│  8 KByte │
├──────────┤
│  8 KByte │
└──────────┘
Bottom of Memory Block

      ┌────────────────────────────────┐
      │            64 KByte            │
      ├────────────────────────────────┤
      │            64 KByte            │
      └────────────────────────────────┘

      Expanded View:
      ┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐
      │ 4 KB │ │ 4 KB │ │ 4 KB │ │ 4 KB │
      ├──────┤ ├──────┤ ├──────┤ ├──────┤
      │  . .  .  (continues) . .  .   │
      └──────┘ └──────┘ └──────┘ └──────┘

2 Sectors for 8 KByte blocks
8 Sectors for 32 KByte blocks
16 Sectors for 64 KByte blocks

Link: https://ww1.microchip.com/downloads/en/DeviceDoc/20005013D.pdf
Signed-off-by: Prasad Kummari <prasad.kummari@amd.com>
2025-04-29 15:29:00 -06:00
..
nand spinand: call SPI setup_for_spinand if supported 2025-04-16 19:57:35 -06:00
nvmxip nvmxip: Avoid probing on boot 2024-09-18 13:00:59 -06:00
onenand drivers: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
spi Revert "mtd: spi-nor: Remove recently added SST special case" 2025-04-29 15:29:00 -06:00
ubi Merge patch series "Annotate switch/case fallthrough cases" 2025-04-08 16:24:12 -06:00
ubispl drivers/mtd/ubispl/ubispl.c: Fix error message 2024-11-29 12:59:27 +02:00
altera_qspi.c flash: prefix error codes with FL_ 2024-09-24 13:41:20 -06:00
cfi_flash.c flash: prefix error codes with FL_ 2024-09-24 13:41:20 -06:00
cfi_mtd.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
hbmc-am654.c mtd: HBMC-AM654: Changed syscon API to mux APIs 2024-12-14 09:34:16 -06:00
jedec_flash.c drivers: mtd: Remove duplicate newlines 2024-07-22 10:53:05 -06:00
Kconfig treewide: Replace Maximumm with Maximum in Kconfig symbol description 2025-01-24 14:15:05 -06:00
Makefile global: Rename SPL_TPL_ to PHASE_ 2024-10-11 11:44:48 -06:00
mtd_uboot.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
mtd-uclass.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
mtdblock.c drivers: introduce mtdblock abstraction 2024-08-08 09:27:50 +02:00
mtdconcat.c common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
mtdcore.c nand: Add a watch command 2024-12-17 13:17:41 -06:00
mtdcore.h mtd: move definitions to enlarge their range 2018-09-20 20:10:49 +05:30
mtdpart.c mtd: mtdparts: calculate mtd partition offset before calculating size 2025-04-28 13:26:15 -06:00
renesas_rpc_hf.c mtd: renesas: Fix R-Car spelling 2024-12-11 08:36:24 +01:00
stm32_flash.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
stm32_flash.h stm32: stm32f4: move flash driver to mtd driver location 2016-03-26 18:49:28 -04:00