linux-mtd.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/2] Add Renesas AT25QL128A serial nor flash
@ 2022-07-15 10:57 Biju Das
  2022-07-15 10:57 ` [PATCH v2 1/2] mtd: spi-nor: Add support for SNOR_ID3 macro Biju Das
  2022-07-15 10:57 ` [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor flash Biju Das
  0 siblings, 2 replies; 14+ messages in thread
From: Biju Das @ 2022-07-15 10:57 UTC (permalink / raw)
  To: Tudor Ambarus, Pratyush Yadav, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra
  Cc: Biju Das, Michael Walle, Nicolas Ferre, Alexandre Belloni,
	Claudiu Beznea, linux-mtd, linux-arm-kernel, Geert Uytterhoeven,
	Chris Paterson, Biju Das, Prabhakar Mahadev Lad,
	linux-renesas-soc

This patch series aims to add support for Renesas AT25QL128A serial nor flash

Details of flash chip can be found here [1]

[1] https://www.dialog-semiconductor.com/sites/default/files/2022-04/DS-AT25QL128A-129F-022022.pdf

v1->v2:
 * Add support for SNOR_ID3 macro
 * Added flash definitions into Atmel table.

RFC->v1:
 * Moved the flash definitions to atmel.c
 * Remove macro related to locking as it is untested.
 * Replaced INFO macro with SNOR_ID3
 
RFC:
 * https://patchwork.kernel.org/project/linux-renesas-soc/patch/20220501185512.51158-1-biju.das.jz@bp.renesas.com/

Biju Das (2):
  mtd: spi-nor: add support for SNOR_ID3 macro
  mtd: spi-nor: Add Renesas AT25QL128A serial nor flash

 drivers/mtd/spi-nor/atmel.c | 1 +
 drivers/mtd/spi-nor/core.h  | 9 +++++++++
 2 files changed, 10 insertions(+)

-- 
2.25.1


______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH v2 1/2] mtd: spi-nor: Add support for SNOR_ID3 macro
  2022-07-15 10:57 [PATCH v2 0/2] Add Renesas AT25QL128A serial nor flash Biju Das
@ 2022-07-15 10:57 ` Biju Das
  2022-07-15 11:57   ` Michael Walle
  2022-07-15 10:57 ` [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor flash Biju Das
  1 sibling, 1 reply; 14+ messages in thread
From: Biju Das @ 2022-07-15 10:57 UTC (permalink / raw)
  To: Tudor Ambarus, Pratyush Yadav, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra
  Cc: Biju Das, Michael Walle, linux-mtd, Geert Uytterhoeven,
	Chris Paterson, Biju Das, Prabhakar Mahadev Lad,
	linux-renesas-soc

Add SNOR_ID3 macro to get chip info by parsing sfdp.

Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
---
v2:
 * New patch
---
 drivers/mtd/spi-nor/core.h | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/drivers/mtd/spi-nor/core.h b/drivers/mtd/spi-nor/core.h
index 61886868cd02..153c1a0b2eda 100644
--- a/drivers/mtd/spi-nor/core.h
+++ b/drivers/mtd/spi-nor/core.h
@@ -548,6 +548,15 @@ struct flash_info {
 		.n_sectors = (_n_sectors),				\
 		.page_size = 256,					\
 
+#define SNOR_ID3(_jedec_id)						\
+	.id = {								\
+		((_jedec_id) >> 16) & 0xff,				\
+		((_jedec_id) >> 8) & 0xff,				\
+		(_jedec_id) & 0xff,					\
+	},								\
+	.id_len = 3,							\
+	.parse_sfdp = true,						\
+
 #define CAT25_INFO(_sector_size, _n_sectors, _page_size, _addr_width)	\
 		.sector_size = (_sector_size),				\
 		.n_sectors = (_n_sectors),				\
-- 
2.25.1


______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor flash
  2022-07-15 10:57 [PATCH v2 0/2] Add Renesas AT25QL128A serial nor flash Biju Das
  2022-07-15 10:57 ` [PATCH v2 1/2] mtd: spi-nor: Add support for SNOR_ID3 macro Biju Das
