Linux kernel 如何通过ARM系统上的内核命令行创建自己定义的MTD设备?

Linux kernel 如何通过ARM系统上的内核命令行创建自己定义的MTD设备?,linux-kernel,arm,flash-memory,Linux Kernel,Arm,Flash Memory,起初,我没有添加任何内核参数,然后得到了MTD设备 /proc/mtd: dev: size erasesize name mtd0: 01000000 00010000 "spi1.0" 然后,我添加了setenv mtdids“mtdids=spi1.0”,并且 setenv mtdparts“mtdparts=spi1.0:2m(U-Boot)ro,-(RootFS)ro”到内核命令行,同时,我打开了 "Command line partition table parsing

起初,我没有添加任何内核参数,然后得到了MTD设备

/proc/mtd:
dev:    size   erasesize  name
mtd0: 01000000 00010000 "spi1.0"
然后,我添加了
setenv mtdids“mtdids=spi1.0”
,并且
setenv mtdparts“mtdparts=spi1.0:2m(U-Boot)ro,-(RootFS)ro”
到内核命令行,同时,我打开了

"Command line partition table parsing",
"ARM Firmware Suite partition parsing"
设备驱动程序的种类--->通过Kconfig支持内存技术设备(MTD)。 最后,我得到,

 dev:    size   erasesize  name
 mtd0: 00100000 00010000 "u-boot"
 mtd1: 00400000 00010000 "kernel"
 mtd2: 00a00000 00010000 "rootfs"
但这仍然不是我想要的。 我丢了什么东西吗?
感谢您的帮助,

您可以使用它,但在创建分区后,您必须为每个分区创建一个ubifs文件系统,然后只有主板可以使用MTD。

请提供您正在使用的软件版本。也可以通过设备树执行。@peter,uboot版本是2013.01,linux内核是4.4.36。