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

2020-06-29来源: eefocus关键字:移植  文件系统  yaffs2  2440

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

关键字:移植  文件系统  yaffs2  2440 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic501494.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:Win7 64 ADS1.2 编译弹出Error
下一篇:s3c2440.jflash项目的配置(使用jlink下载boot到norflash)

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

TinyOS在MSP430F2618上移植(二)之USCI
第一篇文章《TinyOS在MSP430F2618上移植(一)》早在5月份就已写好,间隔了2个月才有时间写这篇文章,期间一直忙于SPI、UART接口的测试以及FLASH、LCD的移植。本文主要叙述MSP430F2618单片机USCI的移植。对比MSP430F1611与MAP430F2618,可以看出两者最大的不同点在于后者提供了更丰富的外围接口,分为A,B两组,其中A组的功能有UART、IrDA ,B组提供SPI、I2C功能,另外A组也可以配合B组中提供的SCK作为SPI接口。在A,B组中又分为两个独立组,A0/1,B0/1。2618中特殊功能寄存器也做了改动,去除了模块使能寄存器1、2(module enable register
发表于 2020-06-07
TinyOS在MSP430F2618上移植(三)之LCD
本节记录串口TFT LCD在TinyOS上的移植。1.8寸LCD显示屏采用ST7735控制器,使用SPI接口实现控制、显示数据的传输。总体架构:分为3层结构,最底层位于相应的platforms中chips目录下,实现在特定平台上控制引脚连接,SPI接口连接,以及SPI配置。中间层实现了LCD基本操作,LCD初始化,提供给上层模块连接的接口,以及资源管理。最上层提供应用层模块连接的接口。在本架构中,中间层和最高层提供相同的接口LCD16,该接口提供的实现方法有english_string,clear,single_color等,以及写完成事件writeDone。不同的是在最高层提供的接口LCD16中,并没有真正实现接口的功能
发表于 2020-06-07
TinyOS在MSP430F2618上移植(四)之FLASH
本节叙述串口FLASH在TinyOS上的移植。 FLASH采用华邦的W25X80,存储容量8M bit,通过SPI接口进行数据读写,具有写保护功能。采用3层模型,最底层实现在特定平台中的引脚连接,以及SPI接口的连接。中间层提供Flash接口,该接口为带参数接口(主要是为了学习带参数接口的应用,FLASH的擦除可以体现此方法的优点),参数即为写FLASH的命令。最高层提供应用层模块的接口。在本架构中,中间层和最高层提供相同的接口Flash,该接口提供的实现方法有erase,perase(提供块擦除和区域擦除),read,write。最高层接口的实现中并没有给出真正的FLASH操作代码,而仅仅是保存了应用层传递的参数,并且设置当前
发表于 2020-06-07
关于2440的MDK平台下移植ucOS2,遇到的问题,及解决办法
这几天,移植想把ucos2移植到自己的2440开发板上,可是苦于没资料啊,于是网上到处找资料,今晚终于调试通过了,把自己的问题及解决办法跟大家分享分享:首先,建议大家到网上下载一个简单的ADS的例程,网上的在ADS上移植ucOS的例程很多,我也是随便下的一个,然后像移植单片机程序那样直接移植UCOS2就行了,编译的时候可能会报以下错误:.out_putled.axf: Error: L6238E: 2440init.o(Init) contains invalid call from '~PRES8 (The user did not require code to preserve 8-byte aligment of
发表于 2020-06-07
s3c2440 ads程序移植到keil中(二) 初步完成
/googlemi/article/details/8836609查看 s3c2440 ads程序移植到keil中(三) 初步完成
发表于 2020-06-07
s3c2440 ads程序移植到keil中(二) 初步完成
s3c2440 ads程序移植到keil中(三) 初步完成
如果我把参数配置发生改变呢然后再一次编译 要包错误如下所示其实我们到这里离 在s3c2440 ads程序移植到keil中(二)中看到这个网友不值提供了方法 而且提供了几个文件的下载地址http://download.csdn.net/detail/googlemi/5176844 我直接下载下来了 把其中的2440init.s文件直接拷贝复制替代我工作中的2440init.s 该错误消失了但是出现了这一个错误 反正修改就能解决然后 提示了一个错误 意思 就nand.c和nand.h 没有加上去 让后加上去了 编译成功没有错误这种方式到此结束
发表于 2020-06-07
s3c2440 ads程序移植到keil中(三) 初步完成
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved