mx25l51245g and mx66l51235l have the same flash ID. The flash
detection returns the first entry in the flash_info array that
matches the flash ID that was read, thus for the 0xc2201a ID,
mx25l51245g was always hit, introducing a regression for
mx66l51235l. Revert mx25l51245g addition. A solution for these
flashes to coexist was proposed.
According to macronix website, there is no mx66l51235l part number.
Rename the part to mx66l51235f.
The difference betwenn mx25l51245g and mx66l51235f flash_info entries
was that mx25l51245g also set SECT_4K. Both flashes support 4K erases,
but the 4K erase should be discovered when parsing BFPT, so there's
no need to set the explicit SECT_4K flag.
Tudor Ambarus (2):
Revert "mtd: spi-nor: macronix: Add support for mx25l51245g"
mtd: spi-nor: macronix: Fix name for mx66l51235f
drivers/mtd/spi-nor/macronix.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
--
2.25.1
This reverts commit 04b8edad262eec0d153005973dfbdd83423c0dcb.
mx25l51245g and mx66l51235l have the same flash ID. The flash
detection returns the first entry in the flash_info array that
matches the flash ID that was read, thus for the 0xc2201a ID,
mx25l51245g was always hit, introducing a regression for
mx66l51235l.
If one wants to differentiate the flash names, a better fix would be
to differentiate between the two at run-time, depending on SFDP,
and choose the correct name from a list of flash names, depending on
the SFDP differentiator.
Fixes: 04b8edad262e ("mtd: spi-nor: macronix: Add support for mx25l51245g")
Cc: [email protected]
Signed-off-by: Tudor Ambarus <[email protected]>
---
drivers/mtd/spi-nor/macronix.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/drivers/mtd/spi-nor/macronix.c b/drivers/mtd/spi-nor/macronix.c
index 6c2680b4cdad..42c2cf31702e 100644
--- a/drivers/mtd/spi-nor/macronix.c
+++ b/drivers/mtd/spi-nor/macronix.c
@@ -72,9 +72,6 @@ static const struct flash_info macronix_parts[] = {
SECT_4K | SPI_NOR_DUAL_READ |
SPI_NOR_QUAD_READ) },
{ "mx25l25655e", INFO(0xc22619, 0, 64 * 1024, 512, 0) },
- { "mx25l51245g", INFO(0xc2201a, 0, 64 * 1024, 1024,
- SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
- SPI_NOR_4B_OPCODES) },
{ "mx66l51235l", INFO(0xc2201a, 0, 64 * 1024, 1024,
SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
SPI_NOR_4B_OPCODES) },
--
2.25.1
According to macronix website, there is no mx66l51235l part number.
The chip detected as such is actually mx66l51235f. Rename the flash.
Do not update the mx66l51235l name from the spi_nor_dev_ids[], since
there are dt that are using this compatible.
Signed-off-by: Tudor Ambarus <[email protected]>
---
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 42c2cf31702e..c8167de55e55 100644
--- a/drivers/mtd/spi-nor/macronix.c
+++ b/drivers/mtd/spi-nor/macronix.c
@@ -72,7 +72,7 @@ static const struct flash_info macronix_parts[] = {
SECT_4K | SPI_NOR_DUAL_READ |
SPI_NOR_QUAD_READ) },
{ "mx25l25655e", INFO(0xc22619, 0, 64 * 1024, 512, 0) },
- { "mx66l51235l", INFO(0xc2201a, 0, 64 * 1024, 1024,
+ { "mx66l51235f", INFO(0xc2201a, 0, 64 * 1024, 1024,
SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
SPI_NOR_4B_OPCODES) },
{ "mx66u51235f", INFO(0xc2253a, 0, 64 * 1024, 1024,
--
2.25.1
On 02/04/21 11:20AM, Tudor Ambarus wrote:
> This reverts commit 04b8edad262eec0d153005973dfbdd83423c0dcb.
>
> mx25l51245g and mx66l51235l have the same flash ID. The flash
> detection returns the first entry in the flash_info array that
> matches the flash ID that was read, thus for the 0xc2201a ID,
> mx25l51245g was always hit, introducing a regression for
> mx66l51235l.
>
> If one wants to differentiate the flash names, a better fix would be
> to differentiate between the two at run-time, depending on SFDP,
> and choose the correct name from a list of flash names, depending on
> the SFDP differentiator.
>
> Fixes: 04b8edad262e ("mtd: spi-nor: macronix: Add support for mx25l51245g")
> Cc: [email protected]
> Signed-off-by: Tudor Ambarus <[email protected]>
Acked-by: Pratyush Yadav <[email protected]>
> ---
> drivers/mtd/spi-nor/macronix.c | 3 ---
> 1 file changed, 3 deletions(-)
>
> diff --git a/drivers/mtd/spi-nor/macronix.c b/drivers/mtd/spi-nor/macronix.c
> index 6c2680b4cdad..42c2cf31702e 100644
> --- a/drivers/mtd/spi-nor/macronix.c
> +++ b/drivers/mtd/spi-nor/macronix.c
> @@ -72,9 +72,6 @@ static const struct flash_info macronix_parts[] = {
> SECT_4K | SPI_NOR_DUAL_READ |
> SPI_NOR_QUAD_READ) },
> { "mx25l25655e", INFO(0xc22619, 0, 64 * 1024, 512, 0) },
> - { "mx25l51245g", INFO(0xc2201a, 0, 64 * 1024, 1024,
> - SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
> - SPI_NOR_4B_OPCODES) },
> { "mx66l51235l", INFO(0xc2201a, 0, 64 * 1024, 1024,
> SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
> SPI_NOR_4B_OPCODES) },
> --
> 2.25.1
>
--
Regards,
Pratyush Yadav
Texas Instruments Inc.
On Fri, 2 Apr 2021 11:20:29 +0300, Tudor Ambarus wrote:
> mx25l51245g and mx66l51235l have the same flash ID. The flash
> detection returns the first entry in the flash_info array that
> matches the flash ID that was read, thus for the 0xc2201a ID,
> mx25l51245g was always hit, introducing a regression for
> mx66l51235l. Revert mx25l51245g addition. A solution for these
> flashes to coexist was proposed.
>
> [...]
Applied to spi-nor/next, thanks!
[1/2] Revert "mtd: spi-nor: macronix: Add support for mx25l51245g"
https://git.kernel.org/mtd/c/46094049a49b
Best regards,
--
Tudor Ambarus <[email protected]>
On 4/2/21 1:50 PM, Tudor Ambarus wrote:
> According to macronix website, there is no mx66l51235l part number.
> The chip detected as such is actually mx66l51235f. Rename the flash.
> Do not update the mx66l51235l name from the spi_nor_dev_ids[], since
> there are dt that are using this compatible.
>
> Signed-off-by: Tudor Ambarus <[email protected]>
> ---
Reviewed-by: Vignesh Raghavendra <[email protected]>
> 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 42c2cf31702e..c8167de55e55 100644
> --- a/drivers/mtd/spi-nor/macronix.c
> +++ b/drivers/mtd/spi-nor/macronix.c
> @@ -72,7 +72,7 @@ static const struct flash_info macronix_parts[] = {
> SECT_4K | SPI_NOR_DUAL_READ |
> SPI_NOR_QUAD_READ) },
> { "mx25l25655e", INFO(0xc22619, 0, 64 * 1024, 512, 0) },
> - { "mx66l51235l", INFO(0xc2201a, 0, 64 * 1024, 1024,
> + { "mx66l51235f", INFO(0xc2201a, 0, 64 * 1024, 1024,
> SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
> SPI_NOR_4B_OPCODES) },
> { "mx66u51235f", INFO(0xc2253a, 0, 64 * 1024, 1024,
>
On 4/2/21 1:50 PM, Tudor Ambarus wrote:
> According to macronix website, there is no mx66l51235l part number.
> The chip detected as such is actually mx66l51235f. Rename the flash.
> Do not update the mx66l51235l name from the spi_nor_dev_ids[], since
> there are dt that are using this compatible.
>
> Signed-off-by: Tudor Ambarus <[email protected]>
> ---
> 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 42c2cf31702e..c8167de55e55 100644
> --- a/drivers/mtd/spi-nor/macronix.c
> +++ b/drivers/mtd/spi-nor/macronix.c
> @@ -72,7 +72,7 @@ static const struct flash_info macronix_parts[] = {
> SECT_4K | SPI_NOR_DUAL_READ |
> SPI_NOR_QUAD_READ) },
> { "mx25l25655e", INFO(0xc22619, 0, 64 * 1024, 512, 0) },
> - { "mx66l51235l", INFO(0xc2201a, 0, 64 * 1024, 1024,
> + { "mx66l51235f", INFO(0xc2201a, 0, 64 * 1024, 1024,
> SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
> SPI_NOR_4B_OPCODES) },
> { "mx66u51235f", INFO(0xc2253a, 0, 64 * 1024, 1024,
>
Applied to spi-nor/next, thanks!
[2/2] mtd: spi-nor: macronix: Fix name for mx66l51235f
https://git.kernel.org/mtd/c/d406f49b05
--
Regards
Vignesh