developer | 41370d5 | 2022-03-16 16:01:59 +0800 | [diff] [blame] | 1 | From 5ece78de88739b4c68263e9f2582380c1fd8314f Mon Sep 17 00:00:00 2001 |
| 2 | From: YouChing Lin <ycllin@mxic.com.tw> |
| 3 | Date: Thu, 5 Nov 2020 15:23:40 +0800 |
| 4 | Subject: [PATCH] mtd: spinand: macronix: Add support for MX35LFxGE4AD |
| 5 | |
| 6 | The Macronix MX35LF2GE4AD / MX35LF4GE4AD are 3V, 2G / 4Gbit serial |
| 7 | SLC NAND flash device (with on-die ECC). |
| 8 | |
| 9 | Validated by read, erase, read back, write, read back and nandtest |
| 10 | on Xilinx Zynq PicoZed FPGA board which included Macronix SPI Host |
| 11 | (drivers/spi/spi-mxic.c). |
| 12 | |
| 13 | Signed-off-by: YouChing Lin <ycllin@mxic.com.tw> |
| 14 | Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com> |
| 15 | Link: https://lore.kernel.org/linux-mtd/1604561020-13499-1-git-send-email-ycllin@mxic.com.tw |
| 16 | --- |
| 17 | drivers/mtd/nand/spi/macronix.c | 20 ++++++++++++++++++++ |
| 18 | 1 file changed, 20 insertions(+) |
| 19 | |
| 20 | diff --git a/drivers/mtd/nand/spi/macronix.c b/drivers/mtd/nand/spi/macronix.c |
| 21 | index 8e801e4c3a006f..3786b1b03b3b4b 100644 |
| 22 | --- a/drivers/mtd/nand/spi/macronix.c |
| 23 | +++ b/drivers/mtd/nand/spi/macronix.c |
| 24 | @@ -119,6 +119,26 @@ static const struct spinand_info macronix_spinand_table[] = { |
| 25 | &update_cache_variants), |
| 26 | SPINAND_HAS_QE_BIT, |
| 27 | SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout, NULL)), |
| 28 | + SPINAND_INFO("MX35LF2GE4AD", |
| 29 | + SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0x26), |
| 30 | + NAND_MEMORG(1, 2048, 64, 64, 2048, 40, 1, 1, 1), |
| 31 | + NAND_ECCREQ(8, 512), |
| 32 | + SPINAND_INFO_OP_VARIANTS(&read_cache_variants, |
| 33 | + &write_cache_variants, |
| 34 | + &update_cache_variants), |
| 35 | + 0, |
| 36 | + SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout, |
| 37 | + mx35lf1ge4ab_ecc_get_status)), |
| 38 | + SPINAND_INFO("MX35LF4GE4AD", |
| 39 | + SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0x37), |
| 40 | + NAND_MEMORG(1, 4096, 128, 64, 2048, 40, 1, 1, 1), |
| 41 | + NAND_ECCREQ(8, 512), |
| 42 | + SPINAND_INFO_OP_VARIANTS(&read_cache_variants, |
| 43 | + &write_cache_variants, |
| 44 | + &update_cache_variants), |
| 45 | + 0, |
| 46 | + SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout, |
| 47 | + mx35lf1ge4ab_ecc_get_status)), |
| 48 | SPINAND_INFO("MX31LF1GE4BC", |
| 49 | SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0x1e), |
| 50 | NAND_MEMORG(1, 2048, 64, 64, 1024, 20, 1, 1, 1), |