aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mtd
diff options
context:
space:
mode:
authorMichael Walle <mwalle@kernel.org>2023-09-08 12:16:52 +0200
committerTudor Ambarus <tudor.ambarus@linaro.org>2023-09-19 18:59:21 +0300
commit947bb8f24b615fca5290aa13cebec323d43f8d11 (patch)
treebb1803786da019412ff76701c098711e3f3c03ac /drivers/mtd
parent1d8e64f40b248e942813d06fd21c14029eaba982 (diff)
downloadlinux-947bb8f24b615fca5290aa13cebec323d43f8d11.tar.gz
mtd: spi-nor: issi: sort flash_info database
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> Link: https://lore.kernel.org/r/20230807-mtd-flash-info-db-rework-v3-34-e60548861b10@kernel.org Signed-off-by: Tudor Ambarus <tudor.ambarus@linaro.org>
Diffstat (limited to 'drivers/mtd')
-rw-r--r--drivers/mtd/spi-nor/issi.c44
1 files changed, 22 insertions, 22 deletions
diff --git a/drivers/mtd/spi-nor/issi.c b/drivers/mtd/spi-nor/issi.c
index 9478f1e61626a..18d9a00aa22eb 100644
--- a/drivers/mtd/spi-nor/issi.c
+++ b/drivers/mtd/spi-nor/issi.c
@@ -48,27 +48,44 @@ static const struct spi_nor_fixups pm25lv_nor_fixups = {
static const struct flash_info issi_nor_parts[] = {
{
+ .name = "pm25lv512",
+ .sector_size = SZ_32K,
+ .size = SZ_64K,
+ .no_sfdp_flags = SECT_4K,
+ .fixups = &pm25lv_nor_fixups
+ }, {
+ .name = "pm25lv010",
+ .sector_size = SZ_32K,
+ .size = SZ_128K,
+ .no_sfdp_flags = SECT_4K,
+ .fixups = &pm25lv_nor_fixups
+ }, {
.id = SNOR_ID(0x7f, 0x9d, 0x20),
.name = "is25cd512",
.sector_size = SZ_32K,
.size = SZ_64K,
.no_sfdp_flags = SECT_4K,
}, {
+ .id = SNOR_ID(0x7f, 0x9d, 0x46),
+ .name = "pm25lq032",
+ .size = SZ_4M,
+ .no_sfdp_flags = SECT_4K,
+ }, {
.id = SNOR_ID(0x9d, 0x40, 0x13),
.name = "is25lq040b",
.size = SZ_512K,
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
}, {
- .id = SNOR_ID(0x9d, 0x60, 0x15),
- .name = "is25lp016d",
- .size = SZ_2M,
- .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
- }, {
.id = SNOR_ID(0x9d, 0x60, 0x14),
.name = "is25lp080d",
.size = SZ_1M,
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
}, {
+ .id = SNOR_ID(0x9d, 0x60, 0x15),
+ .name = "is25lp016d",
+ .size = SZ_2M,
+ .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
+ }, {
.id = SNOR_ID(0x9d, 0x60, 0x16),
.name = "is25lp032",
.size = SZ_4M,
@@ -109,23 +126,6 @@ static const struct flash_info issi_nor_parts[] = {
.flags = SPI_NOR_QUAD_PP,
.fixups = &is25lp256_fixups,
.fixup_flags = SPI_NOR_4B_OPCODES,
- }, {
- .name = "pm25lv512",
- .sector_size = SZ_32K,
- .size = SZ_64K,
- .no_sfdp_flags = SECT_4K,
- .fixups = &pm25lv_nor_fixups
- }, {
- .name = "pm25lv010",
- .sector_size = SZ_32K,
- .size = SZ_128K,
- .no_sfdp_flags = SECT_4K,
- .fixups = &pm25lv_nor_fixups
- }, {
- .id = SNOR_ID(0x7f, 0x9d, 0x46),
- .name = "pm25lq032",
- .size = SZ_4M,
- .no_sfdp_flags = SECT_4K,
}
};