Message ID | 20220715105716.2415068-3-biju.das.jz@bp.renesas.com |
---|---|
State | Changes Requested |
Delegated to: | Ambarus Tudor |
Headers | show |
Series | Add Renesas AT25QL128A serial nor flash | expand |
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>
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>
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 >
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 > >
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 > >
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
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
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
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
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)
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(+)