* [PATCH v2] mtd: spinand: macronix: Add support for serial NAND flash
@ 2024-06-05 5:48 ` Cheng Ming Lin
0 siblings, 0 replies; 7+ messages in thread
From: Cheng Ming Lin @ 2024-06-05 5:48 UTC (permalink / raw)
To: miquel.raynal, dwmw2, computersforpeace, marek.vasut, vigneshr,
linux-mtd, linux-kernel
Cc: richard, alvinzhou, leoyu, Cheng Ming Lin, stable
From: Cheng Ming Lin <chengminglin@mxic.com.tw>
commit c374839f9b4475173e536d1eaddff45cb481dbdf upstream.
MX35UF{1,2,4}GE4AD and MX35UF{1,2}GE4AC have been
merged into Linux kernel mainline through upstream commit.
For SPI-NAND flash support on Linux kernel LTS v5.4.y,
add SPI-NAND flash MX35UF{1,2,4}GE4AD and MX35UF{1,2}GE4AC in id tables.
Those five flashes have been validated on Xilinx zynq-picozed board and
Linux kernel LTS v5.4.y.
Cc: stable@vger.kernel.org # 5.4.y
Signed-off-by: Cheng Ming Lin <chengminglin@mxic.com.tw>
---
drivers/mtd/nand/spi/macronix.c | 45 +++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)
diff --git a/drivers/mtd/nand/spi/macronix.c b/drivers/mtd/nand/spi/macronix.c
index f18c6cfe8ff5..e1446798bfb3 100644
--- a/drivers/mtd/nand/spi/macronix.c
+++ b/drivers/mtd/nand/spi/macronix.c
@@ -132,6 +132,51 @@ static const struct spinand_info macronix_spinand_table[] = {
&update_cache_variants),
SPINAND_HAS_QE_BIT,
SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout, NULL)),
+ SPINAND_INFO("MX35UF4GE4AD", 0xb7,
+ NAND_MEMORG(1, 4096, 256, 64, 2048, 40, 1, 1, 1),
+ NAND_ECCREQ(8, 512),
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
+ &write_cache_variants,
+ &update_cache_variants),
+ SPINAND_HAS_QE_BIT,
+ SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,
+ mx35lf1ge4ab_ecc_get_status)),
+ SPINAND_INFO("MX35UF2GE4AD", 0xa6,
+ NAND_MEMORG(1, 2048, 128, 64, 2048, 40, 1, 1, 1),
+ NAND_ECCREQ(8, 512),
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
+ &write_cache_variants,
+ &update_cache_variants),
+ SPINAND_HAS_QE_BIT,
+ SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,
+ mx35lf1ge4ab_ecc_get_status)),
+ SPINAND_INFO("MX35UF2GE4AC", 0xa2,
+ NAND_MEMORG(1, 2048, 64, 64, 2048, 40, 1, 1, 1),
+ NAND_ECCREQ(4, 512),
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
+ &write_cache_variants,
+ &update_cache_variants),
+ SPINAND_HAS_QE_BIT,
+ SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,
+ mx35lf1ge4ab_ecc_get_status)),
+ SPINAND_INFO("MX35UF1GE4AD", 0x96,
+ NAND_MEMORG(1, 2048, 128, 64, 1024, 20, 1, 1, 1),
+ NAND_ECCREQ(8, 512),
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
+ &write_cache_variants,
+ &update_cache_variants),
+ SPINAND_HAS_QE_BIT,
+ SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,
+ mx35lf1ge4ab_ecc_get_status)),
+ SPINAND_INFO("MX35UF1GE4AC", 0x92,
+ NAND_MEMORG(1, 2048, 64, 64, 1024, 20, 1, 1, 1),
+ NAND_ECCREQ(4, 512),
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
+ &write_cache_variants,
+ &update_cache_variants),
+ SPINAND_HAS_QE_BIT,
+ SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,
+ mx35lf1ge4ab_ecc_get_status)),
};
static int macronix_spinand_detect(struct spinand_device *spinand)
--
2.25.1
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH v2] mtd: spinand: macronix: Add support for serial NAND flash
@ 2024-06-05 5:48 ` Cheng Ming Lin
0 siblings, 0 replies; 7+ messages in thread
From: Cheng Ming Lin @ 2024-06-05 5:48 UTC (permalink / raw)
To: miquel.raynal, dwmw2, computersforpeace, marek.vasut, vigneshr,
linux-mtd, linux-kernel
Cc: richard, alvinzhou, leoyu, Cheng Ming Lin, stable
From: Cheng Ming Lin <chengminglin@mxic.com.tw>
commit c374839f9b4475173e536d1eaddff45cb481dbdf upstream.
MX35UF{1,2,4}GE4AD and MX35UF{1,2}GE4AC have been
merged into Linux kernel mainline through upstream commit.
For SPI-NAND flash support on Linux kernel LTS v5.4.y,
add SPI-NAND flash MX35UF{1,2,4}GE4AD and MX35UF{1,2}GE4AC in id tables.
Those five flashes have been validated on Xilinx zynq-picozed board and
Linux kernel LTS v5.4.y.
Cc: stable@vger.kernel.org # 5.4.y
Signed-off-by: Cheng Ming Lin <chengminglin@mxic.com.tw>
---
drivers/mtd/nand/spi/macronix.c | 45 +++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)
diff --git a/drivers/mtd/nand/spi/macronix.c b/drivers/mtd/nand/spi/macronix.c
index f18c6cfe8ff5..e1446798bfb3 100644
--- a/drivers/mtd/nand/spi/macronix.c
+++ b/drivers/mtd/nand/spi/macronix.c
@@ -132,6 +132,51 @@ static const struct spinand_info macronix_spinand_table[] = {
&update_cache_variants),
SPINAND_HAS_QE_BIT,
SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout, NULL)),
+ SPINAND_INFO("MX35UF4GE4AD", 0xb7,
+ NAND_MEMORG(1, 4096, 256, 64, 2048, 40, 1, 1, 1),
+ NAND_ECCREQ(8, 512),
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
+ &write_cache_variants,
+ &update_cache_variants),
+ SPINAND_HAS_QE_BIT,
+ SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,
+ mx35lf1ge4ab_ecc_get_status)),
+ SPINAND_INFO("MX35UF2GE4AD", 0xa6,
+ NAND_MEMORG(1, 2048, 128, 64, 2048, 40, 1, 1, 1),
+ NAND_ECCREQ(8, 512),
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
+ &write_cache_variants,
+ &update_cache_variants),
+ SPINAND_HAS_QE_BIT,
+ SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,
+ mx35lf1ge4ab_ecc_get_status)),
+ SPINAND_INFO("MX35UF2GE4AC", 0xa2,
+ NAND_MEMORG(1, 2048, 64, 64, 2048, 40, 1, 1, 1),
+ NAND_ECCREQ(4, 512),
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
+ &write_cache_variants,
+ &update_cache_variants),
+ SPINAND_HAS_QE_BIT,
+ SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,
+ mx35lf1ge4ab_ecc_get_status)),
+ SPINAND_INFO("MX35UF1GE4AD", 0x96,
+ NAND_MEMORG(1, 2048, 128, 64, 1024, 20, 1, 1, 1),
+ NAND_ECCREQ(8, 512),
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
+ &write_cache_variants,
+ &update_cache_variants),
+ SPINAND_HAS_QE_BIT,
+ SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,
+ mx35lf1ge4ab_ecc_get_status)),
+ SPINAND_INFO("MX35UF1GE4AC", 0x92,
+ NAND_MEMORG(1, 2048, 64, 64, 1024, 20, 1, 1, 1),
+ NAND_ECCREQ(4, 512),
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
+ &write_cache_variants,
+ &update_cache_variants),
+ SPINAND_HAS_QE_BIT,
+ SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,
+ mx35lf1ge4ab_ecc_get_status)),
};
static int macronix_spinand_detect(struct spinand_device *spinand)
--
2.25.1
^ permalink raw reply related [flat|nested] 7+ messages in thread* Re: [PATCH v2] mtd: spinand: macronix: Add support for serial NAND flash
2024-06-05 5:48 ` Cheng Ming Lin
@ 2024-06-12 14:45 ` Greg KH
-1 siblings, 0 replies; 7+ messages in thread
From: Greg KH @ 2024-06-12 14:45 UTC (permalink / raw)
To: Cheng Ming Lin
Cc: miquel.raynal, dwmw2, computersforpeace, marek.vasut, vigneshr,
linux-mtd, linux-kernel, richard, alvinzhou, leoyu,
Cheng Ming Lin, stable
On Wed, Jun 05, 2024 at 01:48:58PM +0800, Cheng Ming Lin wrote:
> From: Cheng Ming Lin <chengminglin@mxic.com.tw>
>
> commit c374839f9b4475173e536d1eaddff45cb481dbdf upstream.
No, this isn't that commit, it's just a portion of it :(
Please backport the whole thing, and leave the original signed-off-by
lines and text in it.
Also, this is needed for 5.10.y kernels, right? Please provide a
backported version for there, otherwise you would upgrade your kernel
and have a regression.
thanks,
greg k-h
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2] mtd: spinand: macronix: Add support for serial NAND flash
@ 2024-06-12 14:45 ` Greg KH
0 siblings, 0 replies; 7+ messages in thread
From: Greg KH @ 2024-06-12 14:45 UTC (permalink / raw)
To: Cheng Ming Lin
Cc: miquel.raynal, dwmw2, computersforpeace, marek.vasut, vigneshr,
linux-mtd, linux-kernel, richard, alvinzhou, leoyu,
Cheng Ming Lin, stable
On Wed, Jun 05, 2024 at 01:48:58PM +0800, Cheng Ming Lin wrote:
> From: Cheng Ming Lin <chengminglin@mxic.com.tw>
>
> commit c374839f9b4475173e536d1eaddff45cb481dbdf upstream.
No, this isn't that commit, it's just a portion of it :(
Please backport the whole thing, and leave the original signed-off-by
lines and text in it.
Also, this is needed for 5.10.y kernels, right? Please provide a
backported version for there, otherwise you would upgrade your kernel
and have a regression.
thanks,
greg k-h
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2] mtd: spinand: macronix: Add support for serial NAND flash
@ 2021-06-07 8:19 Jaime Liao
2021-06-07 8:19 ` Jaime Liao
0 siblings, 1 reply; 7+ messages in thread
From: Jaime Liao @ 2021-06-07 8:19 UTC (permalink / raw)
To: u-boot, jagan, vigneshr, miquel.raynal; +Cc: zhengxunli, ycllin, Jaime Liao
Change in v2:
- remove spinand Flash IDs which are sw-ecc requirement
cause sw-ecc function is not supported in u-boot
v1:
- Add spinand Flash IDs in drivers/mtd/nand/spi/macronix.c
Jaime Liao (1):
mtd: spinand: macronix: Add support for serial NAND flash
drivers/mtd/nand/spi/macronix.c | 46 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)
--
1.9.1
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2] mtd: spinand: macronix: Add support for serial NAND flash
2021-06-07 8:19 Jaime Liao
@ 2021-06-07 8:19 ` Jaime Liao
2021-06-24 6:12 ` Jagan Teki
0 siblings, 1 reply; 7+ messages in thread
From: Jaime Liao @ 2021-06-07 8:19 UTC (permalink / raw)
To: u-boot, jagan, vigneshr, miquel.raynal; +Cc: zhengxunli, ycllin, Jaime Liao
Macronix NAND Flash devices are available in different configurations
and densities.
MX"35" means SPI NAND
MX35"UF" , UF meands 1.8V
MX35LF"2G" , 2G means 2Gbits
MX35LF2G"E4" , E4 means internal ECC and Quad I/O(x4)
MX35UF4GE4AD/MX35UF2GE4AD/MX35UF1GE4AD are 1.8V 4G/2Gbit serial
NAND flash device with 8-bit on-die ECC
https://www.mxic.com.tw/Lists/Datasheet/Attachments/7983/MX35UF4GE4AD,%201.8V,%204Gb,%20v0.00.pdf
MX35UF2GE4AC/MX35UF1GE4AC are 1.8V 2G/1Gbit serial
NAND flash device with 8-bit on-die ECC
https://www.mxic.com.tw/Lists/Datasheet/Attachments/7974/MX35UF2GE4AC,%201.8V,%202Gb,%20v1.0.pdf
Validated via normal(default) and QUAD mode by read, erase, read back,
on Xilinx Zynq PicoZed FPGA board which included Macronix
SPI Host(drivers/spi/spi-mxic.c).
Signed-off-by: Jaime Liao <jaimeliao@mxic.com.tw>
---
drivers/mtd/nand/spi/macronix.c | 46 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)
diff --git a/drivers/mtd/nand/spi/macronix.c b/drivers/mtd/nand/spi/macronix.c
index 215f09a..f4a8e81 100644
--- a/drivers/mtd/nand/spi/macronix.c
+++ b/drivers/mtd/nand/spi/macronix.c
@@ -114,6 +114,52 @@ static const struct spinand_info macronix_spinand_table[] = {
&update_cache_variants),
SPINAND_HAS_QE_BIT,
SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout, NULL)),
+ SPINAND_INFO("MX35UF4GE4AD", 0xb7,
+ NAND_MEMORG(1, 4096, 256, 64, 2048, 1, 1, 1),
+ NAND_ECCREQ(8, 512),
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
+ &write_cache_variants,
+ &update_cache_variants),
+ SPINAND_HAS_QE_BIT,
+ SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,
+ mx35lf1ge4ab_ecc_get_status)),
+ SPINAND_INFO("MX35UF2GE4AD", 0xa6,
+ NAND_MEMORG(1, 2048, 128, 64, 2048, 1, 1, 1),
+ NAND_ECCREQ(8, 512),
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
+ &write_cache_variants,
+ &update_cache_variants),
+ SPINAND_HAS_QE_BIT,
+ SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,
+ mx35lf1ge4ab_ecc_get_status)),
+ SPINAND_INFO("MX35UF2GE4AC", 0xa2,
+ NAND_MEMORG(1, 2048, 64, 64, 2048, 1, 1, 1),
+ NAND_ECCREQ(4, 512),
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
+ &write_cache_variants,
+ &update_cache_variants),
+ SPINAND_HAS_QE_BIT,
+ SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,
+ mx35lf1ge4ab_ecc_get_status)),
+ SPINAND_INFO("MX35UF1GE4AD", 0x96,
+ NAND_MEMORG(1, 2048, 128, 64, 1024, 1, 1, 1),
+ NAND_ECCREQ(8, 512),
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
+ &write_cache_variants,
+ &update_cache_variants),
+ SPINAND_HAS_QE_BIT,
+ SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,
+ mx35lf1ge4ab_ecc_get_status)),
+ SPINAND_INFO("MX35UF1GE4AC", 0x92,
+ NAND_MEMORG(1, 2048, 64, 64, 1024, 1, 1, 1),
+ NAND_ECCREQ(4, 512),
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
+ &write_cache_variants,
+ &update_cache_variants),
+ SPINAND_HAS_QE_BIT,
+ SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,
+ mx35lf1ge4ab_ecc_get_status)),
+
};
static int macronix_spinand_detect(struct spinand_device *spinand)
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread* Re: [PATCH v2] mtd: spinand: macronix: Add support for serial NAND flash
2021-06-07 8:19 ` Jaime Liao
@ 2021-06-24 6:12 ` Jagan Teki
0 siblings, 0 replies; 7+ messages in thread
From: Jagan Teki @ 2021-06-24 6:12 UTC (permalink / raw)
To: Jaime Liao; +Cc: U-Boot-Denx, Vignesh R, Miquel Raynal, zhengxunli, ycllin
On Mon, Jun 7, 2021 at 1:47 PM Jaime Liao <jaimeliao@mxic.com.tw> wrote:
>
> Macronix NAND Flash devices are available in different configurations
> and densities.
>
> MX"35" means SPI NAND
> MX35"UF" , UF meands 1.8V
> MX35LF"2G" , 2G means 2Gbits
> MX35LF2G"E4" , E4 means internal ECC and Quad I/O(x4)
>
> MX35UF4GE4AD/MX35UF2GE4AD/MX35UF1GE4AD are 1.8V 4G/2Gbit serial
> NAND flash device with 8-bit on-die ECC
> https://www.mxic.com.tw/Lists/Datasheet/Attachments/7983/MX35UF4GE4AD,%201.8V,%204Gb,%20v0.00.pdf
>
> MX35UF2GE4AC/MX35UF1GE4AC are 1.8V 2G/1Gbit serial
> NAND flash device with 8-bit on-die ECC
> https://www.mxic.com.tw/Lists/Datasheet/Attachments/7974/MX35UF2GE4AC,%201.8V,%202Gb,%20v1.0.pdf
>
> Validated via normal(default) and QUAD mode by read, erase, read back,
> on Xilinx Zynq PicoZed FPGA board which included Macronix
> SPI Host(drivers/spi/spi-mxic.c).
>
> Signed-off-by: Jaime Liao <jaimeliao@mxic.com.tw>
> ---
Applied to u-boot-spi/master
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2024-06-12 14:45 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-05 5:48 [PATCH v2] mtd: spinand: macronix: Add support for serial NAND flash Cheng Ming Lin
2024-06-05 5:48 ` Cheng Ming Lin
2024-06-12 14:45 ` Greg KH
2024-06-12 14:45 ` Greg KH
-- strict thread matches above, loose matches on Subject: below --
2021-06-07 8:19 Jaime Liao
2021-06-07 8:19 ` Jaime Liao
2021-06-24 6:12 ` Jagan Teki
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.