新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于ARM11的嵌入式Linux NAND FLASH模拟U盘挂载分析与实现

基于ARM11的嵌入式Linux NAND FLASH模拟U盘挂载分析与实现

作者:时间:2013-04-22来源:网络收藏

1.2 NAND FLASH分区原理
NAND FLASH作为存储设备,存储着嵌入式产品从开机到结束的所有代码,所以做好存储设备的分区是至关重要的问题,LINUX操作系统下,分区如图2所示。

本文引用地址:http://www.eepw.com.cn/article/148060.htm


其中:.name为分区名称,定义为U_Strorage,.offset为起始地址,这个值需要结合该模块前面的模块的大小和起始地址算出;.size为定义的分区大小,为512 MB。
添加分区后重新编译,可在文件系统的/etc下找到相应盘符,如:mtdblock4。
2.2 配置内核
内核中实现NAND FLASH挂载的驱动是USB中的Gadget实现的,所以在实现这项功能时,首先在编译内核的时候,配置上Gadget功能。具体操作如下:
在内核源代码的根目录下执行#make menuconfig,这时将会看到内核的菜单选项,选择:
device driver-->
[*]usb support-->
*>usb gadget support
*>usb preipheral controller
将usb support功能选中,选择编译该功能进内核,并在usb support功能子目录中选择中usb gadget support和usb preipheral contro ller功能,选择编译进内核,做完这些操作后编译内核。
在shell窗口命令行中输入:
#make zImage
#make modules
在driver/usb/gadget目录下会生成g_file_storage.ko和s3c_udc_otg.ko.讲这两个模块复制到目标板的文件系统中。
注意:当usb gadget support功能非作为模块编译进内核时,编译过模块后需要更新内核。而当usb gadget support功能作为模块编译进内核时,(选择栏应填“M>usb gadget support”,其中“M”代表模块),在编译生成模块后,除了要加载g_file_storage.ko还要加载s3c_udc_otg.ko。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)

linux相关文章:linux教程




评论


相关推荐

技术专区

关闭