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 ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/
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: stable@vger.kernel.org Signed-off-by: Tudor Ambarus <tudor.ambarus@microchip.com> --- 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 ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/
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 <tudor.ambarus@microchip.com> --- 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 ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/
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: stable@vger.kernel.org > Signed-off-by: Tudor Ambarus <tudor.ambarus@microchip.com> Acked-by: Pratyush Yadav <p.yadav@ti.com> > --- > 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. ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/
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 <tudor.ambarus@microchip.com> ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/
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 <tudor.ambarus@microchip.com> > --- Reviewed-by: Vignesh Raghavendra <vigneshr@ti.com> > 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, > ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/
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 <tudor.ambarus@microchip.com> > --- > 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 ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/