Skip to content

Commit fdfb040

Browse files
WT-886miquelraynal
authored andcommitted
mtd: spinand: gigadevice: Add support for GD5F1GM9 chips
- GD5F1GM9UExxG (ID:c89101 3.3V) - GD5F1GM9RExxG (ID:c88101 1.8V) Both device feature: - 1Gb density (1024 blocks) - 2048-byte page size with 128-byte OOB - 8-bit ECC requirement per 512 bytes - Quad I/O Read support (opcode EBH) - tPROG ≤ 300us typical page program time Testing environment: - Platform: Raspberry PI-5 (Linux raspberry 6.15.0-rc6-v8) - Operations verified: * Full device read/write/erase cycles on all blocks * Nandspeed: ~ GD5F1GM9UE: 2.75MB/s read, 1.99MB/s write, 41.26MB/s erase ~ GD5F1GM9RE: 1.84MB/s read, 1.45MB/s write, 41.04MS/s erase * Nandbiterrs: Both corredted 8-bit errors per 512 bytes * Stresstest: Both 144k cycles 0 bad block growth Full test log: -U: https://gist.github.com/WT-886/b0f41fb50ddac3adc0020222c1f89b61 -R: https://gist.github.com/WT-886/8784e72f4632d519814928ff49225963 Datasheet: -https://github.com/WT-886/DATASHEET/blob/main/GD5F1GM9-v1.0.pdf Signed-off-by: Teng Wu <[email protected]> Signed-off-by: Miquel Raynal <[email protected]>
1 parent 258ef75 commit fdfb040

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

drivers/mtd/nand/spi/gigadevice.c

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -533,6 +533,26 @@ static const struct spinand_info gigadevice_spinand_table[] = {
533533
SPINAND_HAS_QE_BIT,
534534
SPINAND_ECCINFO(&gd5fxgqx_variant2_ooblayout,
535535
gd5fxgq4uexxg_ecc_get_status)),
536+
SPINAND_INFO("GD5F1GM9UExxG",
537+
SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0x91, 0x01),
538+
NAND_MEMORG(1, 2048, 128, 64, 1024, 20, 1, 1, 1),
539+
NAND_ECCREQ(8, 512),
540+
SPINAND_INFO_OP_VARIANTS(&read_cache_variants_1gq5,
541+
&write_cache_variants,
542+
&update_cache_variants),
543+
SPINAND_HAS_QE_BIT,
544+
SPINAND_ECCINFO(&gd5fxgqx_variant2_ooblayout,
545+
gd5fxgq4uexxg_ecc_get_status)),
546+
SPINAND_INFO("GD5F1GM9RExxG",
547+
SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0x81, 0x01),
548+
NAND_MEMORG(1, 2048, 128, 64, 1024, 20, 1, 1, 1),
549+
NAND_ECCREQ(8, 512),
550+
SPINAND_INFO_OP_VARIANTS(&read_cache_variants_1gq5,
551+
&write_cache_variants,
552+
&update_cache_variants),
553+
SPINAND_HAS_QE_BIT,
554+
SPINAND_ECCINFO(&gd5fxgqx_variant2_ooblayout,
555+
gd5fxgq4uexxg_ecc_get_status)),
536556
};
537557

538558
static const struct spinand_manufacturer_ops gigadevice_spinand_manuf_ops = {

0 commit comments

Comments
 (0)