Messages in this thread | | | Date | Wed, 6 Sep 2023 10:36:47 +0300 | Subject | Re: [PATCH v2 39/41] mtd: spi-nor: winbond: sort flash_info entries | From | Tudor Ambarus <> |
| |
On 22.08.2023 10:09, Michael Walle wrote: > The flash ID is the new primary key into our database. Sort the entry by > it. Keep the most specific ones first, because there might be ID > collisions between shorter and longer ones. > > Signed-off-by: Michael Walle <mwalle@kernel.org>
I'm fine with the sorting by ID.
Reviewed-by: Tudor Ambarus <tudor.ambarus@linaro.org>
> --- > drivers/mtd/spi-nor/winbond.c | 166 +++++++++++++++++++++--------------------- > 1 file changed, 83 insertions(+), 83 deletions(-) > > diff --git a/drivers/mtd/spi-nor/winbond.c b/drivers/mtd/spi-nor/winbond.c > index 1f95c4ccecd9..6ce50c3f3c27 100644 > --- a/drivers/mtd/spi-nor/winbond.c > +++ b/drivers/mtd/spi-nor/winbond.c > @@ -72,37 +72,25 @@ static const struct flash_info winbond_nor_parts[] = { > .name = "w25x16", > .size = SZ_2M, > .no_sfdp_flags = SECT_4K, > - }, { > - .id = SNOR_ID(0xef, 0x60, 0x15), > - .name = "w25q16dw", > - .size = SZ_2M, > - .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > - .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > }, { > .id = SNOR_ID(0xef, 0x30, 0x16), > .name = "w25x32", > .size = SZ_4M, > .no_sfdp_flags = SECT_4K, > }, { > - .id = SNOR_ID(0xef, 0x70, 0x15), > - .name = "w25q16jv-im/jm", > - .size = SZ_2M, > - .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > - .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > + .id = SNOR_ID(0xef, 0x30, 0x17), > + .name = "w25x64", > + .size = SZ_8M, > + .no_sfdp_flags = SECT_4K, > }, { > .id = SNOR_ID(0xef, 0x40, 0x12), > .name = "w25q20cl", > .size = SZ_256K, > .no_sfdp_flags = SECT_4K, > }, { > - .id = SNOR_ID(0xef, 0x50, 0x12), > - .name = "w25q20bw", > - .size = SZ_256K, > - .no_sfdp_flags = SECT_4K, > - }, { > - .id = SNOR_ID(0xef, 0x60, 0x12), > - .name = "w25q20ew", > - .size = SZ_256K, > + .id = SNOR_ID(0xef, 0x40, 0x14), > + .name = "w25q80bl", > + .size = SZ_1M, > .no_sfdp_flags = SECT_4K, > }, { > .id = SNOR_ID(0xef, 0x40, 0x16), > @@ -110,57 +98,84 @@ static const struct flash_info winbond_nor_parts[] = { > .size = SZ_4M, > .no_sfdp_flags = SECT_4K, > }, { > - .id = SNOR_ID(0xef, 0x60, 0x16), > - .name = "w25q32dw", > - .size = SZ_4M, > + .id = SNOR_ID(0xef, 0x40, 0x17), > + .name = "w25q64", > + .size = SZ_8M, > + .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > + }, { > + .id = SNOR_ID(0xef, 0x40, 0x18), > + .name = "w25q128", > .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > + }, { > + .id = SNOR_ID(0xef, 0x40, 0x19), > + .name = "w25q256", > + .size = SZ_32M, > .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > - .otp = SNOR_OTP(256, 3, 0x1000, 0x1000), > + .fixups = &w25q256_fixups, > }, { > - .id = SNOR_ID(0xef, 0x70, 0x16), > - .name = "w25q32jv", > - .size = SZ_4M, > + .id = SNOR_ID(0xef, 0x40, 0x20), > + .name = "w25q512jvq", > + .size = SZ_64M, > + .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > + }, { > + .id = SNOR_ID(0xef, 0x50, 0x12), > + .name = "w25q20bw", > + .size = SZ_256K, > + .no_sfdp_flags = SECT_4K, > + }, { > + .id = SNOR_ID(0xef, 0x50, 0x14), > + .name = "w25q80", > + .size = SZ_1M, > + .no_sfdp_flags = SECT_4K, > + }, { > + .id = SNOR_ID(0xef, 0x60, 0x12), > + .name = "w25q20ew", > + .size = SZ_256K, > + .no_sfdp_flags = SECT_4K, > + }, { > + .id = SNOR_ID(0xef, 0x60, 0x15), > + .name = "w25q16dw", > + .size = SZ_2M, > .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > }, { > - .id = SNOR_ID(0xef, 0x80, 0x16), > - .name = "w25q32jwm", > + .id = SNOR_ID(0xef, 0x60, 0x16), > + .name = "w25q32dw", > .size = SZ_4M, > .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > .otp = SNOR_OTP(256, 3, 0x1000, 0x1000), > }, { > - .id = SNOR_ID(0xef, 0x80, 0x17), > - .name = "w25q64jwm", > + .id = SNOR_ID(0xef, 0x60, 0x17), > + .name = "w25q64dw", > .size = SZ_8M, > .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > }, { > - .id = SNOR_ID(0xef, 0x80, 0x18), > - .name = "w25q128jwm", > + .id = SNOR_ID(0xef, 0x60, 0x18), > + .name = "w25q128fw", > .size = SZ_16M, > .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > }, { > - .id = SNOR_ID(0xef, 0x80, 0x19), > - .name = "w25q256jwm", > + .id = SNOR_ID(0xef, 0x60, 0x19), > + .name = "w25q256jw", > .size = SZ_32M, > - .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > }, { > - .id = SNOR_ID(0xef, 0x30, 0x17), > - .name = "w25x64", > - .size = SZ_8M, > - .no_sfdp_flags = SECT_4K, > + .id = SNOR_ID(0xef, 0x60, 0x20), > + .name = "w25q512nwq", > + .otp = SNOR_OTP(256, 3, 0x1000, 0x1000), > }, { > - .id = SNOR_ID(0xef, 0x40, 0x17), > - .name = "w25q64", > - .size = SZ_8M, > + .id = SNOR_ID(0xef, 0x70, 0x15), > + .name = "w25q16jv-im/jm", > + .size = SZ_2M, > + .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > }, { > - .id = SNOR_ID(0xef, 0x60, 0x17), > - .name = "w25q64dw", > - .size = SZ_8M, > + .id = SNOR_ID(0xef, 0x70, 0x16), > + .name = "w25q32jv", > + .size = SZ_4M, > .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > }, { > @@ -168,64 +183,49 @@ static const struct flash_info winbond_nor_parts[] = { > .name = "w25q64jvm", > .size = SZ_8M, > .no_sfdp_flags = SECT_4K, > - }, { > - .id = SNOR_ID(0xef, 0x60, 0x18), > - .name = "w25q128fw", > - .size = SZ_16M, > - .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > - .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > }, { > .id = SNOR_ID(0xef, 0x70, 0x18), > .name = "w25q128jv", > .size = SZ_16M, > .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > - }, { > - .id = SNOR_ID(0xef, 0x50, 0x14), > - .name = "w25q80", > - .size = SZ_1M, > - .no_sfdp_flags = SECT_4K, > - }, { > - .id = SNOR_ID(0xef, 0x40, 0x14), > - .name = "w25q80bl", > - .size = SZ_1M, > - .no_sfdp_flags = SECT_4K, > - }, { > - .id = SNOR_ID(0xef, 0x40, 0x18), > - .name = "w25q128", > - .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > - }, { > - .id = SNOR_ID(0xef, 0x40, 0x19), > - .name = "w25q256", > - .size = SZ_32M, > - .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > - .fixups = &w25q256_fixups, > }, { > .id = SNOR_ID(0xef, 0x70, 0x19), > .name = "w25q256jvm", > - }, { > - .id = SNOR_ID(0xef, 0x60, 0x19), > - .name = "w25q256jw", > - .size = SZ_32M, > - .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > }, { > .id = SNOR_ID(0xef, 0x71, 0x19), > .name = "w25m512jv", > .size = SZ_64M, > .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > }, { > - .id = SNOR_ID(0xef, 0x60, 0x20), > - .name = "w25q512nwq", > + .id = SNOR_ID(0xef, 0x80, 0x16), > + .name = "w25q32jwm", > + .size = SZ_4M, > + .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > + .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > .otp = SNOR_OTP(256, 3, 0x1000, 0x1000), > + }, { > + .id = SNOR_ID(0xef, 0x80, 0x17), > + .name = "w25q64jwm", > + .size = SZ_8M, > + .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > + .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > + }, { > + .id = SNOR_ID(0xef, 0x80, 0x18), > + .name = "w25q128jwm", > + .size = SZ_16M, > + .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > + .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > + }, { > + .id = SNOR_ID(0xef, 0x80, 0x19), > + .name = "w25q256jwm", > + .size = SZ_32M, > + .flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB, > + .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > }, { > .id = SNOR_ID(0xef, 0x80, 0x20), > .name = "w25q512nwm", > .otp = SNOR_OTP(256, 3, 0x1000, 0x1000), > - }, { > - .id = SNOR_ID(0xef, 0x40, 0x20), > - .name = "w25q512jvq", > - .size = SZ_64M, > - .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ, > }, > }; > >
| |