zoukankan      html  css  js  c++  java
  • yaffs的移植

    1. 先下载yaffs2的补丁
    2.打补丁,在fs/patch -p1 xxxxxxxx
    3.编译之后内核就支持yaffs了,但是要做好yaffs的分区,还是件麻烦事啊!
    4.由于NAND Flash的特点,要先擦除再写,还得找到一个用来flash的工具,这就是mtd_util
    5.在/dev中添加flash的设备:
    [root@swordzj /]$ cat /proc/mtd
    dev:    size   erasesize  name
    mtd0: 00100000 00004000 "bootloader"
    mtd1: 00200000 00004000 "kernel"
    mtd2: 02800000 00004000 "root"
    mtd3: 01500000 00004000 "user"
    [root@swordzj /]$ ll /dev/mtd
    crw-r--r--    1 root     root      90,   0 Jan  1 00:02 0
    cr--r--r--    1 root     root      90,   1 Jan  1 00:02 0ro
    crw-r--r--    1 root     root      90,   2 Jan  1 00:02 1
    cr--r--r--    1 root     root      90,   3 Jan  1 00:02 1ro
    crw-r--r--    1 root     root      90,   4 Jan  1 00:02 2
    cr--r--r--    1 root     root      90,   5 Jan  1 00:02 2ro
    crw-r--r--    1 root     root      90,   6 Jan  1 00:02 3
    cr--r--r--    1 root     root      90,   7 Jan  1 00:02 3ro
    [root@swordzj /]$ ll /dev/mtdblock/
    brw-r--r--    1 root     root      31,   0 Jan  1 00:02 0
    brw-r--r--    1 root     root      31,   1 Jan  1 00:02 1
    brw-r--r--    1 root     root      31,   2 Jan  1 00:02 2
    brw-r--r--    1 root     root      31,   3 Jan  1 00:02 3
    看懂了吗?
    6.把mtd_util编译成arm-linux下的程序,然后用其中的flash_eraseall  /dev/mtd/x 擦除你想擦除的分区,
    然后挂上这个分区,mount -t yaffs /dev/mtdblock/x /mnt , 注意mtd 和 mtdblock的对应关系!然后你就可以往 flash里写东西了!很奇怪的是我不能直接把做好的文件系统的镜像直接烧在flash(用uboot或nandwrite等工具),那样做过后mount上的目录里只有lost+found一个目录。
  • 相关阅读:
    @try { } @catch (NSException *exception) {} @finally {}
    键盘点出来就退不掉了,你可以把这几句加到有键盘的控制器里
    测试最新的微信iOS SDK 报错误
    堆、栈知识小结
    PV操作
    continue & break
    dll的def文件与__declspec(dllexport)导出函数方式比较
    setupapi.h和setupapi.lib該如何使用
    批量缺少头文件的解决办法(添加包含目录)
    易犯错误总结:
  • 原文地址:https://www.cnblogs.com/swordzj/p/2034754.html
Copyright © 2011-2022 走看看