When there was no MMC or emmc at first, Android basically used nand, onenand, nor, and ECC nor as storage devices, and MTD (memory technology devices) could be operated directly on these original devices. After the android machine is started, run cat proc/MTD to view
The partition information on the MTD device. Here is the MTD device information on ZTE u880:
$ Cat proc/MTD
Cat proc/MTD
Dev: Size erasesize name
Mtd0: 00080000 00020000 "obm"
Mtd1: 00080000 00020000 "bootloader"
Mtd2: 00040000 00020000 "ramdisk"
Mtd3: 00040000 00020000 "IMEI"
Mtd4: 00700000 00020000 "arbelbinary"
Mtd5: 00100000 00020000 "msabinary"
Mtd6: 00400000 00020000 "kernel"
Mtd7: 00400000 00020000 "maintenance"
Mtd8: 00500000 00020000 "recovery"
Mtd9: 00040000 00020000 "Misc"
Mtd10: 01540000 00020000 "cache"
Mtd11: 09600000 00020000 "system"
Mtd12: 12200000 00020000 "userdata"
Mtd13: 00800000 00020000 "NVM"
Mtd14: 00800000 00020000 "telephony"
Mtd15: 00200000 00020000 "Reserved"
Mtd16: 00a0000000020000 "mrvl_bbm"
With the emergence of MMC, emmc, compactflash, and other storage devices with FTL (flash translate lay), MTD systems are no longer able to operate
This type of device, so if the current Android mobile phone uses emmc and other devices as internal storage devices, when you cat proc/MTD, the returned device list is empty. Another problem caused by this is that when the Android mobile phone is upgraded using the OTA update mode
During non-file system partition upgrades such as boot or recovery, an error occurs because the old Upgrade Program does not support operations on non-MTD devices. In the source code of the upgrade script, write the partition ing function writerawimagefn to run the write MTD partition through mtd_write_data.