基于S3C2410的VIVI移植
来源:互联网 发布:淘宝直播佣金怎么设置 编辑:程序博客网 时间:2024/05/18 10:05
Name
offset
size
size
vivi0
0x00020000 128k param 0x00020000 0x00010000 64k kernel 0x00030000 0x002d0000 2M+832K root 0x00300000 0x00300000 3M user 0x00600000 0x00a00000 10Mroot@VMUBUNTU:/usr/src# tar xjvf vivi-20030929.tar.bz2
进入到vivi源码目录
root@VMUBUNTU:/usr/src# cd vivi
root@VMUBUNTU:/usr/src/vivi#
(1)修改该目录下的Makefile文件,
第17行改为:LINUX_INCLUDE_DIR= /usr/local/arm/2.95.3/include,该路径为交叉编译工具链的Include目录
第25行改为:CROSS_COMPILE = /usr/local/arm/2.95.3/bin/arm-linux-,该路径为交叉编译工具链的路径
第88行改为:ARM_GCC_LIBS = /usr/local/arm/2.95.3/lib/gcc-lib/arm-linux/2.95.3,该路径为交叉编译工具链的库所在的目录.保存退出
(2)修改arch/s3c2410/smdk.c,设置NAND FLASH的分区信息,依照上表对NAND FLASH的分区规划,修改如下:
#ifdef CONFIG_S3C2410_NAND_BOOT
mtd_partition_t default_mtd_partitions[] = {
{
name: "vivi",
offset: 0,
size: 0x00020000,
flag: 0
}, {
name: "param",
offset: 0x00020000,
size: 0x00010000,
flag: 0
}, {
name: "kernel",
offset: 0x00030000,
size: 0x002d0000,
flag: 0
}, {
name: "root",
offset: 0x00300000,
size: 0x00300000,
flag: MF_BONFS
},{
name: "user",
offset: 0x00600000,
size: 0x00a00000,
flag: MF_JFFS2
}
};
其中这里的flash表示分区的标志,这个标志表示了这个分区的用途。通过source insight可以看到,这些标志定义在vivi/include/Priv_data.h
#define MF_LOCKED 0x00000001
#define MF_MUSTERASE 0x00000002
#define MF_BONFS 0x00000004
#define MF_JFFS2 0x00000008
#define MF_ISRAM 0x00000010
【4.配置编译运行vivi】
移植完成后,在vivi目录下执行配置编译vivi命令,会在vivi目录下生成vivi二进制文件
root@VMUBUNTU:/usr/src/vivi#make distclean
root@VMUBUNTU:/usr/src/vivi#make menuconfig
root@VMUBUNTU:/usr/src/vivi#make
会在vivi目录下生成vivi二进制文件,通过ls命令查看
root@VMUBUNTU:/usr/src/vivi# ls
arch COPYING CVS Documentation drivers include init lib Makefile Rules.make scripts test util vivi vivi-elf vivi.map
打开Euukit-III配套的FLASH烧写程序Embest Online Flash Programmer,先载入烧写VIVI的FLASH配置文档(S3C2410&NandFLash_vivi.cfg),把vivi烧写到NAND FLASH中。注意,烧写之前,一定要把s3c2410子板的SW104跳线短接。烧写完成,重新启动开发板,可以在Windows的超级终端中看到VIVI的如下启动信息
VIVI version 0.1.4 (root@VMUBUNTU) (gcc version 2.95.3 20010315 (release)) #0.1.
4 Sat Oct 23 15:33:59 CST 2010
MMU table base address = 0x33DFC000
Succeed memory mapping.
NAND device: Manufacture ID: 0xec, Chip ID: 0x75 (Samsung KM29U256T)
Could not found stored vivi parameters. Use default vivi parameters.
Press Return to start the LINUX now, any other key for vivi
type "help" for help.
在vivi提示符下,输入part show命令,可以看到Flash的分区信息如下
vivi> part show
mtdpart info. (5 partitions)
name offset size flag
------------------------------------------------
vivi : 0x00000000 0x00020000 0 128k
param : 0x00020000 0x00010000 0 64k
kernel : 0x00030000 0x002d0000 0 2M+832k
root : 0x00300000 0x00300000 4 3M
user : 0x00600000 0x00a00000 8 10M
vivi>
表示VIVI移植成功,下一步就要做LINUX2.6.18内核移植了。
- 基于S3C2410的VIVI移植
- 基于S3C2410的Linux移植
- s3c2410的Bootloader(Vivi)简介
- 基于S3C2410的Linux全线移植文档
- 基于S3C2410 的MDK 例程移植
- 基于S3C2410的Linux全线移植文档
- 基于S3C2410的Linux全线移植文档
- s3c2410的Bootloader(Vivi)源代码分析
- s3c2410的bootloader(vivi)简介
- s3c2410的Bootloader(Vivi)源代码分析
- Ubuntu 下vivi的移植
- liunx下vivi的移植
- vivi移植的悲喜交集经过
- s3c2410 基于linux2.6的 cs8900网卡的移植
- 基于s3c2410的CramFS根文件系统的移植
- 基于s3c2410的tslib1.4的编译与移植~
- 基于s3c2410的uboot1.2.0的分析以及移植
- 基于ARM S3C2410的TSLIB1.4的移植过程详解
- 代理回调
- vivi以及内核编译过程以及其中遇到的一些问题
- 抽象类和接口联系与区别
- malloc和free的原理
- 生きて死ぬ、その清々しさ
- 基于S3C2410的VIVI移植
- android_5.0简介
- 很费解的mysql写法
- HTTP请求和头信息与HTML页面元信息标签解析(一)
- 什么才是优秀的用户界面设计
- C语言\r\n和\n区别
- JAVA学习笔记(复习)-----3、 JAVA基础(二)
- The volatile keyword in Java
- Data truncation: Data too long for column 'id' at row 1