JFFS2 on HHARM2410byllg分析和总结分析和总结.docx

JFFS2 on HHARM2410byllg分析和总结分析和总结.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
S3C2410 上 Jffs2 的移植 作者:wpq 2004-7-06 参照 llg 写的关于hharm(e28f128flash)上的jffs2 的移植 具体如下: 移植环境: CPU:ARMS3C2410 Linux version:2.4.18 Flash:Intel E28F128 修改设备号 由于 ROM 设备和MTDBlock 设备的主设备号(major)都是31,所以如果你不想把JFFS2 作为根文件系统的话,必须修改他们之一的 major。如果你要修改 JFFS2 的设备 major,在uClinux-dist/linux-2.4.x/include/linux/mtd/mtd.h中把 #define MTD_BLOCK_MAJOR 31 改成 #define MTD_BLOCK_MAJOR 30 编写Maps 文件 添加在 flash 上的 map 文件。 在 HHARM2410-R3/kernel/drivers/mtd/maps 下添加 flash(e28f128j3a-150)的 map,我把握的文件内容贴上,仅供参考: S3c2410_wpq.c /* * Normal mappings of chips on Samsung s3c2410 in physical memory */ #include linux/module.h #include linux/types.h #include linux/kernel.h #include asm/io.h #include linux/mtd/mtd.h #include linux/mtd/map.h #include linux/mtd/partitions.h #include linux/config.h #define WINDOW_ADDR 0//基地址 #define WINDOW_SIZE 0//flash 大小 16M #define BUSWIDTH 2 static struct mtd_info *mymtd; u8 s3c2410_read8(struct map_info *map, unsigned long ofs) { return readb(map-map_priv_1 + ofs); } u16 s3c2410_read16(struct map_info *map, unsigned long ofs) { return readw(map-map_priv_1 + ofs); } u32 s3c2410_read32(struct map_info *map, unsigned long ofs) { return readl(map-map_priv_1 + ofs); } void s3c2410_copy_from(struct map_info *map, void *to, unsigned long from, ssize_t len) { memcpy(to, (void *)(map-map_priv_1 + from), len); } void s3c2410_write8(struct map_info *map, u8 d, unsigned long adr) { writeb(d, map-map_priv_1 + adr); } void s3c2410_write16(struct map_info *map, u16 d, unsigned long adr) { writew(d, map-map_priv_1 + adr); } void s3c2410_write32(struct map_info *map, u32 d, unsigned long adr) { writel(d, map-map_priv_1 + adr); } void s3c2410_copy_to(struct map_info *map, unsigned long to, const void *from, ssize_t len) { memcpy((void *)(map-map_priv_1 + to), from, len); } struct map_info s3c2410_map = { name: s3c2410 flash device, size: WINDOW_SIZE, buswidth: BUSWIDTH, read8: s3c2410_read8, read16: s3c2410_read16, read32: s3c2410_read32, copy_from: s3c2410_copy_fr

文档评论(0)

mph + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体上海谭台科技有限公司
IP属地湖北
统一社会信用代码/组织机构代码
91310115MA7CY11Y3K

1亿VIP精品文档

相关文档