* [PATCH] mtd: spi-nor: macronix: enable dual and quad read for MX25U25635F
@ 2024-10-24 11:40 Parth Pancholi
2024-10-29 7:33 ` Tudor Ambarus
0 siblings, 1 reply; 3+ messages in thread
From: Parth Pancholi @ 2024-10-24 11:40 UTC (permalink / raw)
To: Tudor Ambarus, Pratyush Yadav, Michael Walle, Miquel Raynal,
Richard Weinberger, Vignesh Raghavendra
Cc: Parth Pancholi, linux-mtd, linux-kernel
From: Parth Pancholi <parth.pancholi@toradex.com>
The MX25U25635F supports dual and quad read operations. Set the
corresponding flags to enable these features in accordance with
the hardware capabilities. This change also enables dual and quad
read operations on the MX25U25645G, which shares the same ID and
has a superset of the functionality provided by the MX25U25635F.
Link: https://www.macronix.com/Lists/Datasheet/Attachments/8663/MX25U25635F,%201.8V,%20256Mb,%20v1.5.pdf
Signed-off-by: Parth Pancholi <parth.pancholi@toradex.com>
---
drivers/mtd/spi-nor/macronix.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/mtd/spi-nor/macronix.c b/drivers/mtd/spi-nor/macronix.c
index ea6be95e75a5..be55558c8ad0 100644
--- a/drivers/mtd/spi-nor/macronix.c
+++ b/drivers/mtd/spi-nor/macronix.c
@@ -129,7 +129,7 @@ static const struct flash_info macronix_nor_parts[] = {
.id = SNOR_ID(0xc2, 0x25, 0x39),
.name = "mx25u25635f",
.size = SZ_32M,
- .no_sfdp_flags = SECT_4K,
+ .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
.fixup_flags = SPI_NOR_4B_OPCODES,
}, {
.id = SNOR_ID(0xc2, 0x25, 0x3a),
--
2.34.1
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [PATCH] mtd: spi-nor: macronix: enable dual and quad read for MX25U25635F
2024-10-24 11:40 [PATCH] mtd: spi-nor: macronix: enable dual and quad read for MX25U25635F Parth Pancholi
@ 2024-10-29 7:33 ` Tudor Ambarus
2024-11-04 15:19 ` Parth Pancholi
0 siblings, 1 reply; 3+ messages in thread
From: Tudor Ambarus @ 2024-10-29 7:33 UTC (permalink / raw)
To: Parth Pancholi, Pratyush Yadav, Michael Walle, Miquel Raynal,
Richard Weinberger, Vignesh Raghavendra
Cc: Parth Pancholi, linux-mtd, linux-kernel
On 10/24/24 12:40 PM, Parth Pancholi wrote:
> From: Parth Pancholi <parth.pancholi@toradex.com>
>
> The MX25U25635F supports dual and quad read operations. Set the
> corresponding flags to enable these features in accordance with
> the hardware capabilities. This change also enables dual and quad
> read operations on the MX25U25645G, which shares the same ID and
> has a superset of the functionality provided by the MX25U25635F.
>
> Link: https://www.macronix.com/Lists/Datasheet/Attachments/8663/MX25U25635F,%201.8V,%20256Mb,%20v1.5.pdf
Looks like the flash defines SFDP tables "Table 13. Parameter Table (0):
JEDEC Flash Parameter Tables".
We have some minimum testing requirements, please see them on
https://docs.kernel.org/driver-api/mtd/spi-nor.html
> Signed-off-by: Parth Pancholi <parth.pancholi@toradex.com>
> ---
> drivers/mtd/spi-nor/macronix.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/mtd/spi-nor/macronix.c b/drivers/mtd/spi-nor/macronix.c
> index ea6be95e75a5..be55558c8ad0 100644
> --- a/drivers/mtd/spi-nor/macronix.c
> +++ b/drivers/mtd/spi-nor/macronix.c
> @@ -129,7 +129,7 @@ static const struct flash_info macronix_nor_parts[] = {
> .id = SNOR_ID(0xc2, 0x25, 0x39),
> .name = "mx25u25635f",
> .size = SZ_32M,
if we want to switch to SFDP initialized params then we can remove the size
> - .no_sfdp_flags = SECT_4K,
> + .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
and this line as well.
> .fixup_flags = SPI_NOR_4B_OPCODES,
If the flash defines the 4bait table (I don't see it in datasheet
though), then this line as well. We may remove the entire entry and rely
solely on the generic flash driver.
> }, {
> .id = SNOR_ID(0xc2, 0x25, 0x3a),
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH] mtd: spi-nor: macronix: enable dual and quad read for MX25U25635F
2024-10-29 7:33 ` Tudor Ambarus
@ 2024-11-04 15:19 ` Parth Pancholi
0 siblings, 0 replies; 3+ messages in thread
From: Parth Pancholi @ 2024-11-04 15:19 UTC (permalink / raw)
To: Tudor Ambarus, Pratyush Yadav, Michael Walle, Miquel Raynal,
Richard Weinberger, Vignesh Raghavendra
Cc: Parth Pancholi, linux-mtd, linux-kernel
On Tue, Oct 29, 2024 at 07:33:01AM +0000, Tudor Ambarus wrote:
>
>
> On 10/24/24 12:40 PM, Parth Pancholi wrote:
> > From: Parth Pancholi <parth.pancholi@toradex.com>
> >
> > The MX25U25635F supports dual and quad read operations. Set the
> > corresponding flags to enable these features in accordance with
> > the hardware capabilities. This change also enables dual and quad
> > read operations on the MX25U25645G, which shares the same ID and
> > has a superset of the functionality provided by the MX25U25635F.
> >
> > Link: https://www.macronix.com/Lists/Datasheet/Attachments/8663/MX25U25635F,%201.8V,%20256Mb,%20v1.5.pdf
>
> Looks like the flash defines SFDP tables "Table 13. Parameter Table (0):
> JEDEC Flash Parameter Tables".
>
> We have some minimum testing requirements, please see them on
> https://docs.kernel.org/driver-api/mtd/spi-nor.html
>
> > Signed-off-by: Parth Pancholi <parth.pancholi@toradex.com>
> > ---
> > drivers/mtd/spi-nor/macronix.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/mtd/spi-nor/macronix.c b/drivers/mtd/spi-nor/macronix.c
> > index ea6be95e75a5..be55558c8ad0 100644
> > --- a/drivers/mtd/spi-nor/macronix.c
> > +++ b/drivers/mtd/spi-nor/macronix.c
> > @@ -129,7 +129,7 @@ static const struct flash_info macronix_nor_parts[] = {
> > .id = SNOR_ID(0xc2, 0x25, 0x39),
> > .name = "mx25u25635f",
> > .size = SZ_32M,
>
> if we want to switch to SFDP initialized params then we can remove the size
>
> > - .no_sfdp_flags = SECT_4K,
> > + .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
>
> and this line as well.
>
> > .fixup_flags = SPI_NOR_4B_OPCODES,
>
> If the flash defines the 4bait table (I don't see it in datasheet
> though), then this line as well. We may remove the entire entry and rely
> solely on the generic flash driver.
>
> > }, {
> > .id = SNOR_ID(0xc2, 0x25, 0x3a),
Thank you for the review, Tudor.
I performed a quick test on the mx25u25645g (sharing the same ID as
mx25u25635f) connected at TI AM69 device’s QSPI, removing the
mx25u25635f entry to rely exclusively on the generic flash driver
as suggested. So far, I did not see issue. I’ll perform additional
tests and submit v2 with the mx25u25635f entry removed, along with
minimal test logs.
Parth P
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-11-04 15:20 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-24 11:40 [PATCH] mtd: spi-nor: macronix: enable dual and quad read for MX25U25635F Parth Pancholi
2024-10-29 7:33 ` Tudor Ambarus
2024-11-04 15:19 ` Parth Pancholi
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox