用NFS式挂载根文件系统
由于原内核用ATBOOT式载知道传递参数(像能网查nfs式都用U-boot式挂载)决定用u-boot重新载内核
1.载u-boot内核
1.1编译内核
1.1.1由于板光盘自带内核触摸屏驱配套要修改驱宏定义
LCD driver info */
//#define TFT3
#define TFT_NEW3 //板配套触摸屏参数
//#define vga800480 //默认参数需要注释掉
//#define vga1024
//#define vga800600
1.1.2修改参数
arch/arm/mach-s3c2410/common-smdk.c
static struct s3c2410_platform_nand smdk_nand_info = {
.tacls = 10,
.twrph0 = 30,
.twrph1 = 10,
...
原20,60,20,参数找nand flash需要修改面几否则uImage 文件载运行
1.1.3修改交叉编译器
vi Makefile
找
CROSS_COMPILE ?= arm-linux
行arm-linux-修改交叉编译器路径(Linux系统交叉编译工具路径)
/usr/local/arm/3.4.1/bin/arm-linux-
输入:wq 保存并退
1.1.4编译
make clean
make uImage
(执行命令前要执行make menuconfig,进行配置内核:
networking options-》IP:kernel level autoconfiguralion项
选file systems-》network file systems-》root file system on nfsnfs file system support
由于我解压板自带内核发现些都已经选直接编译即执行make uImage提示错误说能创建某文件我发现uImage已经没理错误直接拿用)
1.2载u-boot内核
1.2.1载u-boot
1.2.1.1 SJF2440 环境设置(见前面部图文介绍)
载u-boot用板自带工具SJF2440.exe安装其驱具体见说明文档
1.2.1.2 烧写u-boot.bin Nand flash
新建D:\atbootsjf2440.exe u-boot.bin复制文件夹内
(sjf2440.exe u-boot.bin 必须同目录)
具体见说明文档
1.2.1.3 利用u-boot载uImage文件系统arm板
由于板自带用autoflash.img自载uImage文件系统arm板现我太明白具体址自文件系统载文件系统用面用nfs挂载linux主机文件系统rootfs文件
具体见说明文档
2. 用nfs挂载根文件系统
2.1 虚拟机Linux建立文件夹
/home/water/rootfs
板自带系统直接拷进rootfs文件夹内
2.2linux主机 配置nfs 文件系统
修改/etc/exports 文件格式共享目录发板ip 址(权限设置):cat
/home/water/rootfs *(rw,sync,insecure,no_root_squash)
重启nfs 服务器:
/etc/init.d/nfs restart
2.3 IP设置
XP:192.168.1.100
linux:192.168.1.128
arm:192.168.1.7(用U-boot给内核传递)
2.4 给u-boot传递参数
启u-boot倒计结束前按空格键进入输入参数界面
输入:
AVANTECH# set bootargs root=/dev/nfs
nfsroot=192.168.1.128:/home/water/rootfs rw noinitrd
init=/linuxrc ip=192.168.1.7:192.168.1.128:192.168.1.128:255.255.255.0:avantech:eth0:off console=ttySAC0,115200
(注:面行代码能自换行缘故输入部部复制)
AVANTECH# saveenv
AVANTECH# reset
2.5ok
B