Skip to content

Commit d3b5ea3

Browse files
mwalleambarus
authored andcommitted
mtd: spi-nor: winbond: sort flash_info entries
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 <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Tudor Ambarus <[email protected]>
1 parent 1de4108 commit d3b5ea3

File tree

1 file changed

+83
-83
lines changed

1 file changed

+83
-83
lines changed

drivers/mtd/spi-nor/winbond.c

Lines changed: 83 additions & 83 deletions
Original file line numberDiff line numberDiff line change
@@ -72,160 +72,160 @@ static const struct flash_info winbond_nor_parts[] = {
7272
.name = "w25x16",
7373
.size = SZ_2M,
7474
.no_sfdp_flags = SECT_4K,
75-
}, {
76-
.id = SNOR_ID(0xef, 0x60, 0x15),
77-
.name = "w25q16dw",
78-
.size = SZ_2M,
79-
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
80-
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
8175
}, {
8276
.id = SNOR_ID(0xef, 0x30, 0x16),
8377
.name = "w25x32",
8478
.size = SZ_4M,
8579
.no_sfdp_flags = SECT_4K,
8680
}, {
87-
.id = SNOR_ID(0xef, 0x70, 0x15),
88-
.name = "w25q16jv-im/jm",
89-
.size = SZ_2M,
90-
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
91-
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
81+
.id = SNOR_ID(0xef, 0x30, 0x17),
82+
.name = "w25x64",
83+
.size = SZ_8M,
84+
.no_sfdp_flags = SECT_4K,
9285
}, {
9386
.id = SNOR_ID(0xef, 0x40, 0x12),
9487
.name = "w25q20cl",
9588
.size = SZ_256K,
9689
.no_sfdp_flags = SECT_4K,
9790
}, {
98-
.id = SNOR_ID(0xef, 0x50, 0x12),
99-
.name = "w25q20bw",
100-
.size = SZ_256K,
101-
.no_sfdp_flags = SECT_4K,
102-
}, {
103-
.id = SNOR_ID(0xef, 0x60, 0x12),
104-
.name = "w25q20ew",
105-
.size = SZ_256K,
91+
.id = SNOR_ID(0xef, 0x40, 0x14),
92+
.name = "w25q80bl",
93+
.size = SZ_1M,
10694
.no_sfdp_flags = SECT_4K,
10795
}, {
10896
.id = SNOR_ID(0xef, 0x40, 0x16),
10997
.name = "w25q32",
11098
.size = SZ_4M,
11199
.no_sfdp_flags = SECT_4K,
112100
}, {
113-
.id = SNOR_ID(0xef, 0x60, 0x16),
114-
.name = "w25q32dw",
115-
.size = SZ_4M,
101+
.id = SNOR_ID(0xef, 0x40, 0x17),
102+
.name = "w25q64",
103+
.size = SZ_8M,
104+
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
105+
}, {
106+
.id = SNOR_ID(0xef, 0x40, 0x18),
107+
.name = "w25q128",
116108
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
109+
}, {
110+
.id = SNOR_ID(0xef, 0x40, 0x19),
111+
.name = "w25q256",
112+
.size = SZ_32M,
117113
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
118-
.otp = SNOR_OTP(256, 3, 0x1000, 0x1000),
114+
.fixups = &w25q256_fixups,
119115
}, {
120-
.id = SNOR_ID(0xef, 0x70, 0x16),
121-
.name = "w25q32jv",
122-
.size = SZ_4M,
116+
.id = SNOR_ID(0xef, 0x40, 0x20),
117+
.name = "w25q512jvq",
118+
.size = SZ_64M,
119+
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
120+
}, {
121+
.id = SNOR_ID(0xef, 0x50, 0x12),
122+
.name = "w25q20bw",
123+
.size = SZ_256K,
124+
.no_sfdp_flags = SECT_4K,
125+
}, {
126+
.id = SNOR_ID(0xef, 0x50, 0x14),
127+
.name = "w25q80",
128+
.size = SZ_1M,
129+
.no_sfdp_flags = SECT_4K,
130+
}, {
131+
.id = SNOR_ID(0xef, 0x60, 0x12),
132+
.name = "w25q20ew",
133+
.size = SZ_256K,
134+
.no_sfdp_flags = SECT_4K,
135+
}, {
136+
.id = SNOR_ID(0xef, 0x60, 0x15),
137+
.name = "w25q16dw",
138+
.size = SZ_2M,
123139
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
124140
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
125141
}, {
126-
.id = SNOR_ID(0xef, 0x80, 0x16),
127-
.name = "w25q32jwm",
142+
.id = SNOR_ID(0xef, 0x60, 0x16),
143+
.name = "w25q32dw",
128144
.size = SZ_4M,
129145
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
130146
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
131147
.otp = SNOR_OTP(256, 3, 0x1000, 0x1000),
132148
}, {
133-
.id = SNOR_ID(0xef, 0x80, 0x17),
134-
.name = "w25q64jwm",
149+
.id = SNOR_ID(0xef, 0x60, 0x17),
150+
.name = "w25q64dw",
135151
.size = SZ_8M,
136152
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
137153
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
138154
}, {
139-
.id = SNOR_ID(0xef, 0x80, 0x18),
140-
.name = "w25q128jwm",
155+
.id = SNOR_ID(0xef, 0x60, 0x18),
156+
.name = "w25q128fw",
141157
.size = SZ_16M,
142158
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
143159
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
144160
}, {
145-
.id = SNOR_ID(0xef, 0x80, 0x19),
146-
.name = "w25q256jwm",
161+
.id = SNOR_ID(0xef, 0x60, 0x19),
162+
.name = "w25q256jw",
147163
.size = SZ_32M,
148-
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
149164
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
150165
}, {
151-
.id = SNOR_ID(0xef, 0x30, 0x17),
152-
.name = "w25x64",
153-
.size = SZ_8M,
154-
.no_sfdp_flags = SECT_4K,
166+
.id = SNOR_ID(0xef, 0x60, 0x20),
167+
.name = "w25q512nwq",
168+
.otp = SNOR_OTP(256, 3, 0x1000, 0x1000),
155169
}, {
156-
.id = SNOR_ID(0xef, 0x40, 0x17),
157-
.name = "w25q64",
158-
.size = SZ_8M,
170+
.id = SNOR_ID(0xef, 0x70, 0x15),
171+
.name = "w25q16jv-im/jm",
172+
.size = SZ_2M,
173+
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
159174
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
160175
}, {
161-
.id = SNOR_ID(0xef, 0x60, 0x17),
162-
.name = "w25q64dw",
163-
.size = SZ_8M,
176+
.id = SNOR_ID(0xef, 0x70, 0x16),
177+
.name = "w25q32jv",
178+
.size = SZ_4M,
164179
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
165180
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
166181
}, {
167182
.id = SNOR_ID(0xef, 0x70, 0x17),
168183
.name = "w25q64jvm",
169184
.size = SZ_8M,
170185
.no_sfdp_flags = SECT_4K,
171-
}, {
172-
.id = SNOR_ID(0xef, 0x60, 0x18),
173-
.name = "w25q128fw",
174-
.size = SZ_16M,
175-
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
176-
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
177186
}, {
178187
.id = SNOR_ID(0xef, 0x70, 0x18),
179188
.name = "w25q128jv",
180189
.size = SZ_16M,
181190
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
182191
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
183-
}, {
184-
.id = SNOR_ID(0xef, 0x50, 0x14),
185-
.name = "w25q80",
186-
.size = SZ_1M,
187-
.no_sfdp_flags = SECT_4K,
188-
}, {
189-
.id = SNOR_ID(0xef, 0x40, 0x14),
190-
.name = "w25q80bl",
191-
.size = SZ_1M,
192-
.no_sfdp_flags = SECT_4K,
193-
}, {
194-
.id = SNOR_ID(0xef, 0x40, 0x18),
195-
.name = "w25q128",
196-
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
197-
}, {
198-
.id = SNOR_ID(0xef, 0x40, 0x19),
199-
.name = "w25q256",
200-
.size = SZ_32M,
201-
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
202-
.fixups = &w25q256_fixups,
203192
}, {
204193
.id = SNOR_ID(0xef, 0x70, 0x19),
205194
.name = "w25q256jvm",
206-
}, {
207-
.id = SNOR_ID(0xef, 0x60, 0x19),
208-
.name = "w25q256jw",
209-
.size = SZ_32M,
210-
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
211195
}, {
212196
.id = SNOR_ID(0xef, 0x71, 0x19),
213197
.name = "w25m512jv",
214198
.size = SZ_64M,
215199
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
216200
}, {
217-
.id = SNOR_ID(0xef, 0x60, 0x20),
218-
.name = "w25q512nwq",
201+
.id = SNOR_ID(0xef, 0x80, 0x16),
202+
.name = "w25q32jwm",
203+
.size = SZ_4M,
204+
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
205+
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
219206
.otp = SNOR_OTP(256, 3, 0x1000, 0x1000),
207+
}, {
208+
.id = SNOR_ID(0xef, 0x80, 0x17),
209+
.name = "w25q64jwm",
210+
.size = SZ_8M,
211+
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
212+
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
213+
}, {
214+
.id = SNOR_ID(0xef, 0x80, 0x18),
215+
.name = "w25q128jwm",
216+
.size = SZ_16M,
217+
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
218+
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
219+
}, {
220+
.id = SNOR_ID(0xef, 0x80, 0x19),
221+
.name = "w25q256jwm",
222+
.size = SZ_32M,
223+
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB,
224+
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
220225
}, {
221226
.id = SNOR_ID(0xef, 0x80, 0x20),
222227
.name = "w25q512nwm",
223228
.otp = SNOR_OTP(256, 3, 0x1000, 0x1000),
224-
}, {
225-
.id = SNOR_ID(0xef, 0x40, 0x20),
226-
.name = "w25q512jvq",
227-
.size = SZ_64M,
228-
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
229229
},
230230
};
231231

0 commit comments

Comments
 (0)