Chinaunix首页 | 论坛 | 博客
  • 博客访问: 225166
  • 博文数量: 49
  • 博客积分: 2101
  • 博客等级: 大尉
  • 技术积分: 525
  • 用 户 组: 普通用户
  • 注册时间: 2010-09-07 10:38
文章分类

全部博文(49)

文章存档

2010年(49)

我的朋友

分类: 嵌入式

2010-09-07 14:31:36

1 概述

Uboot可以从jffs2中使用fsload命令加载linux内核,但是其对jffs2文件系统只能读不能写。

 

2 添加代码

2.1 TQM866M.h头文件中添加宏定义

#define CONFIG_CMD_JFFS2

#define CONFIG_JFFS2_CMDLINE

#define MTDIDS_DEFAULT              "nor0=norflash-0"

#define MTDPARTS_DEFAULT   "mtdparts=norflash-0:512k(u-boot),"    \

                                          "3584k(data)"

Uboot利用MTD管理flash,可以将flash划分为多个mtd区。在上述MTDPARTS_DEFAULT中,将flash划分为两个mdt区。在uboot下,运行mtdparts命令可以看到分区信息。这类似于硬盘划分为c盘、d盘等。

2.2 添加初始化代码

common/main.c中的main_loop()中添加代码,红色部分:

#ifdef CONFIG_AUTO_COMPLETE

       install_auto_complete();

#endif

 

#ifdef CONFIG_JFFS2_CMDLINE && TAICOM_TC505_HHY

        run_command("mtdparts default", 0);

#endif

 

#ifdef CONFIG_PREBOOT

       if ((p = getenv ("preboot")) != NULL) {

# ifdef CONFIG_AUTOBOOT_KEYED

              int prev = disable_ctrlc(1);    /* disable Control C checking */

# endif

 

Mtdparts default命令用来根据宏定义MTDPARTS_DEFAULT设置系统mtd相关的环境变量。

 

3 使用uboot的相关命令

将做好的jffs文件系统烧写到flash的第二个区data

3.1 mtdparts

显示分区信息

3.2 chparts

改变当前分区

chpart data

3.3 ls

linux

3.4 fsload

jffs2文件系统中加载文件

阅读(3149) | 评论(0) | 转发(0) |
0

上一篇:OpenOCD使用指南

下一篇:Uboot链接地址分析

给主人留下些什么吧!~~