How to get mtd utils from MTD?
MTD utils are available from MTD utils git. You can get them by using gitweb “snapshot” feature (use “snapshot” link at latest commit at the right side) Compiling MTD utils depend on zlib, LZO and e2fsprogs for uuid.
How do I compile MTD tests as kernel modules?
You may compile the tests as kernel modules by enabling them in the kernel configuration menu by marking: ” Device Drivers ” -> ” Memory Technology Device (MTD) support ” -> ” MTD tests support ” (or the MTD_TESTS symbol in the .config file). If you have a pre- 2.6.29 kernel, you may find the tests here:
What is the MTD subsystem API?
The MTD subsystem API is defined in include/linux/mtd/mtd.h . The methods and data structures in this file are used by higher layer kernel code such as flash file systems to access and control the mtd devices, and also by device driver authors to interface their device to the mtd subsystem.
mtdblock driver
The mtdblock driver available in the MTD is an archaic tool which emulates block devices on top of MTD devices. It does not even have bad eraseblock handling, so it is not really usable with NAND flashes. And it works by caching a whole flash erase block in RAM, modifying it as requested, then erasing the whole block and writing back the modified. This means that mtdblock does not try to do any optimizations, and that you will lose lots of data in case of power cuts. And last, but not least, mtdblock does not do any wear-leveling or bit-flips handling.
Often people consider mtdblock as general FTL layer and try to use block-based file systems on top of bare flashes using mtdblock. This is wrong in most cases. In other words, please, do not use mtdblock unless you know exactly what you are doing.
There is also a read-only version of this driver, mainly for use with uCLinux where the extra RAM requirement was considered too large. However, just like the R/W version of the driver, there is no wear-levelling and bit-flips handling.
Instead of using this old driver, you may check the R/O block device emulation provided by UBI useful. Please refer to the UBI section for more details.
File systems on MTD[edit | edit source]
Because of the particular characteristics of flash memory, it is best used with a specifically designed flash file systems, which handles the read/write/erase operations and the wear-leveling algorithms.
At the moment there are only a few filesystems which support NAND:
- JFFS2 and YAFFS for bare NAND Flash and SmartMediaCards
- NTFL for DiskOnChip devices
- TRUEFFS from M-Systems for DiskOnChip devices
- SmartMedia DOS-FAT as defined by the SSFDC Forum
- UBIFS for bare NAND flash
The most common solutions are JFFS2 and UBI/UBIFS.
JFFS2edit | edit source
Let’s assume the MTD partition associated to the NAND flash is mapped as number 5. Please note that the same technique can be used with the NOR Flash partitions.
Let’s assume we run the kernel by using the . From the target shell, run
cat /proc/mtd
This command lists all the MTD partitions. For example, the mtd4 partition can be used.
eraseall /dev/mtd5
bash-2.05b# eraseall /dev/mtd5 Erasing 16 Kibyte @ nand_erase: attempt to erase a bad block at page 0x0000a740 Erasing 16 Kibyte @ 14e8000 -- 65 % complete. eraseall: /dev/mtd5: MTD Erase failure: Input/output error Erased 32768 Kibyte @ 0 -- 100% complete.
This operation is a sort of formatting. The error shown above refers to a bad block found in the device. These bad block are common for NAND flashes. They resemble somehow bad block of hard disk.
mkdir /mnt/nand
mount -t jffs2 /dev/mtdblock5 /mnt/nand
mount
Linux should print something like this:
/dev/nfs on / type nfs (rw) none on /proc type proc (rw) usbdevfs on /proc/bus/usb type usbdevfs (rw) /dev/mtdblock5 on /mnt/nand type jffs2 (rw)
This means than the device is correctly mounted on /mnt/nand.
To see how much space is left on the device please run the df command:
bash-2.05b# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/nfs 99077740 44983688 54094052 46% / /dev/mtdblock5 32768 912 31856 3% /mnt/nand
Now it is possibile to create create files and directories in /mnt/nand. This stuff will be permanently stored in the NAND flash chip.
Mount root filesystem from MTD JFFS2 partitionedit | edit source
First of all it is necessary to have the root file system available on a directory, for example /mnt/rfs (user can mount it throug NFS or loop-mount an ext2 image). Then:
cd /mnt/rfs/ cp -aRv . /mnt/nand/
You should see something like this:
bash-2.05b# cp -aRv . /mnt/nand/ `./bin' -> `/mnt/nand/./bin' `./bin/login' -> `/mnt/nand/./bin/login' `./bin/application' -> `/mnt/nand/./bin/application' `./bin/busybox' -> `/mnt/nand/./bin/busybox' ... `./var/run' -> `/mnt/nand/./var/run' bash-2.05b#
Now reboot the system in order to access the U-Boot shell and modify the root and rootfstype kernel command line parameters on the nandargs environment variable:
setenv nandargs 'setenv bootargs root=/dev/mtdblock5 rw rootflags=noatime rootfstype=jffs2'
Now run the kernel with this command:
run flash_nand
When kernel completed boot process, you can verify that the root file system is the one stored in the NAND flash:
# mount rootfs on / type rootfs (rw) /dev/mtdblock5 on / type jffs2 (rw,noatime) /proc on /proc type proc (rw,nodiratime)
UBIFSedit | edit source
UBIFS can be considered as the next-generation of the JFFS2 file system. It is a new journaled flash file system which works on top of the UBI (Unsorted Block Images) subsystem, a wear-leveling and volume management system for raw flash devices. UBI volumes are higher level entities than MTD devices, which represents the raw flash devices (/dev/mtdX) and provide the interface to access flash chips. The following figure shows the involved subsystems:
Let’s assume the MTD partition associated to the NAND flash is mapped as number X and that we run the kernel by using the .
To access and use UBIFS:
Erase the MTD partition:
flash_eraseall /dev/mtdX
Launch the following command to create the UBI volume:
ubiattach /dev/ubi_ctrl -m X
The device /dev/ubi0 is now available. To create the UBI volume, launch the following command (-N sets the name and -s sets the size of the volume):
ubimkvol /dev/ubi0 -N rootfs -s 128MiB
The device /dev/ubi0_0 is now available and can be mounted with one of the following comands:
mount -t ubifs ubi0_0 /mnt/ubifs mount -t ubifs ubi0:rootfs /mnt/ubifs
To mount the UBI file system as root file system, the binding between MTD and UBI must be specified from the kernel command line, adding the following parameters:
ubi.mtd=X root=ubi0_0 rootfstype=ubifs rw
Please note that
- the file system is formatted automatically the first time it is mounted
- the mount command don’t use the /dev/ prefix before ubi0_0 device
3. Configuration[edit source]
3.1. Kernel configurationedit source
MTD is activated by default in ST deliveries. Nevertheless, if a specific configuration is needed, this section indicates how MTD can be activated/deactivated in the kernel.
Activate MTD in the kernel configuration with the Linux Menuconfig tool: Menuconfig or how to configure kernel.
3.1.1. SLC NAND Flash memoryedit source
Device Drivers ---> <*> Memory Technology Device (MTD) support ---> NAND ---> <*> RAW/Parallel NAND Device Support ---> <*> Support for NAND controller on STM32MP Socs.
3.1.2. SPI NOR/NAND Flash memoryedit source
Device Drivers ---> <*> Memory Technology Device (MTD) support ---> NAND ---> <*> SPI NAND device Support <*> SPI-NOR device support SPI support ---> -*- SPI memory extension <*> STMicroelectronics STM32 QUAD SPI controller
3.2. Device tree configurationedit source
The DT configuration can be done thanks to STM32CubeMX.
Brief Introduction
MTD subsystem (stands for Memory Technology Devices) provides an abstraction layer for raw flash devices. It makes it possible to use the same API when working with different flash types and technologies, e.g. NAND, OneNAND, NOR, AG-AND, ECC’d NOR, etc.
MTD subsystem does not deal with block devices like MMC, eMMC, SD, CompactFlash, etc. These devices are not raw flashes but they have a Flash Translation Layer (FTL) inside, which makes them look like block devices. These devices are the subject of the Linux block subsystem, not MTD. Refer to this FAQ section for a short list of the main differences between block and MTD devices:
And the raw flash vs. FTL devices UBIFS section discusses this in more details.
MTD subsystem has the following interfaces:
MTD character devices — usually referred to as /dev/mtd0, /dev/mtd1, and so on. These character devices provide I/O access to the raw flash. They support a number of ioctl calls for erasing eraseblocks, marking them as bad or checking if an eraseblock is bad, getting information about MTD devices, etc.
The sysfs interface is relatively newer and it provides full information about each MTD device in the system. This interface is easily extensible and developers are encouraged to use the sysfs interface instead of older ioctl or /proc/mtd interfaces, when possible. The sysfs interface for the MTD subsystem is documentated in the kernel, and currently can be found at Documentation/ABI/testing/sysfs-class-mtd.
The /proc/mtd proc file system file provides general MTD information. This is a legacy interface and the sysfs interface provides more information.
MTD subsystem supports bare NAND flashes with software and hardware ECC, OneNAND flashes, CFI (Common Flash Interface) NOR flashes, and other flash types.
Additionally, MTD supports legacy FTL/NFTL translation layers, M-Systems’ DiskOnChip 2000 and Millennium chips, and PCMCIA flashes (pcmciamtd driver). But the corresponding drivers are very old and not maintained very much.
Применение Mtd устройств в ноутбуке
В ноутбуке Mtd устройства используются для хранения операционной системы, системных файлов и других важных данных. Они представляют собой небольшие чипы памяти, которые встроены непосредственно на материнскую плату ноутбука.
Одним из основных преимуществ Mtd устройств является их высокая производительность
Они способны обрабатывать данные с большой скоростью, что особенно важно при выполнении сложных задач и запуске программ
Кроме того, Mtd устройства обеспечивают надежность хранения данных. Они имеют прочную конструкцию и могут выдерживать экстремальные условия эксплуатации. Также они не зависят от механических элементов, таких как вращающиеся диски в жестких дисках, что делает их более надежными и долговечными.
Использование Mtd устройств в ноутбуке также способствует увеличению его автономности. Они потребляют меньше энергии, чем другие типы хранилищ данных, что позволяет продлить время работы ноутбука от одной зарядки батареи.
В целом, Mtd устройства являются незаменимым компонентом современных ноутбуков. Они обеспечивают быстрый доступ к данным, надежное хранение информации и повышают производительность ноутбука в целом.
Виды ноутбуков, в которых используются Mtd устройства
Mtd устройства, также известные как Memory Technology Devices, широко используются в различных типах ноутбуков. В основном, Mtd устройства применяются на ноутбуках для хранения и управления данными на флэш-памяти.
Существует несколько видов ноутбуков, в которых можно найти Mtd устройства:
Вид ноутбука | Описание |
---|---|
Ультрабуки | Это легкие и тонкие ноутбуки, которые обычно имеют ограниченное пространство для хранения данных. Mtd устройства позволяют ультрабукам иметь надежное и быстрое хранилище для операционной системы и приложений. |
Гибридные ноутбуки | Гибридные ноутбуки сочетают в себе функции ноутбука и планшета. Они обычно используют Mtd устройства для обеспечения мгновенного запуска и быстрого доступа к данным, а также для сохранения энергии. |
Игровые ноутбуки | Игровые ноутбуки требуют большого объема памяти и высокой скорости чтения и записи данных для запуска сложных игр. Mtd устройства обеспечивают быструю и надежную работу игровых ноутбуков. |
Лэптопы для бизнеса | Лэптопы, предназначенные для бизнес-пользователей, часто используют Mtd устройства для сохранения конфиденциальных данных и для обеспечения быстрой работы приложений. |
В целом, Mtd устройства встречаются в различных типах ноутбуков и являются важной составляющей их функциональности и производительности
Причины использования Mtd устройств в ноутбуке
Mtd устройства, или Memory Technology Devices, представляют собой различные типы устройств хранения данных в ноутбуках. Они могут быть использованы по разным причинам, включающим в себя:
- Увеличение объема хранения: Mtd устройства позволяют расширить доступный объем хранения данных в ноутбуке. Это особенно полезно, когда у вас есть много файлов, документов или медиафайлов, которые требуют большого объема памяти. Использование Mtd устройств позволяет сохранять все необходимые файлы, обеспечивая их доступность и удобство использования.
- Ускорение работы: Mtd устройства могут использоваться для кэширования, что может существенно ускорить работу ноутбука. Кэш предоставляет быстрый доступ к часто используемым данным, устраняя необходимость постоянного обращения к более медленным устройствам хранения данных, таким как жесткие диски.
- Безопасность данных: Mtd устройства могут быть использованы для хранения конфиденциальных данных. Они обеспечивают высокую степень защиты от несанкционированного доступа, так как могут использоваться для создания шифрованных разделов или хранения закрытых файлов.
- Повышение надежности: Mtd устройства могут использоваться в качестве резервной копии данных. При сбое обычного устройства хранения данных они могут сохранить ваши файлы и данные, обеспечивая безопасность их сохранности.
- Поддержка специальных функций: Mtd устройства также могут поддерживать различные специальные функции, такие как защита от вирусов и возможность восстановления системы.
Использование Mtd устройств в ноутбуке предоставляет множество преимуществ, повышая объем хранения данных, ускоряя работу, обеспечивая безопасность и надежность, а также поддерживая различные специальные функции. В результате, ноутбук становится более эффективным, удобным в использовании и надежным.
Резюме файла MTD
Файлы MTD связаны с два типом (-ами) файлов, и их можно просматривать с помощью Musicnotes Player, разработанного Musicnotes. В целом, этот формат связан с четыре существующим (-и) прикладным (-и) программным (-и) средством (-ами). Обычно они имеют формат Musicnotes Digital Sheet Music File.
Эти файлы классифицируют на Uncommon Files или 3D Image Files. Основная часть файлов относится к Uncommon Files.
Файлы MTD были обнаружены на платформах Windows и Mac. Они подходят для настольных ПК (и мобильных устройств).
Рейтинг популярности файлов MTD составляет «Низкий». Это означает, что они не часто встречаются на большинстве устройств.
Источники проблем с MTD
Проблемные проблемы с открытием MTD-файлов
Musicnotes Player нет
Вы пытаетесь загрузить MTD-файл и получить сообщение об ошибке, например «%%os%% не удается открыть расширение файла MTD». Если это так, это обычно означает, что у вас нет Musicnotes Player, установленного для %%os%%. ОС не будет знать, что делать с вашим MTD-файлом, поэтому двойной щелчок для загрузки файла не работает.
Совет. Если у вас установлена другая программа, которая, как вы знаете, откроет ваш MTD, вы можете выбрать ее из других перечисленных программ (см. «Показать приложения»).
Устаревшая версия Musicnotes Player
Возможно, ваша версия Musicnotes Player не сможет открыть файл Musicnotes Digital Sheet Music File из-за несовместимости. Если у вас установлена неправильная версия Musicnotes Player, вам потребуется установить правильную версию. Эта проблема в основном связана с наличием версии файла Musicnotes Digital Sheet Music File, которая была создана более новой версией Musicnotes Player, чем то, что вы установили на вашем компьютере.
Совет . Иногда вы можете получить подсказки о правильной версии программы, щелкнув правой кнопкой мыши MTD-файл, выбрав «Свойства» и посмотрев информацию о версии.
Сводка. Наличие правильной версии Musicnotes Player на компьютере может вызвать проблемы с открытием MTD-файлов.
В большинстве случаев установка правильной версии Musicnotes Player решит вашу проблему. Если у вас по-прежнему возникают ошибки при загрузке MTD-файлов, могут быть виноваты другие внешние проблемы. Эти другие проблемы включают (перечислены в порядке от наиболее до наименее распространенных):
Web-камера в качестве мыши
Введя в адресной строке браузера строку www.youtube.com/watch?v=LG HItQK2fA8&feature=player_embedded, ты сможешь увидеть видеоролик, демонстрирующий работу небольшого python-скрипта, позволяющего управлять курсором мыши с помощью любых объектов, находящихся в зоне видимости web-камеры. На нашем диске ты найдешь скрипт, который
позволяет это делать.
Для его запуска потребуется установить пакеты cmake, python, python-xlib, а также самый важный компонент — библиотеку компьютерного зрения OpenCV (http://opencv.sf.net). Ее нет в большинстве дистрибутивов, поэтому придется собрать самостоятельно:
После установки всех компонентов просто запусти cam-mouse-ctrl.py, и ты сможешь проделать трюк, показанный в ролике.
Разновидности MTD-файлов
Основная принадлежность в формате MTD
.MTD
Форматирование: | .mtd |
Тип файла: | Musicnotes Digital Sheet Music File |
Листовой музыкальный файл для просмотра Musicnotes; интернет-браузер плагин для просмотра, покупок, печати и слушать цифровые ноты. Он хранит гитары, голоса и фортепиано табулатуры вместе с текстами. Файлы используются для загрузки и обмена онлайн табулатур.
Организация: | Musicnotes |
Группа: | Необычные файлы |
Папка: | HKEY_CLASSES_ROOT\.mtd |
Программные обеспечения, открывающие Musicnotes Digital Sheet Music File:
Musicnotes Player, разработчик — Musicnotes
Windows |
Musicnotes Viewer, разработчик — Musicnotes
Windows |
Mac |
Musicnotes Guitar Guru, разработчик — Musicnotes
Windows |
Mac |
Альтернативные типы MTD
.MTD
Форматирование: | .mtd |
Тип файла: | Microsoft Live Mesh Hash File |
Файл хэша используется Microsoft Live Mesh. Хэш-функции являются хорошо подробные процедуры или математические функции, которые преобразуют большого размера количество переменных данных в небольшой системе координат.
Организация: | Microsoft Corporation |
Группа: | Файлы трехмерных изображений |
Программы, открывающие файлы Microsoft Live Mesh Hash File :
FolderShare, разработчик — Microsoft Corporation
Совместимый с:
Windows |
Mac |
Openbsd и безопасный голосовой чат из коробки
Open’овская утилита aucat, изначально созданная для проигрывания «сырых» звуковых файлов с расширением .au, со временем обросла функциональностью и сегодня может использоваться для многих целей, включая различные преобразования звукового потока в режиме реального времени, а также возможность применения в качестве полноценного аудиосервера, способного смешивать звуковые потоки, порождаемые другими инстанциями aucat. Известный в OpenBSD-кругах хакер по имени Райан Флэнири воспользовался этой возможностью для создания простой системы голосового чата, не требующей установки какого-либо дополнительного ПО. Идея, положенная в ее основу, такова:
1. Запустить aucat в режиме сервера на двух удаленных машинах. Работая в режиме сервера, aucat подключится к устройствам ввода и вывода звука и создаст UNIX-сокет, чтение из которого приведет к чтению данных из устройства ввода (микрофон), а запись — к записи в устройство вывода (колонки).
2. Запустить второй процесс aucat в обычном режиме на первой машине и перенаправить его вывод процессу aucat, работающему на второй машине с помощью ssh. В результате входной поток, полученный с микрофона и направленный сервером aucat в UNIX-сокет, будет прочитан aucat-процессом и перенаправлен на удаленную машину, где его прочитает удаленный aucat-процесс и запишет в UNIX-сокет собственного aucat-сервера. Так звук с микрофона первой машины попадет в колонки второй.
3. Повторить шаг 2 на второй машине, чтобы создать обратную связь. На уровне командной строки все это выглядит так:
Однако именно в таком виде система не заведется. Оказывается, работая в серверном режиме, aucat привязывает создаваемый UNIXсокет к запустившему его пользователю (файл получает имя /tmp/aucat-ID-юзера/default), и когда клиентский процесс aucat подключается к серверу, он также использует ID текущего пользователя для обращения к сокету. Чтобы работать совместно, сервер и клиент aucat должны быть запущены одним пользователем.
В приведенном выше примере клиент aucat, запускаемый на машине host2 с помощью ssh, будет работать с правами пользователя user1, тогда как сервер на этой машине будет запущен с правами пользователя user2, поэтому звук до второй машины «не дойдет». Для этого, можно либо использовать аккаунты с одинаковым ID пользователя на обеих машинах, либо пойти на небольшой трюк и после запуска сервера создать ссылку на каталог /tmp/aucat-ID-юзера для другого пользователя. Вот как это сделать на обеих машинах:
Затем можно запускать перенаправление звука. Райан предостерегает, что по умолчанию ты получишь слишком большую задержку, и рекомендует установить минимальный размер буфера и снизить частоту дискретизации звукового потока до 11000 Гц:
What is Ubi in Linux?
Linux. UBIFS (UBI File System, more fully Unsorted Block Image File System) is a flash file system for unmanaged flash memory devices. UBIFS works on top of an UBI (unsorted block image) layer, which is itself on top of a memory technology device (MTD) layer.
What is MTD write?
MTD (Memory Technology Devices) are NAND/NOR-based flash memory chips used for storing non-volatile data like boot images and configurations. As already said, MTD write operations are different from usual storage devices.
What does MTD mean?
Month To-Date
MTD
Acronym | Definition |
---|---|
MTD | Month To-Date |
MTD | Month to Date |
MTD | Memory Technology Devices |
MTD | Micro Triangle Displacement |
How do you dump Nands on Wii?
NAND Flash Memory is the built in memory of the Wii console. It houses save data, downloaded channels, and the Wii Menu….Extracting NAND files on Windows.
Step # | Command | Description |
---|---|---|
1 | nand-aes-dump.exe | Extracts the AES key from your nand.bin into a file called nand-key.bin. |
How big is Wii NAND?
The Wii contains 512 MiB of NAND flash storage, which is used to store “system software”, channels (including Virtual Console titles), game saves, and system settings.
What is MTD Linux?
A Memory Technology Device (MTD) is a type of device file in Linux for interacting with flash memory. The MTD subsystem was created to provide an abstraction layer between the hardware-specific device drivers and higher-level applications.
What is Dev mtd0?
MTD character devices – usually referred to as /dev/mtd0 , /dev/mtd1 , and so on. These character devices provide I/O access to the raw flash. They support a number of ioctl calls for erasing eraseblocks, marking them as bad or checking if an eraseblock is bad, getting information about MTD devices, etc.
What is OverlayFS in Linux?
In computing, OverlayFS is a union mount filesystem implementation for Linux. It combines multiple different underlying mount points into one, resulting in single directory structure that contains underlying files and sub-directories from all sources.
What is Ubi Linux?
UBI stands for “Unsorted Block Images”. UBIFS is a flash file system, which means it is designed to work with flash devices. It is important to understand, that UBIFS is completely different to any traditional file-system in Linux, like Ext2, XFS, JFS, etc.
What is Ubiformat?
UBIFS (UBI File System, more fully Unsorted Block Image File System) is a flash file system for unmanaged flash memory devices. UBIFS works on top of an UBI (unsorted block image) layer, which is itself on top of a memory technology device (MTD) layer.
mtd-utils
The MTD Utilities are a collection of tools that allow the user to interact with the MTD subsystem in the kernel to perform operations on Flash devices. The most commonly used utilities are:
mtd-utils | Description |
---|---|
mtd_debug | Debug MTD |
flash_info | Displays information about Flash devices |
flashcp | Copies data into NOR flash |
flash_erase | Erases an erase block of flash |
flash_eraseall | Erases the entire flash device |
flash_lock | Lock flash pages to prevent writing |
flash_unlock | Unlock flash pages to allow writing |
mkfs.jffs2 | Create a JFFS2 file system image from an existing file system |
nandwrite | Write an input file (i.e. JFFS2 or YAFFS2 image) to the NAND Flash device |
These utilities are often used to write file system images to the Flash device on an embedded system.
MTD Tests
The MTD subsystem includes a set of tests which you may run to verify your flash hardware and drivers. The tests are available in the mainline kernels starting from kernel version 2.6.29 and they live in the drivers/mtd/tests directory of the linux kernel source codes. You may compile the tests as kernel modules by enabling them in the kernel configuration menu by marking: Device Drivers -> Memory Technology Device (MTD) support -> MTD tests support (or the MTD_TESTS symbol in the .config file).
If you have a pre-2.6.29 kernel, you may find the tests here git://git.infradead.org/users/ahunter/nand-tests.git
The MTD test-suite contains the following tests:
- mtd_speedtest: measures and reports read/write/erase speed of the MTD device.
- mtd_stresstest: performs random read/write/erase operations and validates the MTD device I/O capabilities.
- mtd_readtest: this tests reads whole MTD device, one NAND page at a time including OOB (or 512 bytes at a time in case of flashes like NOR) and checks that reading works properly.
- mtd_pagetest: relevant only for NAND flashes, tests NAND page writing and reading in different sizes and order; this test was originally developed for testing the OneNAND driver, so it might be a little OneNAND-oriented, but must work on any NAND flash.
- mtd_oobtest: relevant only for NAND flashes, tests that the OOB area I/O works properly by writing data to different offsets and verifying it.
- mtd_subpagetest: relevant only for NAND flashes, tests sub-page I/O.
- mtd_torturetest: this test is designed to wear out flash eraseblocks. It repeatedly writes and erases the same group of eraseblocks until an I/O error happens, so be careful! The test supports a number of options (see modinfo mtd_torturetest) which allow you to set the amount of eraseblocks to torture and how the torturing is done. You may limit the amount of torturing cycles using the cycles_count module parameter. It may be very god idea to run this test for some time and validate your flash driver and HW, providing you have a spare device. For example, we caught rather rare and nasty DMA issues on an OMAP2 board with OneNAND flash, just by running this tests for few hours.
- mtd_nandecctest: a simple test that checks correctness of the built-in software ECC for 256 and 512-byte buffers; this test is not driver-specific but tests general NAND support code.