UBIFS “UBIFS MTD device X is write-protected, attach in read-only mode”


系统启动后,将最后一个mtd分区格式化成ubi格式时,ubiattch提示这么一堆玩意

紧接着,ubimkvol更是一塌糊涂,提示无法创建


百度了半天无果!!


怎么办???从打印分析吧,提示只读???为什么这个分区是只读的呢?为什么只读的make ubi volume就出错呢????


感觉是第一个问题影响了第二个问题,毕竟没看过ubifs源码。

分析:ubi是凌驾于mtd分区上的。那么mtd分区信息应该是被ubi继承的。因为怀疑mtd分区性质导致的,查看uboot传递给内核的启动参数bootargs

发现写错漏掉了一个地方,对分区的可读写属性的显示定义,默认应该是只读的。

有问题的定义:

#define CONFIG_BOOTARGS							\
            	"console=ttyS0,115200 earlyprintk "\
            	"mtdparts=atmel_nand:"\
            	"5M(bstrap/uboot/kernel),32M(rootfs),-(usrdata)"\
                "root=/dev/mtdblock1 rw "\
            	"rootfstype=ubifs ubi.mtd=1 root=ubi0:rootfs rw"

修改后的定义

#define CONFIG_BOOTARGS							\
            	"console=ttyS0,115200 earlyprintk "\
            	"mtdparts=atmel_nand:"\
            	"5M(bstrap/uboot/kernel),32M(rootfs),-(usrdata) rw "\
                "root=/dev/mtdblock1 rw "\
            	"rootfstype=ubifs ubi.mtd=1 root=ubi0:rootfs rw"


你可能感兴趣的:(UBIFS,ubimkvol,ubiattach)