[PATCH v3] mtd: spi-nor: gigadevice: Add support for GigaDevice GD25B512

Matthew Parker mparker at arista.com
Sun Nov 8 18:14:35 PST 2026


Add support for the GigaDevice GD25B512 512Mbit (64 MiB) SPI NOR flash.

The chip exposes valid JESD216B SFDP tables including 4-byte address
instruction tables, from which geometry and opcodes are discovered.
Status register locking is enabled. Status register block protection is
enabled using 4 BP bits (BP0-BP3) to cover the full 64 MiB address range.
Read, write, and erase functionality across the full memory array have been
tested on hardware.

Cc: stable at vger.kernel.org # v6.1+
Co-developed-by: Adam Calabrigo <adamc at arista.com>
Signed-off-by: Adam Calabrigo <adamc at arista.com>
Signed-off-by: Matthew Parker <mparker at arista.com>
---
v2:
 - Drop .fixup_flags per modern SFDP discovery conventions.
v3:
 - Add SPI_NOR_4BIT_BP flag to .flags.

 drivers/mtd/spi-nor/gigadevice.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/mtd/spi-nor/gigadevice.c b/drivers/mtd/spi-nor/gigadevice.c
index 6a2e6ebda148..113db85f7bd2 100644
--- a/drivers/mtd/spi-nor/gigadevice.c
+++ b/drivers/mtd/spi-nor/gigadevice.c
@@ -64,6 +64,9 @@ static const struct flash_info gigadevice_nor_parts[] = {
 		.id = SNOR_ID(0xc8, 0x40, 0x19),
 		.name = "gd25q256",
 		.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB | SPI_NOR_TB_SR_BIT6,
+	}, {
+		.id = SNOR_ID(0xc8, 0x47, 0x1a),
+		.flags = SPI_NOR_HAS_LOCK | SPI_NOR_4BIT_BP,
 	}, {
 		.id = SNOR_ID(0xc8, 0x60, 0x16),
 		.name = "gd25lq32",
-- 
2.51.0




More information about the linux-mtd mailing list