Message ID | 20230331095549.16393-1-nicolas.ferre@microchip.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | mtd: spi-nor: sst: Unlock addition for sst26vf016 | expand |
Hi, Nicolas, On 3/31/23 10:55, nicolas.ferre@microchip.com wrote: > From: Guillaume Socquet <guillaume.socquet@microchip.com> > > Modify sst26vf016 flash_info struct so when such device is detected by > the driver it may be unlocked for write operation as sst26vf064. > > Signed-off-by: Guillaume Socquet <guillaume.socquet@microchip.com> > Signed-off-by: Nicolas Ferre <nicolas.ferre@microchip.com> > --- > drivers/mtd/spi-nor/sst.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/mtd/spi-nor/sst.c b/drivers/mtd/spi-nor/sst.c > index 63bcc97bf978..99c8a19493f5 100644 > --- a/drivers/mtd/spi-nor/sst.c > +++ b/drivers/mtd/spi-nor/sst.c > @@ -110,7 +110,9 @@ static const struct flash_info sst_nor_parts[] = { > NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | > SPI_NOR_QUAD_READ) }, > { "sst26vf016b", INFO(0xbf2641, 0, 64 * 1024, 32) > - NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ) }, > + FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_SWP_IS_VOLATILE) > + NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ) If I remember correctly this flash has SFDP support. If so, we may be able to get rid of the "NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ)". You can check whether the flash defines the SFDP tables or not by dumping the sfdp sysfs entry. Check the link from below on how to do that. Also the sector size and nsectors should be superfluous if the SFDP tables are present. > + .fixups = &sst26vf_nor_fixups }, So I'd try: { "sst26vf016b", INFO(0xbf2641, 0, 0, 0) PARSE_SFDP FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_SWP_IS_VOLATILE) .fixups = &sst26vf_nor_fixups }, We ask people that update or add new flash entries to do an erase, verify erase, write, read back and compare test. Also to dump the sysfs entries. Here's how to do that: https://lore.kernel.org/lkml/97a3b023-b9bc-c34d-45a4-ddd56f47bd76@microchip.com/T/ Cheers, ta
diff --git a/drivers/mtd/spi-nor/sst.c b/drivers/mtd/spi-nor/sst.c index 63bcc97bf978..99c8a19493f5 100644 --- a/drivers/mtd/spi-nor/sst.c +++ b/drivers/mtd/spi-nor/sst.c @@ -110,7 +110,9 @@ static const struct flash_info sst_nor_parts[] = { NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, { "sst26vf016b", INFO(0xbf2641, 0, 64 * 1024, 32) - NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ) }, + FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_SWP_IS_VOLATILE) + NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ) + .fixups = &sst26vf_nor_fixups }, { "sst26vf064b", INFO(0xbf2643, 0, 64 * 1024, 128) FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_SWP_IS_VOLATILE) NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)