Loading...
1What: /sys/class/mtd/
2Date: April 2009
3KernelVersion: 2.6.29
4Contact: linux-mtd@lists.infradead.org
5Description:
6 The mtd/ class subdirectory belongs to the MTD subsystem
7 (MTD core).
8
9What: /sys/class/mtd/mtdX/
10Date: April 2009
11KernelVersion: 2.6.29
12Contact: linux-mtd@lists.infradead.org
13Description:
14 The /sys/class/mtd/mtd{0,1,2,3,...} directories correspond
15 to each /dev/mtdX character device. These may represent
16 physical/simulated flash devices, partitions on a flash
17 device, or concatenated flash devices. They exist regardless
18 of whether CONFIG_MTD_CHAR is actually enabled.
19
20What: /sys/class/mtd/mtdXro/
21Date: April 2009
22KernelVersion: 2.6.29
23Contact: linux-mtd@lists.infradead.org
24Description:
25 These directories provide the corresponding read-only device
26 nodes for /sys/class/mtd/mtdX/ . They are only created
27 (for the benefit of udev) if CONFIG_MTD_CHAR is enabled.
28
29What: /sys/class/mtd/mtdX/dev
30Date: April 2009
31KernelVersion: 2.6.29
32Contact: linux-mtd@lists.infradead.org
33Description:
34 Major and minor numbers of the character device corresponding
35 to this MTD device (in <major>:<minor> format). This is the
36 read-write device so <minor> will be even.
37
38What: /sys/class/mtd/mtdXro/dev
39Date: April 2009
40KernelVersion: 2.6.29
41Contact: linux-mtd@lists.infradead.org
42Description:
43 Major and minor numbers of the character device corresponding
44 to the read-only variant of thie MTD device (in
45 <major>:<minor> format). In this case <minor> will be odd.
46
47What: /sys/class/mtd/mtdX/erasesize
48Date: April 2009
49KernelVersion: 2.6.29
50Contact: linux-mtd@lists.infradead.org
51Description:
52 "Major" erase size for the device. If numeraseregions is
53 zero, this is the eraseblock size for the entire device.
54 Otherwise, the MEMGETREGIONCOUNT/MEMGETREGIONINFO ioctls
55 can be used to determine the actual eraseblock layout.
56
57What: /sys/class/mtd/mtdX/flags
58Date: April 2009
59KernelVersion: 2.6.29
60Contact: linux-mtd@lists.infradead.org
61Description:
62 A hexadecimal value representing the device flags, ORed
63 together:
64
65 0x0400: MTD_WRITEABLE - device is writable
66 0x0800: MTD_BIT_WRITEABLE - single bits can be flipped
67 0x1000: MTD_NO_ERASE - no erase necessary
68 0x2000: MTD_POWERUP_LOCK - always locked after reset
69
70What: /sys/class/mtd/mtdX/name
71Date: April 2009
72KernelVersion: 2.6.29
73Contact: linux-mtd@lists.infradead.org
74Description:
75 A human-readable ASCII name for the device or partition.
76 This will match the name in /proc/mtd .
77
78What: /sys/class/mtd/mtdX/numeraseregions
79Date: April 2009
80KernelVersion: 2.6.29
81Contact: linux-mtd@lists.infradead.org
82Description:
83 For devices that have variable eraseblock sizes, this
84 provides the total number of erase regions. Otherwise,
85 it will read back as zero.
86
87What: /sys/class/mtd/mtdX/oobsize
88Date: April 2009
89KernelVersion: 2.6.29
90Contact: linux-mtd@lists.infradead.org
91Description:
92 Number of OOB bytes per page.
93
94What: /sys/class/mtd/mtdX/size
95Date: April 2009
96KernelVersion: 2.6.29
97Contact: linux-mtd@lists.infradead.org
98Description:
99 Total size of the device/partition, in bytes.
100
101What: /sys/class/mtd/mtdX/type
102Date: April 2009
103KernelVersion: 2.6.29
104Contact: linux-mtd@lists.infradead.org
105Description:
106 One of the following ASCII strings, representing the device
107 type:
108
109 absent, ram, rom, nor, nand, dataflash, ubi, unknown
110
111What: /sys/class/mtd/mtdX/writesize
112Date: April 2009
113KernelVersion: 2.6.29
114Contact: linux-mtd@lists.infradead.org
115Description:
116 Minimal writable flash unit size. This will always be
117 a positive integer.
118
119 In the case of NOR flash it is 1 (even though individual
120 bits can be cleared).
121
122 In the case of NAND flash it is one NAND page (or a
123 half page, or a quarter page).
124
125 In the case of ECC NOR, it is the ECC block size.
1What: /sys/class/mtd/
2Date: April 2009
3KernelVersion: 2.6.29
4Contact: linux-mtd@lists.infradead.org
5Description:
6 The mtd/ class subdirectory belongs to the MTD subsystem
7 (MTD core).
8
9What: /sys/class/mtd/mtdX/
10Date: April 2009
11KernelVersion: 2.6.29
12Contact: linux-mtd@lists.infradead.org
13Description:
14 The /sys/class/mtd/mtd{0,1,2,3,...} directories correspond
15 to each /dev/mtdX character device. These may represent
16 physical/simulated flash devices, partitions on a flash
17 device, or concatenated flash devices.
18
19What: /sys/class/mtd/mtdXro/
20Date: April 2009
21KernelVersion: 2.6.29
22Contact: linux-mtd@lists.infradead.org
23Description:
24 These directories provide the corresponding read-only device
25 nodes for /sys/class/mtd/mtdX/ .
26
27What: /sys/class/mtd/mtdX/dev
28Date: April 2009
29KernelVersion: 2.6.29
30Contact: linux-mtd@lists.infradead.org
31Description:
32 Major and minor numbers of the character device corresponding
33 to this MTD device (in <major>:<minor> format). This is the
34 read-write device so <minor> will be even.
35
36What: /sys/class/mtd/mtdXro/dev
37Date: April 2009
38KernelVersion: 2.6.29
39Contact: linux-mtd@lists.infradead.org
40Description:
41 Major and minor numbers of the character device corresponding
42 to the read-only variant of the MTD device (in
43 <major>:<minor> format). In this case <minor> will be odd.
44
45What: /sys/class/mtd/mtdX/erasesize
46Date: April 2009
47KernelVersion: 2.6.29
48Contact: linux-mtd@lists.infradead.org
49Description:
50 "Major" erase size for the device. If numeraseregions is
51 zero, this is the eraseblock size for the entire device.
52 Otherwise, the MEMGETREGIONCOUNT/MEMGETREGIONINFO ioctls
53 can be used to determine the actual eraseblock layout.
54
55What: /sys/class/mtd/mtdX/flags
56Date: April 2009
57KernelVersion: 2.6.29
58Contact: linux-mtd@lists.infradead.org
59Description:
60 A hexadecimal value representing the device flags, ORed
61 together:
62
63 0x0400: MTD_WRITEABLE - device is writable
64 0x0800: MTD_BIT_WRITEABLE - single bits can be flipped
65 0x1000: MTD_NO_ERASE - no erase necessary
66 0x2000: MTD_POWERUP_LOCK - always locked after reset
67
68What: /sys/class/mtd/mtdX/name
69Date: April 2009
70KernelVersion: 2.6.29
71Contact: linux-mtd@lists.infradead.org
72Description:
73 A human-readable ASCII name for the device or partition.
74 This will match the name in /proc/mtd .
75
76What: /sys/class/mtd/mtdX/numeraseregions
77Date: April 2009
78KernelVersion: 2.6.29
79Contact: linux-mtd@lists.infradead.org
80Description:
81 For devices that have variable eraseblock sizes, this
82 provides the total number of erase regions. Otherwise,
83 it will read back as zero.
84
85What: /sys/class/mtd/mtdX/oobsize
86Date: April 2009
87KernelVersion: 2.6.29
88Contact: linux-mtd@lists.infradead.org
89Description:
90 Number of OOB bytes per page.
91
92What: /sys/class/mtd/mtdX/size
93Date: April 2009
94KernelVersion: 2.6.29
95Contact: linux-mtd@lists.infradead.org
96Description:
97 Total size of the device/partition, in bytes.
98
99What: /sys/class/mtd/mtdX/type
100Date: April 2009
101KernelVersion: 2.6.29
102Contact: linux-mtd@lists.infradead.org
103Description:
104 One of the following ASCII strings, representing the device
105 type:
106
107 absent, ram, rom, nor, nand, mlc-nand, dataflash, ubi, unknown
108
109What: /sys/class/mtd/mtdX/writesize
110Date: April 2009
111KernelVersion: 2.6.29
112Contact: linux-mtd@lists.infradead.org
113Description:
114 Minimal writable flash unit size. This will always be
115 a positive integer.
116
117 In the case of NOR flash it is 1 (even though individual
118 bits can be cleared).
119
120 In the case of NAND flash it is one NAND page (or a
121 half page, or a quarter page).
122
123 In the case of ECC NOR, it is the ECC block size.
124
125What: /sys/class/mtd/mtdX/ecc_strength
126Date: April 2012
127KernelVersion: 3.4
128Contact: linux-mtd@lists.infradead.org
129Description:
130 Maximum number of bit errors that the device is capable of
131 correcting within each region covering an ECC step (see
132 ecc_step_size). This will always be a non-negative integer.
133
134 In the case of devices lacking any ECC capability, it is 0.
135
136What: /sys/class/mtd/mtdX/bitflip_threshold
137Date: April 2012
138KernelVersion: 3.4
139Contact: linux-mtd@lists.infradead.org
140Description:
141 This allows the user to examine and adjust the criteria by which
142 mtd returns -EUCLEAN from mtd_read() and mtd_read_oob(). If the
143 maximum number of bit errors that were corrected on any single
144 region comprising an ecc step (as reported by the driver) equals
145 or exceeds this value, -EUCLEAN is returned. Otherwise, absent
146 an error, 0 is returned. Higher layers (e.g., UBI) use this
147 return code as an indication that an erase block may be
148 degrading and should be scrutinized as a candidate for being
149 marked as bad.
150
151 The initial value may be specified by the flash device driver.
152 If not, then the default value is ecc_strength.
153
154 The introduction of this feature brings a subtle change to the
155 meaning of the -EUCLEAN return code. Previously, it was
156 interpreted to mean simply "one or more bit errors were
157 corrected". Its new interpretation can be phrased as "a
158 dangerously high number of bit errors were corrected on one or
159 more regions comprising an ecc step". The precise definition of
160 "dangerously high" can be adjusted by the user with
161 bitflip_threshold. Users are discouraged from doing this,
162 however, unless they know what they are doing and have intimate
163 knowledge of the properties of their device. Broadly speaking,
164 bitflip_threshold should be low enough to detect genuine erase
165 block degradation, but high enough to avoid the consequences of
166 a persistent return value of -EUCLEAN on devices where sticky
167 bitflips occur. Note that if bitflip_threshold exceeds
168 ecc_strength, -EUCLEAN is never returned by the read operations.
169 Conversely, if bitflip_threshold is zero, -EUCLEAN is always
170 returned, absent a hard error.
171
172 This is generally applicable only to NAND flash devices with ECC
173 capability. It is ignored on devices lacking ECC capability;
174 i.e., devices for which ecc_strength is zero.
175
176What: /sys/class/mtd/mtdX/ecc_step_size
177Date: May 2013
178KernelVersion: 3.10
179Contact: linux-mtd@lists.infradead.org
180Description:
181 The size of a single region covered by ECC, known as the ECC
182 step. Devices may have several equally sized ECC steps within
183 each writesize region.
184
185 It will always be a non-negative integer. In the case of
186 devices lacking any ECC capability, it is 0.
187
188What: /sys/class/mtd/mtdX/ecc_failures
189Date: June 2014
190KernelVersion: 3.17
191Contact: linux-mtd@lists.infradead.org
192Description:
193 The number of failures reported by this device's ECC. Typically,
194 these failures are associated with failed read operations.
195
196 It will always be a non-negative integer. In the case of
197 devices lacking any ECC capability, it is 0.
198
199What: /sys/class/mtd/mtdX/corrected_bits
200Date: June 2014
201KernelVersion: 3.17
202Contact: linux-mtd@lists.infradead.org
203Description:
204 The number of bits that have been corrected by means of the
205 device's ECC.
206
207 It will always be a non-negative integer. In the case of
208 devices lacking any ECC capability, it is 0.
209
210What: /sys/class/mtd/mtdX/bad_blocks
211Date: June 2014
212KernelVersion: 3.17
213Contact: linux-mtd@lists.infradead.org
214Description:
215 The number of blocks marked as bad, if any, in this partition.
216
217What: /sys/class/mtd/mtdX/bbt_blocks
218Date: June 2014
219KernelVersion: 3.17
220Contact: linux-mtd@lists.infradead.org
221Description:
222 The number of blocks that are marked as reserved, if any, in
223 this partition. These are typically used to store the in-flash
224 bad block table (BBT).
225
226What: /sys/class/mtd/mtdX/offset
227Date: March 2015
228KernelVersion: 4.1
229Contact: linux-mtd@lists.infradead.org
230Description:
231 For a partition, the offset of that partition from the start
232 of the parent (another partition or a flash device) in bytes.
233 This attribute is absent on flash devices, so it can be used
234 to distinguish them from partitions.
235
236What: /sys/class/mtd/mtdX/oobavail
237Date: April 2018
238KernelVersion: 4.16
239Contact: linux-mtd@lists.infradead.org
240Description:
241 Number of bytes available for a client to place data into
242 the out of band area.