@ 2022-07-15 10:57 ` Biju Das
  2022-07-15 11:55   ` Michael Walle
  2022-07-21  8:28   ` Tudor.Ambarus
  1 sibling, 2 replies; 14+ messages in thread
From: Biju Das @ 2022-07-15 10:57 UTC (permalink / raw)
  To: Tudor Ambarus, Pratyush Yadav, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra
  Cc: Biju Das, Michael Walle, Nicolas Ferre, Alexandre Belloni,
	Claudiu Beznea, linux-mtd, linux-arm-kernel, Geert Uytterhoeven,
	Chris Paterson, Biju Das, Prabhakar Mahadev Lad,
	linux-renesas-soc

Add support for Renesas AT25QL128A serial nor flash.
Details of flash chip can be found here [1]

[1] https://www.dialog-semiconductor.com/sites/default/files/2022-04/DS-AT25QL128A-129F-022022.pdf

Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
---
$ xxd -p sfdp 
53464450060101ff00060110300000ff1f00010280000001ffffffffffff
ffffffffffffffffffffffffffffffffffffe520f1ffffffff0744eb086b
083b80bbfeffffffffff00ffffff42eb0c200f5210d800ff3362d5008429
01ceeca1073d7a757a75f7a2d55c19f61cffe810c080ffffffffffffffff
ffffffffffffffff501650190000ffff

$ md5sum /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/sfdp
23e3ec56b5b8f986d0488ba4727239dd  /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/sfdp
$ cat /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/jedec_id
1f4218
$ cat /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/partname
at25ql128a
$ cat /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/manufacturer
atmel
v2->v1:
 * Added flash definitions into Atmel table.
RFC->v1:
 * Moved the flash definitions to atmel.c
 * Remove macro related to locking as it is untested.
 * Replaced INFO macro with SNOR_ID3
 
RFC:
 * https://patchwork.kernel.org/project/linux-renesas-soc/patch/20220501185512.51158-1-biju.das.jz@bp.renesas.com/
---
 drivers/mtd/spi-nor/atmel.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/mtd/spi-nor/atmel.c b/drivers/mtd/spi-nor/atmel.c
index 656dd80a0be7..80c24d138b27 100644
--- a/drivers/mtd/spi-nor/atmel.c
+++ b/drivers/mtd/spi-nor/atmel.c
@@ -186,6 +186,7 @@ static const struct flash_info atmel_nor_parts[] = {
 		.fixups = &atmel_nor_global_protection_fixups },
 	{ "at25sl321",	INFO(0x1f4216, 0, 64 * 1024, 64)
 		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
+	{ "at25ql128a", SNOR_ID3(0x1f4218) },
 	{ "at26f004",   INFO(0x1f0400, 0, 64 * 1024,  8)
 		NO_SFDP_FLAGS(SECT_4K) },
 	{ "at26df081a", INFO(0x1f4501, 0, 64 * 1024, 16)
-- 
2.25.1


______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor flash
  2022-07-15 10:57 ` [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor flash Biju Das
@ 2022-07-15 11:55   ` Michael Walle
  2022-07-19  8:53     ` Pratyush Yadav
  2022-07-21  8:28   ` Tudor.Ambarus
  1 sibling, 1 reply; 14+ messages in thread
From: Michael Walle @ 2022-07-15 11:55 UTC (permalink / raw)
  To: Biju Das
  Cc: Tudor Ambarus, Pratyush Yadav, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra, Nicolas Ferre, Alexandre Belloni,
	Claudiu Beznea, linux-mtd, linux-arm-kernel, Geert Uytterhoeven,
	Chris Paterson, Biju Das, Prabhakar Mahadev Lad,
	linux-renesas-soc

Am 2022-07-15 12:57, schrieb Biju Das:
> Add support for Renesas AT25QL128A serial nor flash.
> Details of flash chip can be found here [1]
> 
> [1] 
> https://www.dialog-semiconductor.com/sites/default/files/2022-04/DS-AT25QL128A-129F-022022.pdf
> 
> Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>

Thanks!

Reviewed-by: Michael Walle <michael@walle.cc>

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v2 1/2] mtd: spi-nor: Add support for SNOR_ID3 macro
  2022-07-15 10:57 ` [PATCH v2 1/2] mtd: spi-nor: Add support for SNOR_ID3 macro Biju Das
@ 2022-07-15 11:57   ` Michael Walle
  2022-07-18  5:53     ` Biju Das
  0 siblings, 1 reply; 14+ messages in thread
From: Michael Walle @ 2022-07-15 11:57 UTC (permalink / raw)
  To: Biju Das
  Cc: Tudor Ambarus, Pratyush Yadav, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra, linux-mtd, Geert Uytterhoeven,
	Chris Paterson, Biju Das, Prabhakar Mahadev Lad,
	linux-renesas-soc

Am 2022-07-15 12:57, schrieb Biju Das:
> Add SNOR_ID3 macro to get chip info by parsing sfdp.

This is the same as [1]. I'd expect that patch 2/2 will go
in as soon as [1] is merged.

-michael

[1] 
https://lore.kernel.org/linux-mtd/20220510140232.3519184-2-michael@walle.cc/

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* RE: [PATCH v2 1/2] mtd: spi-nor: Add support for SNOR_ID3 macro
  2022-07-15 11:57   ` Michael Walle
@ 2022-07-18  5:53     ` Biju Das
  0 siblings, 0 replies; 14+ messages in thread
From: Biju Das @ 2022-07-18  5:53 UTC (permalink / raw)
  To: Michael Walle
  Cc: Tudor Ambarus, Pratyush Yadav, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra, linux-mtd, Geert Uytterhoeven,
	Chris Paterson, Biju Das, Prabhakar Mahadev Lad,
	linux-renesas-soc

Hi Michael,

Thanks for the feedback.

> Subject: Re: [PATCH v2 1/2] mtd: spi-nor: Add support for SNOR_ID3 macro
> 
> Am 2022-07-15 12:57, schrieb Biju Das:
> > Add SNOR_ID3 macro to get chip info by parsing sfdp.
> 
> This is the same as [1]. I'd expect that patch 2/2 will go in as soon as
> [1] is merged.

> [1] https://lore.kernel.org/linux-mtd/20220715121934.5ZgUHBT77rYsJx0CTx_IWZaI7IBPvFynsy-xSQS8fQY@z/

There are 2 users(siliconkaiser sk25lp128 chip and Renesas Renesas AT25QL128A)
already tested this macro. Hopefully, this macro will get merged to mainline
soon.

Cheers,
Biju

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor flash
  2022-07-15 11:55   ` Michael Walle
@ 2022-07-19  8:53     ` Pratyush Yadav
  0 siblings, 0 replies; 14+ messages in thread
From: Pratyush Yadav @ 2022-07-19  8:53 UTC (permalink / raw)
  To: Michael Walle
  Cc: Biju Das, Tudor Ambarus, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra, Nicolas Ferre, Alexandre Belloni,
	Claudiu Beznea, linux-mtd, linux-arm-kernel, Geert Uytterhoeven,
	Chris Paterson, Biju Das, Prabhakar Mahadev Lad,
	linux-renesas-soc

On 15/07/22 01:55PM, Michael Walle wrote:
> Am 2022-07-15 12:57, schrieb Biju Das:
> > Add support for Renesas AT25QL128A serial nor flash.
> > Details of flash chip can be found here [1]
> > 
> > [1] https://www.dialog-semiconductor.com/sites/default/files/2022-04/DS-AT25QL128A-129F-022022.pdf
> > 
> > Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
> 
> Thanks!
> 
> Reviewed-by: Michael Walle <michael@walle.cc>

Our purely SFDP based parser seems to be working well.

Acked-by: Pratyush Yadav <p.yadav@ti.com>

-- 
Regards,
Pratyush Yadav
Texas Instruments Inc.

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor flash
  2022-07-15 10:57 ` [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor flash Biju Das
  2022-07-15 11:55   ` Michael Walle
@ 2022-07-21  8:28   ` Tudor.Ambarus
  2022-07-21  8:48     ` Biju Das
  2022-07-21  9:23     ` Biju Das
  1 sibling, 2 replies; 14+ messages in thread
From: Tudor.Ambarus @ 2022-07-21  8:28 UTC (permalink / raw)
  To: biju.das.jz, p.yadav, miquel.raynal, richard, vigneshr
  Cc: michael, Nicolas.Ferre, alexandre.belloni, Claudiu.Beznea,
	linux-mtd, linux-arm-kernel, geert+renesas, Chris.Paterson2,
	biju.das, prabhakar.mahadev-lad.rj, linux-renesas-soc

On 7/15/22 13:57, Biju Das wrote:

Hi, Biju!

> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> Add support for Renesas AT25QL128A serial nor flash.
> Details of flash chip can be found here [1]
> 
> [1] https://www.dialog-semiconductor.com/sites/default/files/2022-04/DS-AT25QL128A-129F-022022.pdf
> 
> Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
> ---
> $ xxd -p sfdp
> 53464450060101ff00060110300000ff1f00010280000001ffffffffffff
> ffffffffffffffffffffffffffffffffffffe520f1ffffffff0744eb086b
> 083b80bbfeffffffffff00ffffff42eb0c200f5210d800ff3362d5008429
> 01ceeca1073d7a757a75f7a2d55c19f61cffe810c080ffffffffffffffff
> ffffffffffffffff501650190000ffff
> 
> $ md5sum /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/sfdp
> 23e3ec56b5b8f986d0488ba4727239dd  /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/sfdp
> $ cat /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/jedec_id
> 1f4218
> $ cat /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/partname
> at25ql128a
> $ cat /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/manufacturer
> atmel
> v2->v1:
>  * Added flash definitions into Atmel table.
> RFC->v1:
>  * Moved the flash definitions to atmel.c
>  * Remove macro related to locking as it is untested.
>  * Replaced INFO macro with SNOR_ID3
> 
> RFC:
>  * https://patchwork.kernel.org/project/linux-renesas-soc/patch/20220501185512.51158-1-biju.das.jz@bp.renesas.com/
> ---
>  drivers/mtd/spi-nor/atmel.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/mtd/spi-nor/atmel.c b/drivers/mtd/spi-nor/atmel.c
> index 656dd80a0be7..80c24d138b27 100644
> --- a/drivers/mtd/spi-nor/atmel.c
> +++ b/drivers/mtd/spi-nor/atmel.c
> @@ -186,6 +186,7 @@ static const struct flash_info atmel_nor_parts[] = {
>                 .fixups = &atmel_nor_global_protection_fixups },
>         { "at25sl321",  INFO(0x1f4216, 0, 64 * 1024, 64)
>                 NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
> +       { "at25ql128a", SNOR_ID3(0x1f4218) },

As the flash is defined now, all its characteristics can be discovered by
parsing SFDP. So instead of adding a new flash_info entry in the already
big array that we have, I would like us to focus more on a generic flash
driver which acts as a backup when the flash is not found in the flash_info
array. We can discover the flash particularities by parsing SFDP and we can
probe the flash based on that. Michael has already suggested this, would you
please help review it?

https://lore.kernel.org/lkml/20220513133520.3945820-1-michael@walle.cc/
 
>         { "at26f004",   INFO(0x1f0400, 0, 64 * 1024,  8)
>                 NO_SFDP_FLAGS(SECT_4K) },
>         { "at26df081a", INFO(0x1f4501, 0, 64 * 1024, 16)
> --
> 2.25.1
> 

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* RE: [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor flash
  2022-07-21  8:28   ` Tudor.Ambarus
@ 2022-07-21  8:48     ` Biju Das
  2022-07-21  9:23     ` Biju Das
  1 sibling, 0 replies; 14+ messages in thread
From: Biju Das @ 2022-07-21  8:48 UTC (permalink / raw)
  To: Tudor.Ambarus, p.yadav, miquel.raynal, richard, vigneshr
  Cc: michael, Nicolas.Ferre, alexandre.belloni, Claudiu.Beznea,
	linux-mtd, linux-arm-kernel, geert+renesas, Chris Paterson,
	biju.das, Prabhakar Mahadev Lad, linux-renesas-soc

Hi Tudor.Ambarus,

> Subject: Re: [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor
> flash
> 
> On 7/15/22 13:57, Biju Das wrote:
> 
> Hi, Biju!
> 
> > EXTERNAL EMAIL: Do not click links or open attachments unless you know
> > the content is safe
> >
> > Add support for Renesas AT25QL128A serial nor flash.
> > Details of flash chip can be found here [1]
> >
> > [1]
> >
> > Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
> > ---
> > $ xxd -p sfdp
> > 53464450060101ff00060110300000ff1f00010280000001ffffffffffff
> > ffffffffffffffffffffffffffffffffffffe520f1ffffffff0744eb086b
> > 083b80bbfeffffffffff00ffffff42eb0c200f5210d800ff3362d5008429
> > 01ceeca1073d7a757a75f7a2d55c19f61cffe810c080ffffffffffffffff
> > ffffffffffffffff501650190000ffff
> >
> > $ md5sum
> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
> > .0/spi-nor/sfdp 23e3ec56b5b8f986d0488ba4727239dd
> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
> > .0/spi-nor/sfdp $ cat
> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
> > .0/spi-nor/jedec_id
> > 1f4218
> > $ cat
> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
> > .0/spi-nor/partname
> > at25ql128a
> > $ cat
> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
> > .0/spi-nor/manufacturer
> > atmel
> > v2->v1:
> >  * Added flash definitions into Atmel table.
> > RFC->v1:
> >  * Moved the flash definitions to atmel.c
> >  * Remove macro related to locking as it is untested.
> >  * Replaced INFO macro with SNOR_ID3
> >
> > RFC:
> >  *
> > ---
> >  drivers/mtd/spi-nor/atmel.c | 1 +
> >  1 file changed, 1 insertion(+)
> >
> > diff --git a/drivers/mtd/spi-nor/atmel.c b/drivers/mtd/spi-nor/atmel.c
> > index 656dd80a0be7..80c24d138b27 100644
> > --- a/drivers/mtd/spi-nor/atmel.c
> > +++ b/drivers/mtd/spi-nor/atmel.c
> > @@ -186,6 +186,7 @@ static const struct flash_info atmel_nor_parts[] = {
> >                 .fixups = &atmel_nor_global_protection_fixups },
> >         { "at25sl321",  INFO(0x1f4216, 0, 64 * 1024, 64)
> >                 NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
> > SPI_NOR_QUAD_READ) },
> > +       { "at25ql128a", SNOR_ID3(0x1f4218) },
> 
> As the flash is defined now, all its characteristics can be discovered by
> parsing SFDP. So instead of adding a new flash_info entry in the already big
> array that we have, I would like us to focus more on a generic flash driver
> which acts as a backup when the flash is not found in the flash_info array.
> We can discover the flash particularities by parsing SFDP and we can probe
> the flash based on that. Michael has already suggested this, would you
> please help review it?
> 

Sure, will review and test this patch series.

Cheers,
Biju

> 
> >         { "at26f004",   INFO(0x1f0400, 0, 64 * 1024,  8)
> >                 NO_SFDP_FLAGS(SECT_4K) },
> >         { "at26df081a", INFO(0x1f4501, 0, 64 * 1024, 16)
> > --
> > 2.25.1
> >


______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* RE: [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor flash
  2022-07-21  8:28   ` Tudor.Ambarus
  2022-07-21  8:48     ` Biju Das
@ 2022-07-21  9:23     ` Biju Das
  2022-07-21  9:39       ` Tudor.Ambarus
  1 sibling, 1 reply; 14+ messages in thread
From: Biju Das @ 2022-07-21  9:23 UTC (permalink / raw)
  To: Tudor.Ambarus, p.yadav, miquel.raynal, richard, vigneshr
  Cc: michael, Nicolas.Ferre, alexandre.belloni, Claudiu.Beznea,
	linux-mtd, linux-arm-kernel, geert+renesas, Chris Paterson,
	biju.das, Prabhakar Mahadev Lad, linux-renesas-soc

Hi Tudor Ambarus,

I have done quick test with these generic patches. Please find my observation
below.

> Subject: Re: [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor
> flash
> 
> On 7/15/22 13:57, Biju Das wrote:
> 
> Hi, Biju!
> 
> > EXTERNAL EMAIL: Do not click links or open attachments unless you know
> > the content is safe
> >
> > Add support for Renesas AT25QL128A serial nor flash.
> > Details of flash chip can be found here [1]
> >
> > [1]
> >
> > Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
> > ---
> > $ xxd -p sfdp
> > 53464450060101ff00060110300000ff1f00010280000001ffffffffffff
> > ffffffffffffffffffffffffffffffffffffe520f1ffffffff0744eb086b
> > 083b80bbfeffffffffff00ffffff42eb0c200f5210d800ff3362d5008429
> > 01ceeca1073d7a757a75f7a2d55c19f61cffe810c080ffffffffffffffff
> > ffffffffffffffff501650190000ffff
> >
> > $ md5sum
> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
> > .0/spi-nor/sfdp 23e3ec56b5b8f986d0488ba4727239dd
> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
> > .0/spi-nor/sfdp $ cat
> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
> > .0/spi-nor/jedec_id
> > 1f4218
> > $ cat
> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
> > .0/spi-nor/partname
> > at25ql128a
> > $ cat
> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
> > .0/spi-nor/manufacturer
> > atmel

With generic flash driver patches I get below results
----------------------------------------------------

xxd -p sfdp
53464450060101ff00060110300000ff1f00010280000001ffffffffffff
ffffffffffffffffffffffffffffffffffffe520f1ffffffff0744eb086b
083b80bbfeffffffffff00ffffff42eb0c200f5210d800ff3362d5008429
01ceeca1073d7a757a75f7a2d55c19f61cffe810c080ffffffffffffffff
ffffffffffffffff501650190000ffff

This result is same as above.

cat /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/jedec_id
1f42181f4218

This result is not matching 1f4218->1f42181f4218

root@smarc-rzg2ul:~# cat /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/partname
spi-nor-generic

This result is not matching at25ql128a-> spi-nor-generic

root@smarc-rzg2ul:~# cat /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/manufacturer
cat: /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/manufacturer: No such file or directory

This result is not matching atmel-> cat: /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/manufacturer: No such file or directory

How do we get proper partname/manufacturer details with generic flash driver?

Cheers,
Biju


> > v2->v1:
> >  * Added flash definitions into Atmel table.
> > RFC->v1:
> >  * Moved the flash definitions to atmel.c
> >  * Remove macro related to locking as it is untested.
> >  * Replaced INFO macro with SNOR_ID3
> >
> > RFC:
> >  *
> > ---
> >  drivers/mtd/spi-nor/atmel.c | 1 +
> >  1 file changed, 1 insertion(+)
> >
> > diff --git a/drivers/mtd/spi-nor/atmel.c b/drivers/mtd/spi-nor/atmel.c
> > index 656dd80a0be7..80c24d138b27 100644
> > --- a/drivers/mtd/spi-nor/atmel.c
> > +++ b/drivers/mtd/spi-nor/atmel.c
> > @@ -186,6 +186,7 @@ static const struct flash_info atmel_nor_parts[] = {
> >                 .fixups = &atmel_nor_global_protection_fixups },
> >         { "at25sl321",  INFO(0x1f4216, 0, 64 * 1024, 64)
> >                 NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
> > SPI_NOR_QUAD_READ) },
> > +       { "at25ql128a", SNOR_ID3(0x1f4218) },
> 
> As the flash is defined now, all its characteristics can be discovered by
> parsing SFDP. So instead of adding a new flash_info entry in the already big
> array that we have, I would like us to focus more on a generic flash driver
> which acts as a backup when the flash is not found in the flash_info array.
> We can discover the flash particularities by parsing SFDP and we can probe
> the flash based on that. Michael has already suggested this, would you
> please help review it?
> 
> 
> >         { "at26f004",   INFO(0x1f0400, 0, 64 * 1024,  8)
> >                 NO_SFDP_FLAGS(SECT_4K) },
> >         { "at26df081a", INFO(0x1f4501, 0, 64 * 1024, 16)
> > --
> > 2.25.1
> >


______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor flash
  2022-07-21  9:23     ` Biju Das
@ 2022-07-21  9:39       ` Tudor.Ambarus
  2022-07-21  9:43         ` Michael Walle
  2022-07-21  9:46         ` Biju Das
  0 siblings, 2 replies; 14+ messages in thread
From: Tudor.Ambarus @ 2022-07-21  9:39 UTC (permalink / raw)
  To: biju.das.jz, p.yadav, miquel.raynal, richard, vigneshr
  Cc: michael, Nicolas.Ferre, alexandre.belloni, Claudiu.Beznea,
	linux-mtd, linux-arm-kernel, geert+renesas, Chris.Paterson2,
	biju.das, prabhakar.mahadev-lad.rj, linux-renesas-soc

On 7/21/22 12:23, Biju Das wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> Hi Tudor Ambarus,
> 
> I have done quick test with these generic patches. Please find my observation
> below.

Thanks!

> 
>> Subject: Re: [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor
>> flash
>>
>> On 7/15/22 13:57, Biju Das wrote:
>>
>> Hi, Biju!
>>
>>> EXTERNAL EMAIL: Do not click links or open attachments unless you know
>>> the content is safe
>>>
>>> Add support for Renesas AT25QL128A serial nor flash.
>>> Details of flash chip can be found here [1]
>>>
>>> [1]
>>>
>>> Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
>>> ---
>>> $ xxd -p sfdp
>>> 53464450060101ff00060110300000ff1f00010280000001ffffffffffff
>>> ffffffffffffffffffffffffffffffffffffe520f1ffffffff0744eb086b
>>> 083b80bbfeffffffffff00ffffff42eb0c200f5210d800ff3362d5008429
>>> 01ceeca1073d7a757a75f7a2d55c19f61cffe810c080ffffffffffffffff
>>> ffffffffffffffff501650190000ffff
>>>
>>> $ md5sum
>>> /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
>>> .0/spi-nor/sfdp 23e3ec56b5b8f986d0488ba4727239dd
>>> /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
>>> .0/spi-nor/sfdp $ cat
>>> /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
>>> .0/spi-nor/jedec_id
>>> 1f4218
>>> $ cat
>>> /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
>>> .0/spi-nor/partname
>>> at25ql128a
>>> $ cat
>>> /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
>>> .0/spi-nor/manufacturer
>>> atmel
> 
> With generic flash driver patches I get below results
> ----------------------------------------------------
> 
> xxd -p sfdp
> 53464450060101ff00060110300000ff1f00010280000001ffffffffffff
> ffffffffffffffffffffffffffffffffffffe520f1ffffffff0744eb086b
> 083b80bbfeffffffffff00ffffff42eb0c200f5210d800ff3362d5008429
> 01ceeca1073d7a757a75f7a2d55c19f61cffe810c080ffffffffffffffff
> ffffffffffffffff501650190000ffff
> 
> This result is same as above.

ok, as expected.

> 
> cat /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/jedec_id
> 1f42181f4218
> 
> This result is not matching 1f4218->1f42181f4218

here it looks like the ID is sent twice.

> 
> root@smarc-rzg2ul:~# cat /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/partname
> spi-nor-generic
> 
> This result is not matching at25ql128a-> spi-nor-generic

right, as expected

> 
> root@smarc-rzg2ul:~# cat /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/manufacturer
> cat: /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/manufacturer: No such file or directory
> 
> This result is not matching atmel-> cat: /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/manufacturer: No such file or directory

here we could introduce a generic name as well.

> 
> How do we get proper partname/manufacturer details with generic flash driver?

You don't, as it is you get just generic names like generic-spi-nor
and generic-manufacturer. Why do you find the flash/manufacturer
names important?

ta
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor flash
  2022-07-21  9:39       ` Tudor.Ambarus
@ 2022-07-21  9:43         ` Michael Walle
  2022-07-21  9:46         ` Biju Das
  1 sibling, 0 replies; 14+ messages in thread
From: Michael Walle @ 2022-07-21  9:43 UTC (permalink / raw)
  To: Tudor.Ambarus
  Cc: biju.das.jz, p.yadav, miquel.raynal, richard, vigneshr,
	Nicolas.Ferre, alexandre.belloni, Claudiu.Beznea, linux-mtd,
	linux-arm-kernel, geert+renesas, Chris.Paterson2, biju.das,
	prabhakar.mahadev-lad.rj, linux-renesas-soc

Am 2022-07-21 11:39, schrieb Tudor.Ambarus@microchip.com:
>> cat 
>> /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1.0/spi-nor/jedec_id
>> 1f42181f4218
>> 
>> This result is not matching 1f4218->1f42181f4218
> 
> here it looks like the ID is sent twice.

That is expected. We don't know how long the id is so
SPI_NOR_MAX_ID_LEN bytes are read for now.
Some flashes will send additional information, some don't and
just repeat the pattern.

It's up to the userspace to interpret that.

-michael

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* RE: [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor flash
  2022-07-21  9:39       ` Tudor.Ambarus
  2022-07-21  9:43         ` Michael Walle
@ 2022-07-21  9:46         ` Biju Das
  2022-07-21 10:00           ` Michael Walle
  1 sibling, 1 reply; 14+ messages in thread
From: Biju Das @ 2022-07-21  9:46 UTC (permalink / raw)
  To: Tudor.Ambarus, p.yadav, miquel.raynal, richard, vigneshr
  Cc: michael, Nicolas.Ferre, alexandre.belloni, Claudiu.Beznea,
	linux-mtd, linux-arm-kernel, geert+renesas, Chris Paterson,
	biju.das, Prabhakar Mahadev Lad, linux-renesas-soc

Hi Tudor Ambarus,

Thanks for the feedback.

> Subject: Re: [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor
> flash
> 
> On 7/21/22 12:23, Biju Das wrote:
> > EXTERNAL EMAIL: Do not click links or open attachments unless you know
> > the content is safe
> >
> > Hi Tudor Ambarus,
> >
> > I have done quick test with these generic patches. Please find my
> > observation below.
> 
> Thanks!
> 
> >
> >> Subject: Re: [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A
> >> serial nor flash
> >>
> >> On 7/15/22 13:57, Biju Das wrote:
> >>
> >> Hi, Biju!
> >>
> >>> EXTERNAL EMAIL: Do not click links or open attachments unless you
> >>> know the content is safe
> >>>
> >>> Add support for Renesas AT25QL128A serial nor flash.
> >>> Details of flash chip can be found here [1]
> >>>
> >>> [1]
> >>>
> >>> Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
> >>> ---
> >>> $ xxd -p sfdp
> >>> 53464450060101ff00060110300000ff1f00010280000001ffffffffffff
> >>> ffffffffffffffffffffffffffffffffffffe520f1ffffffff0744eb086b
> >>> 083b80bbfeffffffffff00ffffff42eb0c200f5210d800ff3362d5008429
> >>> 01ceeca1073d7a757a75f7a2d55c19f61cffe810c080ffffffffffffffff
> >>> ffffffffffffffff501650190000ffff
> >>>
> >>> $ md5sum
> >>> /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/sp
> >>> i1 .0/spi-nor/sfdp 23e3ec56b5b8f986d0488ba4727239dd
> >>> /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/sp
> >>> i1
> >>> .0/spi-nor/sfdp $ cat
> >>> /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/sp
> >>> i1
> >>> .0/spi-nor/jedec_id
> >>> 1f4218
> >>> $ cat
> >>> /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/sp
> >>> i1
> >>> .0/spi-nor/partname
> >>> at25ql128a
> >>> $ cat
> >>> /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/sp
> >>> i1
> >>> .0/spi-nor/manufacturer
> >>> atmel
> >
> > With generic flash driver patches I get below results
> > ----------------------------------------------------
> >
> > xxd -p sfdp
> > 53464450060101ff00060110300000ff1f00010280000001ffffffffffff
> > ffffffffffffffffffffffffffffffffffffe520f1ffffffff0744eb086b
> > 083b80bbfeffffffffff00ffffff42eb0c200f5210d800ff3362d5008429
> > 01ceeca1073d7a757a75f7a2d55c19f61cffe810c080ffffffffffffffff
> > ffffffffffffffff501650190000ffff
> >
> > This result is same as above.
> 
> ok, as expected.
> 
> >
> > cat
> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
> > .0/spi-nor/jedec_id
> > 1f42181f4218
> >
> > This result is not matching 1f4218->1f42181f4218
> 
> here it looks like the ID is sent twice.

OK.

> 
> >
> > root@smarc-rzg2ul:~# cat
> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
> > .0/spi-nor/partname
> > spi-nor-generic
> >
> > This result is not matching at25ql128a-> spi-nor-generic
> 
> right, as expected
> 
> >
> > root@smarc-rzg2ul:~# cat
> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
> > .0/spi-nor/manufacturer
> > cat:
> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
> > .0/spi-nor/manufacturer: No such file or directory
> >
> > This result is not matching atmel-> cat:
> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
> > .0/spi-nor/manufacturer: No such file or directory
> 
> here we could introduce a generic name as well.

OK.

Michael: Do you have any plan to add generic name for manufacturer
as completeness?

> 
> >
> > How do we get proper partname/manufacturer details with generic flash
> driver?
> 
> You don't, as it is you get just generic names like generic-spi-nor and
> generic-manufacturer. Why do you find the flash/manufacturer names
> important?

Ok, currently my test script expects proper partname/manufacturer.
Will change it to generic one.

Cheers,
Biju
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor flash
  2022-07-21  9:46         ` Biju Das
@ 2022-07-21 10:00           ` Michael Walle
  0 siblings, 0 replies; 14+ messages in thread
From: Michael Walle @ 2022-07-21 10:00 UTC (permalink / raw)
  To: Biju Das
  Cc: Tudor.Ambarus, p.yadav, miquel.raynal, richard, vigneshr,
	Nicolas.Ferre, alexandre.belloni, Claudiu.Beznea, linux-mtd,
	linux-arm-kernel, geert+renesas, Chris Paterson, biju.das,
	Prabhakar Mahadev Lad, linux-renesas-soc

Am 2022-07-21 11:46, schrieb Biju Das:

>> > root@smarc-rzg2ul:~#

nice a smarc board :)


>> >
>> > root@smarc-rzg2ul:~# cat
>> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
>> > .0/spi-nor/manufacturer
>> > cat:
>> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
>> > .0/spi-nor/manufacturer: No such file or directory
>> >
>> > This result is not matching atmel-> cat:
>> > /sys/devices/platform/soc/10060000.spi/rpc-if-spi/spi_master/spi1/spi1
>> > .0/spi-nor/manufacturer: No such file or directory
>> 
>> here we could introduce a generic name as well.
> 
> OK.
> 
> Michael: Do you have any plan to add generic name for manufacturer
> as completeness?

Why would we need that one? There is no manufacturer. So I don't
see why we should add a fake one. The partname is debatable, too.
IMHO if we really want to get rid of the "dummy" tables in the kernel,
the userspace (mtdutils for example) could parse the jedec id and
sfdp and find the manufacturer and partnumer. But TBH, I don't know
if that is really an important information.

Implementation wise, right now, it's quite a hack how the
manufacturer is set. It gets already set early in
spi_nor_match_name(), while the actual flash info will get set
later in the call chain.

-michael

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2022-07-21 10:07 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-15 10:57 [PATCH v2 0/2] Add Renesas AT25QL128A serial nor flash Biju Das
2022-07-15 10:57 ` [PATCH v2 1/2] mtd: spi-nor: Add support for SNOR_ID3 macro Biju Das
2022-07-15 11:57   ` Michael Walle
2022-07-18  5:53     ` Biju Das
2022-07-15 10:57 ` [PATCH v2 2/2] mtd: spi-nor: Add Renesas AT25QL128A serial nor flash Biju Das
2022-07-15 11:55   ` Michael Walle
2022-07-19  8:53     ` Pratyush Yadav
2022-07-21  8:28   ` Tudor.Ambarus
2022-07-21  8:48     ` Biju Das
2022-07-21  9:23     ` Biju Das
2022-07-21  9:39       ` Tudor.Ambarus
2022-07-21  9:43         ` Michael Walle
2022-07-21  9:46         ` Biju Das
2022-07-21 10:00           ` Michael Walle

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).