[PATCH] Clean up the Spansion/Cypress/Infineon device ID table

From: Bacem Daassi Bacem.Daassi@cypress.com
Signed-off-by: Bacem Daassi Bacem.Daassi@cypress.com
Clean up the Spansion/Cypress/Infineon device ID table. Remove s25fl512s_256k since it's a duplicate of s25fl512s. Remove s25fl512s_64k and s25fl512s_512k since these devices do not exist. Rename s25fl128s to s25fl128s1. Add the new device s25fl128s0. Add device s25fl256l to the device ID table. All devices were tested on real silicon and confirmed to be working. --- drivers/mtd/spi/spi-nor-ids.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/drivers/mtd/spi/spi-nor-ids.c b/drivers/mtd/spi/spi-nor-ids.c index e5e7102923..5f6bbde53e 100644 --- a/drivers/mtd/spi/spi-nor-ids.c +++ b/drivers/mtd/spi/spi-nor-ids.c @@ -197,12 +197,10 @@ const struct flash_info spi_nor_ids[] = { { INFO("s25fl256s1", 0x010219, 0x4d01, 64 * 1024, 512, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | USE_CLSR) }, { INFO6("s25fl512s", 0x010220, 0x4d0080, 256 * 1024, 256, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | USE_CLSR) }, { INFO6("s25fs512s", 0x010220, 0x4d0081, 256 * 1024, 256, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | USE_CLSR) }, - { INFO("s25fl512s_256k", 0x010220, 0x4d00, 256 * 1024, 256, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | USE_CLSR) }, - { INFO("s25fl512s_64k", 0x010220, 0x4d01, 64 * 1024, 1024, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | USE_CLSR) }, - { INFO("s25fl512s_512k", 0x010220, 0x4f00, 256 * 1024, 256, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | USE_CLSR) }, { INFO("s25sl12800", 0x012018, 0x0300, 256 * 1024, 64, 0) }, { INFO("s25sl12801", 0x012018, 0x0301, 64 * 1024, 256, 0) }, - { INFO6("s25fl128s", 0x012018, 0x4d0180, 64 * 1024, 256, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | USE_CLSR) }, + { INFO6("s25fl128s0", 0x012018, 0x4d0080, 256 * 1024, 64, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | USE_CLSR) }, + { INFO6("s25fl128s1", 0x012018, 0x4d0180, 64 * 1024, 256, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | USE_CLSR) }, { INFO("s25fl129p0", 0x012018, 0x4d00, 256 * 1024, 64, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | USE_CLSR) }, { INFO("s25fl129p1", 0x012018, 0x4d01, 64 * 1024, 256, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | USE_CLSR) }, { INFO("s25sl008a", 0x010213, 0, 64 * 1024, 16, 0) }, @@ -214,6 +212,7 @@ const struct flash_info spi_nor_ids[] = { { INFO("s25fl208k", 0x014014, 0, 64 * 1024, 16, SECT_4K | SPI_NOR_DUAL_READ) }, { INFO("s25fl064l", 0x016017, 0, 64 * 1024, 128, SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) }, { INFO("s25fl128l", 0x016018, 0, 64 * 1024, 256, SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) }, + { INFO("s25fl256l", 0x016019, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) }, #endif #ifdef CONFIG_SPI_FLASH_SST /* SST */ /* SST -- large erase sizes are "overlays", "sectors" are 4K */

On Fri, May 22, 2020 at 10:41 PM bacem.daassi@gmail.com wrote:
From: Bacem Daassi Bacem.Daassi@cypress.com
Signed-off-by: Bacem Daassi Bacem.Daassi@cypress.com
Clean up the Spansion/Cypress/Infineon device ID table. Remove s25fl512s_256k since it's a duplicate of s25fl512s. Remove s25fl512s_64k and s25fl512s_512k since these devices do not exist.
Why these removed, what if legacy board usage still exists?
Rename s25fl128s to s25fl128s1. Add the new device s25fl128s0. Add device s25fl256l to the device ID table. All devices were tested on real silicon and confirmed to be working.
Please work with a proper commit message.
mtd: spi: Clean up Spansion/Cypress/Infineon ID table
< body >
Signed-off-by: Bacem Daassi Bacem.Daassi@cypress.com

The device s25fl512s is not offered with neither 64kB sector size, nor 512kB sector size, that's why s25fl512s_64k and s25fl512s_512k need to be removed from the device ID table.
The device ID entries "s25fl512s_256k" and "s25fl512s" are exactly the same, that's why the entry "s25fl512s_256k" needs to be removed. Any legacy board having that device will still be able to probe the Flash memory as "s25fl512s" and will definitely not fail.
Best regards, Bacem Daassi Principal Applications Engineer
Cypress Semiconductor GmbH An Infineon Technologies Company Willy-Brandt-Allee 4, 81829 Munich, Germany www.infineon.com www.cypress.com
-----Original Message----- From: Jagan Teki jagan@amarulasolutions.com Sent: Thursday, July 9, 2020 10:19 AM To: bacem.daassi@gmail.com Cc: U-Boot-Denx u-boot@lists.denx.de; Vignesh R vigneshr@ti.com; Bacem Daassi Bacem.Daassi@cypress.com; Takahiro Kuwano Takahiro.Kuwano@cypress.com Subject: Re: [PATCH] Clean up the Spansion/Cypress/Infineon device ID table
On Fri, May 22, 2020 at 10:41 PM bacem.daassi@gmail.com wrote:
From: Bacem Daassi Bacem.Daassi@cypress.com
Signed-off-by: Bacem Daassi Bacem.Daassi@cypress.com
Clean up the Spansion/Cypress/Infineon device ID table. Remove s25fl512s_256k since it's a duplicate of s25fl512s. Remove s25fl512s_64k and s25fl512s_512k since these devices do not exist.
Why these removed, what if legacy board usage still exists?
Rename s25fl128s to s25fl128s1. Add the new device s25fl128s0. Add device s25fl256l to the device ID table. All devices were tested on real silicon and confirmed to be working.
Please work with a proper commit message.
mtd: spi: Clean up Spansion/Cypress/Infineon ID table
< body >
Signed-off-by: Bacem Daassi Bacem.Daassi@cypress.com
This message and any attachments may contain confidential information from Cypress or its subsidiaries. If it has been received in error, please advise the sender and immediately delete this message.
participants (3)
-
Bacem Daassi
-
bacem.daassi@gmail.com
-
Jagan Teki