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