EMBEST S3CEB2410 User Manual

Embest S3CEB2410 Linux 开发手册
深圳市英蓓特信息技术有限公司©2005 版权所有,保留一切权利。 非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本书的部分或全部,并不得
以任何形式传播。
Copywrite©2005 by Shenzhen Embest Info&Tech Co.,LTD. All rights reserved. No part of this document may be reproducted or transmitted in any form or
by any means without prior written consent of Embest Info&Tech Co.,LTD.
Embest
®
为深圳市英蓓特信息技术有限公司的商标,不得仿冒。
®
is registered trademarks of Embest Info&Tech Co., LTD.
1
目录
目录................................................................................................................................... 2
一 建立Linux开发环境 ...................................................................................................3
1.1 cygwin开发环境.................................................................................................3
1.2 Embest IDE开发环境 .........................................................................................6
代码包的安装.............................................................................................................6
2.1 文件准备............................................................................................................6
2.2 编译工具............................................................................................................6
2.2.1 交叉编译工具安装..................................................................................6
2.2.2 环境变量及编译开关设置.....................................................................7
2.3 安装源代码文件................................................................................................9
2.3.1 vivi源代码安装........................................................................................9
2.3.2 Linux源代码安装 ....................................................................................9
2.3.3 文件系统安装.........................................................................................9
2.3.4 QT的文件系统安装..........................................................................10
代码的编译...............................................................................................................10
3.1 vivi编译 ............................................................................................................10
3.2 kernel的编译.....................................................................................................13
3.3 root文件系统编译 ............................................................................................14
3.4 QTOPIA编译 ....................................................................................................14
映象文件烧写...........................................................................................................15
4.4 烧写Nor Flash..................................................................................................18
4.4.1. vivi的烧写.............................................................................................18
4.4.2. 烧写kernel............................................................................................18
4.4.3. 烧写文件系统......................................................................................18
4.5 烧写Nand Flash ...............................................................................................18
4.5.1. vivi的烧写.............................................................................................18
4.5.2. 烧写kernel............................................................................................19
4.5.3. 烧写文件系统......................................................................................20
附录:.........................................................................................................................................21
文档约定:
别说明外均是指由
2
$> 一
1 #>
、所有类似
2
一 表示目标机上命令行运行提示符
表示主机上命令行运行提示符;
$SOURCEDIR、$WORKDIR、$INSTALLDIR
set_env_linux.sh
设置的目录;
等写法,除特
建立 Linux 开发环境
1.1 cygwin 开发环境
Cygwin可以从其网站http://www.cygwin.com上下载并安装最新版本,也可以直接 使用本书附带光盘提供的Cygwin,位于Cygwin 1.5.1 目录,版本为 1.5.10-31.5.10 版本的发布日期为 2004 5 月。
1.1.1 运行 Cygwin 安装程序 setup.exe,然后选择“Install from Local Directo ry“,选择“下一步”,如图 1-1 所示。
1-1 Cygwin 安装
1.1.2 选择 Cygwin 的安装目录,注意 Cygwin 的安装目录必须位于硬盘 NTFS 分区
(且尽量不要使用系统 C 分区),否则会影响文件属性和权限操作,可能导致错误 的结果。选择 Unix 文本文件类型进行安装,直接选择“下一步”后,则会把 Uni x 格式的 cygwin 系统安装到 NTFS 格式的 D 分区中,且安装目录为 D:\cygwin 如图 1-2 所示。
3
1-2 选择安装目录
1-3 安装软件包存放目录
1.1.3 选择 Cygwin 安装包所在的目录,可以是光盘也可以是本地硬盘分区。如 E:/C ygwin。选择“下一步”继续安装,如图 1-3 所示。
1.1.4 选择软件安装项目。用鼠标单击在安装项目左边“
Default”字样的位置,可
以调整该软件项目的安装设置,可能出现的状态有四种:
Default --- 该项目根据默认状态处理,可能被安装,也可能不安装 Install --- 安装该项目 Reinstall --- 重新安装该项目
4
Uninstall --- 移除该项目
1.1.5 对于 cygwin 的软件项目,如果完全安装可能需要 1GB 以上空间,对于不想安
装的项目可以选择状态为 Default。通常只选择 Linux 开发必要的选项即可,特别 地需要全部安装以下项目:
Admin Archive Base Devel Libs Net Shells Utils
—— 包括启动服务 cygrunsrv 等工具,NFS 启动必备 ——
——
——
——
——
——
——
压缩解压工具集 基本的 Linux 工具集 开发工具集,包括 gcc、make 等开发工具 函数库 网络工具集 常用 Shell 工具集 包括 bzip2 等实用工具集
1-4 Cygwin 软件包的选择
注意:由于
Install
为 工具和例程的空间,至少需要一个容量在
软件包安装完成后,根据提示信息进行余下的操作,此后可以在 PC 机上运行 Cygwi
n 了。
5
cygwin是Windows
环境下虚拟的
Linux
状态,即全部安装。所以要建立一个完整的
2GB
以上的分区。
开发环境,一般在
Linux
开发调试环境,加上存放编译
ALL
处设置
1.2 Embest IDE 开发环境
linux 开发中为了烧写和调试的方便,一般需要一些相关软件和开发工具的辅助,在 这里我们将用到 Embest IDE for ARM 软件、Embest online Flash Programmer f or ARMEmbest JTAG 仿真器(标准型/增加型/通常型),以及进行调试时所需要的平 台初始化文件(命令脚本文件)和烧写时平台配置文件(*.cfg)。这些文件在随开发板提 供的光盘里一并提供了,客户可以在开发板光盘上找到,安装和使用请参考开发软件的帮助。
代码包的安装
2.1 文件准备
开发环境安装完毕后,请在/tmp 目录建立一个文件夹,名为 S3CEB2410,拷贝开发 板光盘中以下目录到相应位置:
光盘\06-Linux Source\vivi --> /tmp/ S3CEB2410/vivi
光盘\06-Linux Source\kernel --> /tmp/ S3CEB2410/kernel
光盘\06-Linux Source\qt --> /tmp/ S3CEB2410/qt
光盘\06-Linux Source\root --> /tmp/ S3CEB2410/root
2.2 编译工具
2.2.1 交叉编译工具安装
cygwin 开发环境下,我们要求把交叉编译工具链安装到:$CROSSDIR 目录下。 请按以下操作完成安装:
a、把开发板光盘中提供的工具代码包 cross-armtools-linux.tar.bz2 拷贝到/tmp/ 目录下;
b、运行 cygwin,执行以下命令完成 cygwin 环境下的 Linux 交叉编译工具安装:
$> cd /tmp/ $> tar -P -xvjf cross-armtools-linux.tar.bz2 $> ls … armtools-linux … Å 即为正确,为/tmp/目录下其他内容 $> source armtools-linux/cross-install.sh $> ls /usr … arm-linux … Å 即为正确,为/usr/目录下其他内容
正确解压后,可以看到/usr 目录下多了一个 arm-linux 目录,这是我们需要的交叉 编译工具安装目录。接下来可以执行 2.2.2 中的 set_env_linux.sh 文件来设置开发环境 了。
6
2.2.2 环境变量及编译开关设置
搭建一个 Linux 开发、编译和应用程序测试的环境,需要设置的开关较多,为了方便 操作,我们提供了一个命令配置文件 set_env_linux.sh,正确安装 cygwin 后,请直接拷 贝光盘/06-Linux Source/*.sh /tmp/s3ceb2410 目录下,只要在运行 cygwin 后首 先执行一次该配置文件即可。运行命令是:
$> source /tmp/s3ceb2410/set_env_linux.sh Å Linux 编译环境变量设置
set_env_linux.sh 代码文件内容如下:
#!/bin/sh # set_env_linux.sh
# /* cross compiler install directory */ export CROSSDIR="/usr" # /* store the origin files and examples */ export SOURCEDIR="/tmp/s3ceb2410" # /* store the vivi,linux,fs,gui and examples(debug) */ export WORKDIR="/usr/local/src/s3ceb2410" # /* store the execute files and NFS mount directory */ export INSTALLDIR="/home/app"
if [ -d $SOURCEDIR ]; then echo $SOURCEDIR else echo "Creating directory: "$SOURCEDIR mkdir -p $SOURCEDIR fi
if [ -d $WORKDIR ]; then echo $WORKDIR else echo "Creating directory: "$WORKDIR mkdir -p $WORKDIR fi
if [ -d $INSTALLDIR ]; then echo $INSTALLDIR else echo "Creating directory: "$INSTALLDIR mkdir -p $INSTALLDIR fi
export LIBDIR="-L$CROSSDIR/arm-linux/lib/ \
-L$CROSSDIR/lib/gcc-lib/arm-linux/2.95.3"
7
CROSS="arm-linux-" export CC=$CROSS"gcc" export AS=$CROSS"as" export LD=$CROSS"ld"
export CFLAGS="-O2 -fomit-frame-pointer" export CPPFLAGS="-I$WORKDIR/kernel/include \
-I$CROSSDIR/arm-linux/include \
-I$CROSSDIR/lib/gcc-lib/arm-linux/2.95.3/include"
export LDFLAGS=$LIBDIR
export GCCMISC="$CROSSDIR/lib/gcc-lib/arm-linux/2.95.3/"
export PATH="$CROSSDIR/bin:$CROSSDIR/arm-linux/bin:$GCCMISC:$PATH" echo $PATH
如果第一次在 S3CEB2410 实验系统上进行 Linux 开发,执行该文件后可以看到输出 结果如下:
$> source /tmp/s3ceb2410/set_env_linux.sh Creating directory: /tmp/s3ceb2410 Creating directory: /usr/local/src/s3ceb2410 Creating directory: /home/app /usr/bin: /usr/lib/gcc-lib/arm-Linux/2.95.3/…… Å 不同 PC 后面内容可能不一样
如果执行后的输出变为打印目录名称,不执行“Creating directory:”,表示 Linux 开发调试相关目录已经存在了:
$> source /tmp/s3ceb2410/set_env_linux.sh /tmp/s3ceb2410 /usr/local/src/s3ceb2410 /home/app /usr/bin:/usr/arm-linux/bin:/usr/lib/… Å不同 PC 后面内容可能不一样
Ж 注意:
I.
这是一个环境变量设置文件,通常刚打开
代码编译所需的环境变量;
如果交叉编译工具安装位置或者是源代码包安装位置与我们设置的不一致,只需要
II.
set_env_linux.sh
修改
文件中加粗部分设置即可;
cygwin
时都需要执行一遍,以正确设置
III.
IV.
次打开
cygwin
可以在
cygwin
环境下进行任何代码编译之前都需要执行该文件一次;
cygwin/etc/profile
时都自动运行了。
文件的
”export PATH”
行前插入本文件的内容,则每
8
2.3 安装源代码文件
2.3.1 vivi 源代码安装
1、拷贝开发板光盘 06-Linux Source 文件夹下的 vivi 文件夹到$SOURCEDIR/目录 下;
2、运行 cygwin,执行以下命令完成 cygwin 环境下的 vivi 源代码的安装:
$> source /tmp/s3ceb2410/set_env_linux.sh Å Linux 编译环境变量设置 $> cd $WORKDIR $> tar -xvjf /tmp/s3ceb2410/vivi/vivi-20030929.s3ceb2410.tar.bz2 $> ls … vivi … Å …为$WORKDIR 目录下其他内容
正确解压后,可以看到多了一个 vivi 目录,即 vivi 源代码的安装目录,后面的 vivi 配 置及编译都得进入 vivi 目录进行。
$> cd vivi
2.3.2 Linux 源代码安装
a、拷贝开发板光盘 06-Linux Source 文件夹下的\kernel 文件夹到$SOURCEDIR/ 目录下;
b、运行 cygwin,执行以下命令完成 cygwin 环境下的 Linux 源代码的安装:
$> source /tmp/s3ceb2410/set_env_linux.sh Å Linux 编译环境变量设置 $> cd $WORKDIR $> tar -xvjf /tmp/ s3ceb2410/kernel/kernel.s3ceb2410.tar.gz $> ls … kernel … Å …为$WORKDIR 目录下其他内容
正确解压后,可以看到多了一个 kernel 目录,即 kernel 源代码的安装目录,后面的 L inux 配置及编译都得进入 kernel 目录进行。
$> cd kernel
2.3.3 文件系统安装
a、拷贝开发板光盘 06-Linux Source 文件夹下的 root 文件夹到$SOURCEDIR/目 录下;
b、运行 cygwin,执行以下命令完成 cramfs 文件系统源代码的安装:
$> source /tmp/s3ceb2410/set_env_linux.sh Å Linux 编译环境变量设置 $> cd $WORKDIR $> tar -xvjf /tmp/s3ceb2410/root/root.cramfs.tar.bz2 $> ls … root … Å …为$WORKDIR 目录下其他内容
正确解压后,可以看到多了一个 root 目录,即 cramfs 文件系统目录及文件的安装目 录,后面的提到的除说明是带 QT 的文件系统外,都使用这个目录作为文件系统。
9
2.3.4 QT 的文件系统安装
a、拷贝开发板光盘 06-Linux Source 文件夹下的 root 文件到$SOURCEDIR/目录 下;
b、运行 cygwin,执行以下命令完成带 QT cramfs 文件系统源代码的安装:
$> source /tmp/s3ceb2410/set_env_linux.sh Å Linux 编译环境变量设置 $> cd $WORKDIR $> tar -xvjf /tmp/s3ceb2410/root/root-qtopia-china.cramfs.tar.bz2 $> ls … root-qtopia-china … Å …为$WORKDIR 目录下其他内容
正确解压后,可以看到多了一个 root-qtopia-china 目录,即带 QTOPIA 图形用户界 面 cramfs 文件系统目录及文件的安装目录,实验指导书中提到的带 QT 的文件系统中的实 验都使用这个目录作为文件系统。
代码的编译
3.1 vivi 编译
具体的编译步骤:
a. 首先需要按照 2.3.1 节正确安装源代码包;
b. 然后执行以下命令进行编译;
$> source /tmp/s3ceb2410/set_env_linux.sh Å Linux 编译环境变量设置 $> cd $WORKDIR/vivi $> make clean $> make menuconfig
c. 在弹出的 menuconfig 的配置窗口中通过键盘选择“Load an Alternate Confi
guraton File”如图 3.1
10
3.1
d. 输入“arch/def-configs/smdk2410”如图 3.2,完成后回车,然后退出
3.2
11
3.3
e. 然后输入下面命对 VIVI 编译,如图 3.4
$> make
3.4
编译成功会在/usr/local/src/s3ceb2410/vivi 的目录下生成 vivi 的映象文件“vivi”.
Ж 注意:
配置文件所在的路径是 生成可以烧写到不同
s3ceb2410-intel
smdk2410
smdk2410-amd
12
s3ceb2410\vivi\arch\def-configs
FLASH
:烧写到
: 烧写到
:烧写到
可以运行的映像文件,具体如下:
intel E28F128
nandflash
AM29LV160DB
中使用不同的配置文件将
3.2 kernel 的编译
编译 kernel 的具体步骤:
a. 首先需要按照 2.3.2 节正确安装源代码包
b. 安装配置好 Cygwin 下的 arm-linux-gcc 工具链之后,在 Cygwin 中依次执行以 下命令完成 Linux 的编译过程(原则上第一次配置及编译 kernel,以下命令都需要执行):
$> source /tmp/s3ceb2410/set_env_linux.sh Å Linux 编译环境变量设置 $> cd $WORKDIR/kernel $> make mrproper $> make xconfig
linux 提供三个不同的命令配置 Linux,效果完全一样。
make config 控制台命令行方式配置命令
make menuconfig 文本菜单方式配置命令
make xconfig X 窗口图形界面方式配置命令 Å比较直观,常用
执行 make xconfig 命令后弹出配置窗口,如图:
3.5 内核定制界面
用户可以手动定制上图所示的各项(各选项的含义见 附录),也可以直接加载配置文 件,在 S3CEB2410 可以选择以下配置文件:
S3CEB2410-nand:编译内核映象在 Nand FlashK9S560832MB)中运行
Ж 注意:
如果使用配置文件 运行
S3CEB2410-amd
编译的内核映象,也可以正确烧写到
SMC
卡中
点击 Load Configuration from File 一项,即可通过下输入框来选择配置文件:
13
3.6 内核配置文件选择
输入./arch/arm/def-configs/S3CEB2410-nand,点击 OK 返回后,选择 Save a
nd Exit 项保存退出,完成内核及用户程序配置。
$> make dep $> make clean $> make zImage
命令含义如下:
Make mrprope
Make xconfig
Make dep
Make clean
Make zImage
:命令清楚所有的旧的配置和旧的编译目标文件等。
: 命令在图形界面下对内核进行配置。
:命令搜索
Linux
编译输出与源代码之间的依赖关系,并生成依赖文件。
:清除以前构造内核时生成的所有目标文件、模块文件和临时文件。
:编译
Linux
内核,生成压缩的内核映像文件。
最终在 kernel/arch/arm/boot/目录下生成文件“zImage” —Linux 内核 2.4.18 的压缩方式可执行映像文件。
3.3 root 文件系统编译
1、首先按照 2.3.3 安装 root 文件系统到$WORKDIR/目录下;
2、运行 cygwin,执行以下命令产生 cramfs 文件系统映象:
$> source /tmp/s3ceb2410/set_env_linux.sh Å Linux 编译环境变量设置 $> cd $SOURCEDIR/root $> ./mkcramfs $WORKDIR/root root.cramfs.new Å 可以随便命令新的文件系统映
编译生成文件系统映象文件 root.cramfs,再固化到开发系统 FLASH 上。
3.4 QTOPIA 编译
1、首先按照 2.3.3 安装 root-qtopia-china 文件系统到$WORKDIR/目录下;
2、运行 cygwin,执行以下命令产生 cramfs 文件系统映象:
$> source /tmp/edukit-2410/set_env_linux.sh Å Linux 编译环境变量设置 $> cd $SOURCEDIR/root
14
$> ./mkcramfs $WORKDIR/root-qtopia-china root-qtopia-china.cramfs.new
Å 可以随便命令新的文件系统映象
编译生成文件系统映象文件 root-qtopia-china.cramfs,再固化到开发系统 SMC 卡 上。
四 映象文件烧写
这一节提到的配置及映象文件均位于开发板光盘 Linux Flash Firmware 文件夹中。
烧写前,需要首先设置一下开发板的硬件跳线,使用不同的硬件资源及启动方式选择:
S3CEB2410 系统启动可由开发板上 SW306(OM0)跳线设置决定:
*SW306(OM0):断开 OPEN --Nor Flash 启动,运行测试程序及 Linux 系统
*SW306(OM0):短接 CLOSE --Nand Flash 启动,只能运行 Linux 系 统
Ж 注意:
在选择 一片接到
4.1 串口的设置
由于烧写过程中需要通过串口输入操作选项,并且利用串口作为信息输出平台,所以烧 写(其实调试时也需要)前首先需要运行一个能够进行串口收发的软件,可以选择像串口精
灵、DNW软件及 Windows 超级终端等,这里我们以 Windwos 平台的超级终端为例(大 部分版本的 Windows 安装程序都默认安装该组件。如果没有安装,请从 Windows 控制面 板添加删除 Windows 组件来安装即可)。点击 Windows 程序菜单中的附件,选择通讯中 的超级终端启动超级终端软件并设置超级终端为 115200 波特率,8 位数据位,无校验, 1 位停止位,无数据流控制。如图:
nor flash
CS0
就从那一片启动
启动后,可以通过
SW201
跳线选择从那一片
nor flash
启动,那
本书后面章节使用到串口收发均使用该软件及该设置
15
4.1 超级终端设置界面
4.2 程序烧写软件
可以使用 Embest online Flash Programmer for ARM(以下称 Flash Program mer)烧写启动文件、内核映像和文件系统到 Nor Flash 中。Flash Programmer 的使 用顺序是:
点击 Settings 菜单中的 Configure…来配置用于烧写的 Embest JTAG 仿真器参数;
点击 File 菜单中 Open 打开配置文件,这里使用开发板光盘中 Linux Flash Firmwa re 文件夹下 S3CEB2410&am29lv160db.cfg
选择 Program Flash 页修改要烧写的文件及对应的 Flash 地址(只修改起讫扇区);
1
2
16
3
4.2 FLASH 烧写界面
4.3 代码下载软件
我们可以通过 Embest IDE for ARM(以下简称 Embest IDE+ Embest JTAG 仿真器(可以是任何型号的 Embest JTAG for ARM 仿真器),构成代码下载平台,来实 现代码的下载,协助完成 Linux 烧写到 Nand Flash 中(在 Nor Flash 时不使用)。
使用方法是在 Embest IDE 中打开 Download.ews 工程,进行仿真器(Remote) 及下载(Download)的设置,在程序运行后连接到系统,下载代码后再运行(实际上是一 种介入运行的映象下载方式,适用于大文件下载)。具体操作见后面烧写到 Nand Flash 相关内容。
17
4.3 Embest IDE 下载(Download)设置
4.4 烧写 Nor FlashSW306:断开)
4.4.1. vivi 的烧写
1)在 Flash Programmer Program 页中选择要烧写的文件:开发板光盘中 Linu x Flash Firmware 文件夹下 vivi.nor;
vivi.norLinux 系统启动映象文件,源代码为 vivi-20030929.tar.bz2
2)在 Flash Programmer Flash 页中修改烧写起讫扇区,对应 Flash 地址 0x00 0000-0x00020000;对于 S3CEB2410 实验系统中使用的 AM29LV160DB 的扇区为: 1 5(烧写前手动选择)
4.4.2. 烧写 kernel
1)在 Flash Programmer Program 页中选择要烧写的文件:开发板光盘中 Linu x Flash Firmware 文件夹下 zImage;
zImageLinux 内核映象文件,源代码为 linux-2.4.18-rmk7-pxa1-mz5.tar.bz2
2)在 Flash Programmer Flash 页中修改烧写起讫扇区,对应 Flash 地址 0x00 020000-0x000E0000,对于 AM29LV160DB 对应的扇区是:6 17(烧写前手动选择)。
4.4.3. 烧写文件系统
1)在 Flash Programmer Program 页中选择要烧写的文件:开发板光盘中 Linu x Flash Firmware 文件夹下 zImage;
root.cramfscramfs 文件系统映象文件,源代码为 root-cramfs.tar.bz2
2)在 Flash Programmer Flash 页中修改烧写起讫扇区,对应 Flash 地址 0x00 0E0000-0x002000000,对于 AM29LV160DB 对应的扇区是:8 至 35(烧写前手动选 择)。
4.5 烧写 Nand Flash
4.5.1. vivi 的烧写
1)首先把 SW306 短接(从 Nand Flash 启动),运行 Embest online Flash
Programmer for ARMversion 3.0 以上),点击菜单 Settings 选择 Conf igure…项,配置当前使用的 Embest JTAG 仿真器型号,并设置相应的参数;
2)点击菜单 File 选择 Open 打开烧写配置文件 2410nand_vivi.cfg,在 Flash Pr
ogrammer Program 页中选择要烧写的文件:vivi.bon&load.bin 3)点击按钮 Progarm 开始烧写,直到烧写成功; 4)连接串口线到 PC 机 COM1,运行光盘中提供的 Windows 超级终端 Hyper Ter
minal.ht 5)把开发板重新加电,程序运行后,在超级终端上可以看到串口输出类似以下信息:
18
doing partition offset = 0 flag = 0 offset = 196608 flag = 0 offset = 1048576 flag = 0 check bad block part = 0 end = 196608 part = 1 end = 1048576 part = 2 end = 67108864 part0: offset = 0 size = 196608 bad_block = 0 part1: offset = 196608 size = 851968 bad_block = 0 part2: offset = 1048576 size = 66043904 bad_block = 0 vivi> // 可能输出乱码,表示正在等待下载文件
6)看到以上信息后,表示正在等待用户从超级终端下载文件。这时,请点击超级终
端菜单"传送"选择 Xmodem 方式下载 vivi.nand 文件,点击 OK 后等待下载烧
写结束即可。
以上为第一次烧写程序到 Nand Flash 中时的操作步骤。以后想要更新 vivi 代码时,
只需在加电后的 vivi 启动等待中,敲入空格键进入 vivi 界面环境,并输入以下命令即可:
vivi> load flash vivi x <回车> Å 烧写 vivi
再点击超级终端菜单"传送"发送 vivi.nand 文件(选择 Xmodem 方式)
4.5.2. 烧写 kernel
1)首先 SW306 设为短接(从 Nand Flash 启动),并确定已经烧写 vivi.nand
加电。 2)在 vivi 启动等待中,敲入空格键进入 vivi 界面环境,并输入以下命令:
vivi> load flash kernel x <回车> Å 烧写更新内核约 4 分钟即可烧写完毕
19
4.5.3. 烧写文件系统
1)首先 SW306 设为短接(从 Nand Flash 启动),确定已经成功烧写 vivi.nan
d,加电运行可以看到 vivi 启动信息,输入空格进入命令状态; 2)双击运行 Download.pjf 工程(将启动 Embest IDE 环境),点击连接 Remot
e connect,程序应该正在运行(命令按钮 STOP 为红色);在串口输入 help
看看有没有反应,如果没反应,点击 IDE 按钮:Reset ->Start(F5);再输入
help 测试,直到有反应为止; 3)如果可以输出一些信息,再点击 IDE 中的 Stop,配置 Debug Download
地址为 0x30000000,并点击 IDE 菜单 Project 选择 Settings 项,在 Downl
oad 页下拉 Category Download 项,在 Download File 选择 root-qtopia
-china.cramfs 文件,点击确定后:
(1) 点击 IDE 菜单 DEBUG 选择 Download 下载文件系统映象 Å 5
(2) 下载完毕后,点击 Start(F5)
(3) 然后在超级终端里输入: load flash root j (烧写更新文件系统) Å 7 分钟即可烧写完毕
Ж 注意:
ash
只能在“
vivi
的烧写”操作完成后,才可以按以上方法正确烧写
root
映象到
Nand Fl
20
附录:
内核及用户程序配置说明:
Linux 提供三个不同的命令进行 Linux 的配置,效果完全一样: make config 控制台命令行方式配置命令 make menuconfig 文本菜单方式配置命令 make xconfig X窗口图形界面方式配置命令
由于 X 窗口图形界面方式配置直观、方便,下面的介绍中将以这种配置方式为主。
配置命令执行完毕后生成文件.config,并且在 include/Linux/目录下生成一个自动配 置头文件 autoconf.h 保存配置信息。下次配置时产生新的.config autoconf.h 文件, 原来的.config 被改名为.config.old
z 配置目标平台并定制内核
执行 make xconfig 命令后弹出配置窗口,如图 5.1
下面是主要配置内容:
配置选项 主要配置功能
Code maturity level option
Prompt for development and/or incomplete code/divers Prompt for obsolete code/divers
Loadable module support
Enable loadable module support Set version information on all module
21
5.1 内核定制界面
1-2 内核定制选项说明
内核代码成熟等级配置
在设置界面中显示还在开发或者还没有完成的代码与驱动,部分设备必需选 择这个选项才能进行配置。 显示废弃的代码及驱动 模块加载支持配置 模块加载支持 对所有模块设置版本信息
symbols Kernel module loader
System Type
Arm system type
General setup
PCI support Compressed boot loader in ROM/flash Support hot-pluggable devices Networking support System V IPC BSD Process Accounting Sysctl support NWFPE math emulation Kernel core[/proc/kcore]format RISC OS personality Kernel-mode alignment trap handler
Parallel port support
Parallel port support PC-style hardware Support foreign hardware IEEE 1284 transfer mode
Memory Technology Devices(MTD)
Memory Technoogy Device(MTD) support Debugging MTD partitioning support MTD concatenating support Direct char device access to MTD devices Caching block device access to MTD devices FTL(Flash Translation Layer) support NFTL(NAND Flash Translation Layer) support RAM/ROM/Flash chip drivers Mapping drivers for chip access Self-contained MTD device drivers NAND Flash Device Drivers
Plug and Play configuration
Plug and Play support
Block devices
Normal PC floppy disk support XT hard disk support Parallel port IDE device support Loopback device support
内核模块自动加载 系统构架类型配置,选项根据 CPU 芯片不同有所变化,以下为 S3C2410 选项 选择 arm 内核的微处理器 常规配置 PCI 总线 配置 ROM/flash 中压缩的 boot loader 支持热插拔设备 网络支持 V 系统进程 IPC 调用机制 选择用户层进程帐目的动态接口支持 NWFPE 数学协处理器模拟 选择内核文件格式为 elf 或者 a.out 支持运行 Acorn RISC OS/Arthur 的二进制文件 支持网络协议纠错 并行口配置 是否支持并行口 PC 样式的硬件 支持外来硬件 IEEE 1284 传输模式 MTD 配置 内存技术设备支持 调试 支持 MTD 分区 支持 MTD 级联
MTD 字符设备直接访问 MTD 块设备缓冲访问
FTLFlash 转译层)支持 NFTLNAND Flash 转译层)支持
RAM/ROM/Flash 芯片驱动
芯片访问的映射驱动 自包含的 MTD 设备驱动 NAND Flash 设备驱动 即插即用配置 即插即用支持 块设备配置 标准 PC 软盘支持 XT 硬盘支持 并行口 IDE 设备支持 网络回环设备支持
22
Network block device support RAM disk support Defaults RAM disk size initial RAM [initrd] support
Multi-device support(RAID and LVM)
Multi-device support(RAID and LVM)
Networking options
Packet socket Packet socket : mmapped IO Netlink device emulation Network packet filtering(replaces ipchains) Socket Filteing Unix domain sockets TCP/IP networking IP:multicasting IP:advanced router IP:kernel level autoconfiguration IP:tunneling IP:GRE tunnels over IP IP:multicast routing IP:TCP Explicit Congestion Notification support The IPX protocol IP:TCP syncookies support(disabled per default) DECnet Support 802 1d Ethernet Bridging QoS and/or fair queueing
Network device support
Network device support ARCnet devices Dummy net driver support Bonding driver support Ethernet(10 or 100Mbit) Ethernet(1000Mbit) FDDI driver support HIPPI driver support(EXPERIMENTAL) PLIP(parallel port)support PPP(point-to-point protocol)support SLIP(serial line)support Wireless LAN(non-hamradio) Token Ring devices
网络块设备支持 RAM 虚拟盘支持
设置默认 RAM 空间大小 选择使用初始化进程初始化内存虚拟盘 多设备(RAID and LVM)配置 多设备(RAID and LVM)支持 网络配置 支持与网络设备直接会话 支持 IO 机制加快封包的双向沟通 支持特殊节点,此项很快将被移除合并 网络数据包过滤
Socket 通讯过滤 UNIX 域套接字支持 TCP/IP 网络支持 IP 数据报传送
选择特殊路由器功能 对 IP 内核级自动配置 支持隧道技术 支持 PPTP 和 GRE 隧道技术 多点传送路由技术
TCP 明确阻塞通知支持
IPX 协议 选择网络基本安全设置
DECnet 协议支持
选择 802.1d 生成树以太网连接支持 服务质量平衡调度 网络设备支持 是否支持网络设备 ARCnet 网络设备 虚拟网络设备驱动支持
Bonding 驱动支持 10 100Mbit 以太网 1000Mbit 以太网 FDDI(光纤数字传输接口)驱动 HIPPI 驱动支持 PLIP(并行口)驱动支持 PPP(点对点协议)支持 SLIP(串行线)支持
无线局域网 令牌环设备
23
Wan inte rfaces
Amateur Radio support IrDA (infrared) support ATA/IDE/MFM/RLL support SCSI support Synchronous Serial Interface IEEE 1394(FireWire) support (EXPERIMENTAL) I2O device support ISDN subsystem Input core support Character devices
Virtual terminal Support for console on virtual terminal Standard/generic(8250/16550 and compatible UARTs)serial support Serial drivers Support S3c2410 TouchScreen S3c2410 GPIO buttons support Unix98 PTY support I2C support Mice Joysticks QIC-02tape support Watchdog Cards S3c2410 Real Time Clock inter i8x0 Random Number Generator support Double Talk PC internal speech card support Siemens R3964 line discipline Applicom intelligent fieldbus card support Ftape the floppy tape device driver /dev/agpgart(AGP support) Direct Rendering Manager(Xfree86 4.1.0 and higher DRI support)
Multimedia devices File system
Quota support Kernel automounter support Kernel automounter version 4 support[also supports v3] Ext3 jounrnalling file system support
广域网接口 初级无线电广播设备支持配置 红外线设备配置 各种接口硬盘/光驱/磁带/软盘配置 小型计算机系统接口支持配置 同步串行接口 IEEE 1394 防火墙支持
智能输入输出设备支持配置
ISDN 支持配置 输入设备配置 字符设备配置
虚拟终端 支持虚拟终端上的控制台 标准/通用 8250/16550 及兼容 UARTS)串行口支持
串行设备驱动 支持 s3c2410 触摸屏 支持 S3c2410 GPIO 按钮 支持 Unix98 伪终端
支持 I2C 总线 鼠标支持 手柄支持 非 SCSI 界面的磁带支持 支持看门狗系统 S3c2410 实时时钟 数字键盘支持
模拟 PC 内置语音卡支持
选择 SIEMENS R3964 线路标准 Applicom 智能总线接口卡支持 支持连接到软驱的磁带机
直接贴图支持
多媒体设备支持 文件系统配置 单用户硬盘使用上限支持 支持内核自动映射 内核自动映射安装版本 3、4 的支持
EXT3 类型文件系统支持
24
DOS FAT is support Compressed ROMfile system support Virtual memory file system support(formers shm fs) Simple RAM-based file system ISO 9660 CDROM file system support Minis fs support FreeVxFS file system support(VERITAS VxFS(TM)compatible) NTFS file system support(read only) OS/2 HPFS file system support /proc file system support ROM file system support Second extended fs support System V/Xenix/V7/Coherent file system support UDF file(read only) Network File Systems Partition Types
Console drivers
VGA text console Frame-buffer support
Sound Multimedia Capabilities Port drivers USB support Bluetooth support Kernel hacking
Verbose kernel error messages Verbose user fault messages Include debugging information in kernel binary
DOS FAT文件格式的支持 ROM 文件系统支持
虚拟内存文件系统支持
简单 RAM 基本系统及 ISO9660 标准光盘文件系统支持
迷你 fs 支持
FreeVxFS 文件系统支持
NTFS 文件系统的支持 OS/2 文件系统/proc 文件系统支持
ROM 文件系统支持 第二扩展 fs 支持 V/Xenix/V7/Coherent文件系统支持
网络文件系统支持 分区类型 控制台驱动 VGA 文本界面控制台 帧缓冲驱动支持 音频技术支持 多媒体功能接口驱动 USB 接口支持配置 蓝牙支持配置 内核调试配置 内核错误信息报告 显示用户信息 内核二进制文件包含调试信息
按照实际系统所需完成定制后,点击 Save and Exit 保存退出,实现内核及用户程序
配置。
注释:用户使用
CEB2410
的电路原理图(
因时间仓促,手册中难免存在一些错误,敬请读者谅解,并欢迎指正,谢谢!
Embest S3CEB2410
PDF
格式,发货光盘中提供)。
实验系统与该手册时,还可参考
Embest S3
25
Loading...