单片机
返回首页

移植第一个文件系统yaffs2 (for 2440)

2020-06-29 来源:eefocus

1、获取yaffs2源代码:

https://yaffs.net/get-yaffs

在这里插入图片描述

2、为内核打上 yaffs2 补丁

解压,进入 yaffs2 源代码目录,执行patch-ker.sh给Linux内核打上yaffs2文件系统的补丁:


#cd yaffs2

#./patch-ker.sh c m /root/linux_kernel/linux-2.6.32.2


这里第二个参数我们选择m参数,否则可能出现下面提示,表示执行失败:

[root@localhost yaffs2]# ./patch-ker.sh c /root/linux-test/linux-2.6.32.2

usage: ./patch-ker.sh c/l m/s kernelpath

if c/l is c, then copy. If l then link

if m/s is m, then use multi version code. If s then use single version code //注意这一句话,根据自己需要选用第二个参数是m还是s


知识补充,patch-ker.sh命令完成下面三件事:


<1>修改内核文件/fs/Kconfig,增加下面两行(在177行附近):


if MISC_FILESYSTEMS


source 'fs/adfs/Kconfig'

source 'fs/affs/Kconfig'

source 'fs/ecryptfs/Kconfig'

source 'fs/hfs/Kconfig'

source 'fs/hfsplus/Kconfig'

source 'fs/befs/Kconfig'

source 'fs/bfs/Kconfig'

source 'fs/efs/Kconfig'

source 'fs/yaffs2/Kconfig'

source 'fs/jffs2/Kconfig'

# UBIFS File system configuration


<2>修改内核文件/fs/Makefile,增加下面两行(在129行附近):


obj-$(CONFIG_GFS2_FS)           += gfs2/

obj-$(CONFIG_EXOFS_FS)          += exofs/

obj-$(CONFIG_YAFFS_FS)  += yaffs2/


<3>在内核文件的fs目录下创建yaffs2子目录,然后复制如下文件:


将yaffs2源码目录下的Makefile.kernel文件复制为内核fs/yaffs2/Makefile文件。


将yaffs2源码目录下的Kconfig文件复制为内核fs/yaffs2/目录下。


将yaffs2源码目录下的*.c、*.h文件(不包括子目录下的文件)复制为内核fs/yaffs2/目录下。


补丁打完后,进入 linux-2.6.32.2/fs 目录,可以看到多了一个 yaffs2 目录。


3、配置Linux支持yaffs2

在 Linux 内核源代码根目录运行:make menuconfig 会弹出图形菜单界面。

移动上下按键找到 File Systems,按回车进入该子菜单再找到'Miscellaneous filesystems'菜单项,按回车进入该子菜单,找到'YAFFS2 file system support',并按空格选中它,这样我们就在内核中添加了 yaffs2文件系统的支持,按'Exit'退出内核配置。


4、制作yaffs2文件系统镜像

参考这篇文章:https://blog.csdn.net/u012577474/article/details/101288968

进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • PIC单片机控制的遥控防盗报警器电路

  • 红外线探测报警器

  • 短波AM发射器电路设计图

  • 使用ESP8266从NTP服务器获取时间并在OLED显示器上显示

  • 开关电源的基本组成及工作原理

  • 带有短路保护系统的5V直流稳压电源电路图

    相关电子头条文章