H Hartley Sweeten | 1dd7863 | 2010-08-19 17:28:50 -0700 | [diff] [blame^] | 1 | menuconfig MTD_UBI |
| 2 | tristate "Enable UBI - Unsorted block images" |
Artem B. Bityutskiy | 801c135 | 2006-06-27 12:22:22 +0400 | [diff] [blame] | 3 | select CRC32 |
| 4 | help |
| 5 | UBI is a software layer above MTD layer which admits of LVM-like |
| 6 | logical volumes on top of MTD devices, hides some complexities of |
| 7 | flash chips like wear and bad blocks and provides some other useful |
| 8 | capabilities. Please, consult the MTD web site for more details |
| 9 | (www.linux-mtd.infradead.org). |
| 10 | |
H Hartley Sweeten | 1dd7863 | 2010-08-19 17:28:50 -0700 | [diff] [blame^] | 11 | if MTD_UBI |
| 12 | |
Artem B. Bityutskiy | 801c135 | 2006-06-27 12:22:22 +0400 | [diff] [blame] | 13 | config MTD_UBI_WL_THRESHOLD |
| 14 | int "UBI wear-leveling threshold" |
| 15 | default 4096 |
| 16 | range 2 65536 |
Artem B. Bityutskiy | 801c135 | 2006-06-27 12:22:22 +0400 | [diff] [blame] | 17 | help |
| 18 | This parameter defines the maximum difference between the highest |
| 19 | erase counter value and the lowest erase counter value of eraseblocks |
| 20 | of UBI devices. When this threshold is exceeded, UBI starts performing |
| 21 | wear leveling by means of moving data from eraseblock with low erase |
Artem Bityutskiy | 6e0c84e | 2008-03-27 17:18:45 +0200 | [diff] [blame] | 22 | counter to eraseblocks with high erase counter. |
| 23 | |
| 24 | The default value should be OK for SLC NAND flashes, NOR flashes and |
| 25 | other flashes which have eraseblock life-cycle 100000 or more. |
| 26 | However, in case of MLC NAND flashes which typically have eraseblock |
Shinya Kuribayashi | 3f50262 | 2010-05-06 19:21:47 +0900 | [diff] [blame] | 27 | life-cycle less than 10000, the threshold should be lessened (e.g., |
Artem Bityutskiy | 6e0c84e | 2008-03-27 17:18:45 +0200 | [diff] [blame] | 28 | to 128 or 256, although it does not have to be power of 2). |
Artem B. Bityutskiy | 801c135 | 2006-06-27 12:22:22 +0400 | [diff] [blame] | 29 | |
| 30 | config MTD_UBI_BEB_RESERVE |
| 31 | int "Percentage of reserved eraseblocks for bad eraseblocks handling" |
| 32 | default 1 |
| 33 | range 0 25 |
Artem B. Bityutskiy | 801c135 | 2006-06-27 12:22:22 +0400 | [diff] [blame] | 34 | help |
| 35 | If the MTD device admits of bad eraseblocks (e.g. NAND flash), UBI |
| 36 | reserves some amount of physical eraseblocks to handle new bad |
| 37 | eraseblocks. For example, if a flash physical eraseblock becomes bad, |
| 38 | UBI uses these reserved physical eraseblocks to relocate the bad one. |
| 39 | This option specifies how many physical eraseblocks will be reserved |
| 40 | for bad eraseblock handling (percents of total number of good flash |
| 41 | eraseblocks). If the underlying flash does not admit of bad |
| 42 | eraseblocks (e.g. NOR flash), this value is ignored and nothing is |
| 43 | reserved. Leave the default value if unsure. |
| 44 | |
| 45 | config MTD_UBI_GLUEBI |
Dmitry Pervushin | 2ba3d76 | 2009-05-31 18:32:59 +0400 | [diff] [blame] | 46 | tristate "MTD devices emulation driver (gluebi)" |
Artem B. Bityutskiy | 801c135 | 2006-06-27 12:22:22 +0400 | [diff] [blame] | 47 | help |
Dmitry Pervushin | 2ba3d76 | 2009-05-31 18:32:59 +0400 | [diff] [blame] | 48 | This option enables gluebi - an additional driver which emulates MTD |
| 49 | devices on top of UBI volumes: for each UBI volumes an MTD device is |
| 50 | created, and all I/O to this MTD device is redirected to the UBI |
| 51 | volume. This is handy to make MTD-oriented software (like JFFS2) |
| 52 | work on top of UBI. Do not enable this unless you use legacy |
| 53 | software. |
Artem B. Bityutskiy | 801c135 | 2006-06-27 12:22:22 +0400 | [diff] [blame] | 54 | |
| 55 | source "drivers/mtd/ubi/Kconfig.debug" |
H Hartley Sweeten | 1dd7863 | 2010-08-19 17:28:50 -0700 | [diff] [blame^] | 56 | |
| 57 | endif # MTD_UBI |