Skip to content

Commit 09e5a29

Browse files
mwalleambarus
authored andcommitted
mtd: spi-nor: macronix: convert flash_info to new format
The INFOx() macros are going away. Convert the flash_info database to the new format. Signed-off-by: Michael Walle <mwalle@kernel.org> Link: https://lore.kernel.org/r/20230807-mtd-flash-info-db-rework-v3-24-e60548861b10@kernel.org Signed-off-by: Tudor Ambarus <tudor.ambarus@linaro.org>
1 parent 856f617 commit 09e5a29

1 file changed

Lines changed: 150 additions & 68 deletions

File tree

drivers/mtd/spi-nor/macronix.c

Lines changed: 150 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -33,74 +33,156 @@ static const struct spi_nor_fixups mx25l25635_fixups = {
3333
};
3434

3535
static const struct flash_info macronix_nor_parts[] = {
36-
{ "mx25l512e", INFO(0xc22010, 0, 64 * 1024, 1)
37-
NO_SFDP_FLAGS(SECT_4K) },
38-
{ "mx25l2005a", INFO(0xc22012, 0, 64 * 1024, 4)
39-
NO_SFDP_FLAGS(SECT_4K) },
40-
{ "mx25l4005a", INFO(0xc22013, 0, 64 * 1024, 8)
41-
NO_SFDP_FLAGS(SECT_4K) },
42-
{ "mx25l8005", INFO(0xc22014, 0, 64 * 1024, 16) },
43-
{ "mx25l1606e", INFO(0xc22015, 0, 64 * 1024, 32)
44-
NO_SFDP_FLAGS(SECT_4K) },
45-
{ "mx25l3205d", INFO(0xc22016, 0, 64 * 1024, 64)
46-
NO_SFDP_FLAGS(SECT_4K) },
47-
{ "mx25l3255e", INFO(0xc29e16, 0, 64 * 1024, 64)
48-
NO_SFDP_FLAGS(SECT_4K) },
49-
{ "mx25l6405d", INFO(0xc22017, 0, 64 * 1024, 128)
50-
NO_SFDP_FLAGS(SECT_4K) },
51-
{ "mx25u2033e", INFO(0xc22532, 0, 64 * 1024, 4)
52-
NO_SFDP_FLAGS(SECT_4K) },
53-
{ "mx25u3235f", INFO(0xc22536, 0, 64 * 1024, 64)
54-
NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
55-
SPI_NOR_QUAD_READ) },
56-
{ "mx25u4035", INFO(0xc22533, 0, 64 * 1024, 8)
57-
NO_SFDP_FLAGS(SECT_4K) },
58-
{ "mx25u8035", INFO(0xc22534, 0, 64 * 1024, 16)
59-
NO_SFDP_FLAGS(SECT_4K) },
60-
{ "mx25u6435f", INFO(0xc22537, 0, 64 * 1024, 128)
61-
NO_SFDP_FLAGS(SECT_4K) },
62-
{ "mx25l12805d", INFO(0xc22018, 0, 64 * 1024, 256)
63-
FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_4BIT_BP)
64-
NO_SFDP_FLAGS(SECT_4K) },
65-
{ "mx25l12855e", INFO(0xc22618, 0, 64 * 1024, 256) },
66-
{ "mx25r1635f", INFO(0xc22815, 0, 64 * 1024, 32)
67-
NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
68-
SPI_NOR_QUAD_READ) },
69-
{ "mx25r3235f", INFO(0xc22816, 0, 64 * 1024, 64)
70-
NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
71-
SPI_NOR_QUAD_READ) },
72-
{ "mx25u12835f", INFO(0xc22538, 0, 64 * 1024, 256)
73-
NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
74-
SPI_NOR_QUAD_READ) },
75-
{ "mx25l25635e", INFO(0xc22019, 0, 64 * 1024, 512)
76-
NO_SFDP_FLAGS(SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)
77-
.fixups = &mx25l25635_fixups },
78-
{ "mx25u25635f", INFO(0xc22539, 0, 64 * 1024, 512)
79-
NO_SFDP_FLAGS(SECT_4K)
80-
FIXUP_FLAGS(SPI_NOR_4B_OPCODES) },
81-
{ "mx25u51245g", INFO(0xc2253a, 0, 64 * 1024, 1024)
82-
NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)
83-
FIXUP_FLAGS(SPI_NOR_4B_OPCODES) },
84-
{ "mx25uw51245g", INFOB(0xc2813a, 0, 0, 0, 4)
85-
FLAGS(SPI_NOR_RWW) },
86-
{ "mx25v8035f", INFO(0xc22314, 0, 64 * 1024, 16)
87-
NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
88-
SPI_NOR_QUAD_READ) },
89-
{ "mx25l25655e", INFO(0xc22619, 0, 64 * 1024, 512) },
90-
{ "mx66l51235f", INFO(0xc2201a, 0, 64 * 1024, 1024)
91-
NO_SFDP_FLAGS(SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)
92-
FIXUP_FLAGS(SPI_NOR_4B_OPCODES) },
93-
{ "mx66u51235f", INFO(0xc2253a, 0, 64 * 1024, 1024)
94-
NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)
95-
FIXUP_FLAGS(SPI_NOR_4B_OPCODES) },
96-
{ "mx66l1g45g", INFO(0xc2201b, 0, 64 * 1024, 2048)
97-
NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
98-
SPI_NOR_QUAD_READ) },
99-
{ "mx66l1g55g", INFO(0xc2261b, 0, 64 * 1024, 2048)
100-
NO_SFDP_FLAGS(SPI_NOR_QUAD_READ) },
101-
{ "mx66u2g45g", INFO(0xc2253c, 0, 64 * 1024, 4096)
102-
NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)
103-
FIXUP_FLAGS(SPI_NOR_4B_OPCODES) },
36+
{
37+
.id = SNOR_ID(0xc2, 0x20, 0x10),
38+
.name = "mx25l512e",
39+
.size = SZ_64K,
40+
.no_sfdp_flags = SECT_4K,
41+
}, {
42+
.id = SNOR_ID(0xc2, 0x20, 0x12),
43+
.name = "mx25l2005a",
44+
.size = SZ_256K,
45+
.no_sfdp_flags = SECT_4K,
46+
}, {
47+
.id = SNOR_ID(0xc2, 0x20, 0x13),
48+
.name = "mx25l4005a",
49+
.size = SZ_512K,
50+
.no_sfdp_flags = SECT_4K,
51+
}, {
52+
.id = SNOR_ID(0xc2, 0x20, 0x14),
53+
.name = "mx25l8005",
54+
.size = SZ_1M,
55+
}, {
56+
.id = SNOR_ID(0xc2, 0x20, 0x15),
57+
.name = "mx25l1606e",
58+
.size = SZ_2M,
59+
.no_sfdp_flags = SECT_4K,
60+
}, {
61+
.id = SNOR_ID(0xc2, 0x20, 0x16),
62+
.name = "mx25l3205d",
63+
.size = SZ_4M,
64+
.no_sfdp_flags = SECT_4K,
65+
}, {
66+
.id = SNOR_ID(0xc2, 0x9e, 0x16),
67+
.name = "mx25l3255e",
68+
.size = SZ_4M,
69+
.no_sfdp_flags = SECT_4K,
70+
}, {
71+
.id = SNOR_ID(0xc2, 0x20, 0x17),
72+
.name = "mx25l6405d",
73+
.size = SZ_8M,
74+
.no_sfdp_flags = SECT_4K,
75+
}, {
76+
.id = SNOR_ID(0xc2, 0x25, 0x32),
77+
.name = "mx25u2033e",
78+
.size = SZ_256K,
79+
.no_sfdp_flags = SECT_4K,
80+
}, {
81+
.id = SNOR_ID(0xc2, 0x25, 0x36),
82+
.name = "mx25u3235f",
83+
.size = SZ_4M,
84+
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
85+
}, {
86+
.id = SNOR_ID(0xc2, 0x25, 0x33),
87+
.name = "mx25u4035",
88+
.size = SZ_512K,
89+
.no_sfdp_flags = SECT_4K,
90+
}, {
91+
.id = SNOR_ID(0xc2, 0x25, 0x34),
92+
.name = "mx25u8035",
93+
.size = SZ_1M,
94+
.no_sfdp_flags = SECT_4K,
95+
}, {
96+
.id = SNOR_ID(0xc2, 0x25, 0x37),
97+
.name = "mx25u6435f",
98+
.size = SZ_8M,
99+
.no_sfdp_flags = SECT_4K,
100+
}, {
101+
.id = SNOR_ID(0xc2, 0x20, 0x18),
102+
.name = "mx25l12805d",
103+
.size = SZ_16M,
104+
.flags = SPI_NOR_HAS_LOCK | SPI_NOR_4BIT_BP,
105+
.no_sfdp_flags = SECT_4K,
106+
}, {
107+
.id = SNOR_ID(0xc2, 0x26, 0x18),
108+
.name = "mx25l12855e",
109+
.size = SZ_16M,
110+
}, {
111+
.id = SNOR_ID(0xc2, 0x28, 0x15),
112+
.name = "mx25r1635f",
113+
.size = SZ_2M,
114+
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
115+
}, {
116+
.id = SNOR_ID(0xc2, 0x28, 0x16),
117+
.name = "mx25r3235f",
118+
.size = SZ_4M,
119+
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
120+
}, {
121+
.id = SNOR_ID(0xc2, 0x25, 0x38),
122+
.name = "mx25u12835f",
123+
.size = SZ_16M,
124+
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
125+
}, {
126+
.id = SNOR_ID(0xc2, 0x20, 0x19),
127+
.name = "mx25l25635e",
128+
.size = SZ_32M,
129+
.no_sfdp_flags = SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
130+
.fixups = &mx25l25635_fixups
131+
}, {
132+
.id = SNOR_ID(0xc2, 0x25, 0x39),
133+
.name = "mx25u25635f",
134+
.size = SZ_32M,
135+
.no_sfdp_flags = SECT_4K,
136+
FIXUP_FLAGS(SPI_NOR_4B_OPCODES)
137+
}, {
138+
.id = SNOR_ID(0xc2, 0x25, 0x3a),
139+
.name = "mx25u51245g",
140+
.size = SZ_64M,
141+
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
142+
.fixup_flags = SPI_NOR_4B_OPCODES,
143+
}, {
144+
.id = SNOR_ID(0xc2, 0x81, 0x3a),
145+
.name = "mx25uw51245g",
146+
.n_banks = 4,
147+
.flags = SPI_NOR_RWW,
148+
}, {
149+
.id = SNOR_ID(0xc2, 0x23, 0x14),
150+
.name = "mx25v8035f",
151+
.size = SZ_1M,
152+
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
153+
}, {
154+
.id = SNOR_ID(0xc2, 0x26, 0x19),
155+
.name = "mx25l25655e",
156+
.size = SZ_32M,
157+
}, {
158+
.id = SNOR_ID(0xc2, 0x20, 0x1a),
159+
.name = "mx66l51235f",
160+
.size = SZ_64M,
161+
.no_sfdp_flags = SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
162+
.fixup_flags = SPI_NOR_4B_OPCODES,
163+
}, {
164+
.id = SNOR_ID(0xc2, 0x25, 0x3a),
165+
.name = "mx66u51235f",
166+
.size = SZ_64M,
167+
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
168+
.fixup_flags = SPI_NOR_4B_OPCODES,
169+
}, {
170+
.id = SNOR_ID(0xc2, 0x20, 0x1b),
171+
.name = "mx66l1g45g",
172+
.size = SZ_128M,
173+
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
174+
}, {
175+
.id = SNOR_ID(0xc2, 0x26, 0x1b),
176+
.name = "mx66l1g55g",
177+
.size = SZ_128M,
178+
.no_sfdp_flags = SPI_NOR_QUAD_READ,
179+
}, {
180+
.id = SNOR_ID(0xc2, 0x25, 0x3c),
181+
.name = "mx66u2g45g",
182+
.size = SZ_256M,
183+
.no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ,
184+
.fixup_flags = SPI_NOR_4B_OPCODES,
185+
},
104186
};
105187

106188
static void macronix_nor_default_init(struct spi_nor *nor)

0 commit comments

Comments
 (0)