Based on kernel version 3.9. Page generated on 2013-05-02 22:53 EST.
1 What: /sys/class/mtd/ 2 Date: April 2009 3 KernelVersion: 2.6.29 4 Contact: linux-mtd@lists.infradead.org 5 Description: 6 The mtd/ class subdirectory belongs to the MTD subsystem 7 (MTD core). 8 9 What: /sys/class/mtd/mtdX/ 10 Date: April 2009 11 KernelVersion: 2.6.29 12 Contact: linux-mtd@lists.infradead.org 13 Description: 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 20 What: /sys/class/mtd/mtdXro/ 21 Date: April 2009 22 KernelVersion: 2.6.29 23 Contact: linux-mtd@lists.infradead.org 24 Description: 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 29 What: /sys/class/mtd/mtdX/dev 30 Date: April 2009 31 KernelVersion: 2.6.29 32 Contact: linux-mtd@lists.infradead.org 33 Description: 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 38 What: /sys/class/mtd/mtdXro/dev 39 Date: April 2009 40 KernelVersion: 2.6.29 41 Contact: linux-mtd@lists.infradead.org 42 Description: 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 47 What: /sys/class/mtd/mtdX/erasesize 48 Date: April 2009 49 KernelVersion: 2.6.29 50 Contact: linux-mtd@lists.infradead.org 51 Description: 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 57 What: /sys/class/mtd/mtdX/flags 58 Date: April 2009 59 KernelVersion: 2.6.29 60 Contact: linux-mtd@lists.infradead.org 61 Description: 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 70 What: /sys/class/mtd/mtdX/name 71 Date: April 2009 72 KernelVersion: 2.6.29 73 Contact: linux-mtd@lists.infradead.org 74 Description: 75 A human-readable ASCII name for the device or partition. 76 This will match the name in /proc/mtd . 77 78 What: /sys/class/mtd/mtdX/numeraseregions 79 Date: April 2009 80 KernelVersion: 2.6.29 81 Contact: linux-mtd@lists.infradead.org 82 Description: 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 87 What: /sys/class/mtd/mtdX/oobsize 88 Date: April 2009 89 KernelVersion: 2.6.29 90 Contact: linux-mtd@lists.infradead.org 91 Description: 92 Number of OOB bytes per page. 93 94 What: /sys/class/mtd/mtdX/size 95 Date: April 2009 96 KernelVersion: 2.6.29 97 Contact: linux-mtd@lists.infradead.org 98 Description: 99 Total size of the device/partition, in bytes. 100 101 What: /sys/class/mtd/mtdX/type 102 Date: April 2009 103 KernelVersion: 2.6.29 104 Contact: linux-mtd@lists.infradead.org 105 Description: 106 One of the following ASCII strings, representing the device 107 type: 108 109 absent, ram, rom, nor, nand, dataflash, ubi, unknown 110 111 What: /sys/class/mtd/mtdX/writesize 112 Date: April 2009 113 KernelVersion: 2.6.29 114 Contact: linux-mtd@lists.infradead.org 115 Description: 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. 126 127 What: /sys/class/mtd/mtdX/ecc_strength 128 Date: April 2012 129 KernelVersion: 3.4 130 Contact: linux-mtd@lists.infradead.org 131 Description: 132 Maximum number of bit errors that the device is capable of 133 correcting within each region covering an ecc step. This will 134 always be a non-negative integer. Note that some devices will 135 have multiple ecc steps within each writesize region. 136 137 In the case of devices lacking any ECC capability, it is 0. 138 139 What: /sys/class/mtd/mtdX/bitflip_threshold 140 Date: April 2012 141 KernelVersion: 3.4 142 Contact: linux-mtd@lists.infradead.org 143 Description: 144 This allows the user to examine and adjust the criteria by which 145 mtd returns -EUCLEAN from mtd_read() and mtd_read_oob(). If the 146 maximum number of bit errors that were corrected on any single 147 region comprising an ecc step (as reported by the driver) equals 148 or exceeds this value, -EUCLEAN is returned. Otherwise, absent 149 an error, 0 is returned. Higher layers (e.g., UBI) use this 150 return code as an indication that an erase block may be 151 degrading and should be scrutinized as a candidate for being 152 marked as bad. 153 154 The initial value may be specified by the flash device driver. 155 If not, then the default value is ecc_strength. 156 157 The introduction of this feature brings a subtle change to the 158 meaning of the -EUCLEAN return code. Previously, it was 159 interpreted to mean simply "one or more bit errors were 160 corrected". Its new interpretation can be phrased as "a 161 dangerously high number of bit errors were corrected on one or 162 more regions comprising an ecc step". The precise definition of 163 "dangerously high" can be adjusted by the user with 164 bitflip_threshold. Users are discouraged from doing this, 165 however, unless they know what they are doing and have intimate 166 knowledge of the properties of their device. Broadly speaking, 167 bitflip_threshold should be low enough to detect genuine erase 168 block degradation, but high enough to avoid the consequences of 169 a persistent return value of -EUCLEAN on devices where sticky 170 bitflips occur. Note that if bitflip_threshold exceeds 171 ecc_strength, -EUCLEAN is never returned by the read operations. 172 Conversely, if bitflip_threshold is zero, -EUCLEAN is always 173 returned, absent a hard error. 174 175 This is generally applicable only to NAND flash devices with ECC 176 capability. It is ignored on devices lacking ECC capability; 177 i.e., devices for which ecc_strength is zero.