前文中说到如何开启了ubuntu 12.04的nfs网络文件系统,那么今天就接下去研究一下如何使用友善之臂的mini2440开发板来进行nfs网络文件系统的启动加载。
如前所述,已经在ubuntu上面配置好了nfs文件系统的目录和服务。我的nfs目录是/opt/FriendlyARM/mini2440/rootfs /mnt/nfs。
此时,根据mini2440的开发板操作手册,便可直接启动开发板,使用nand模式启动,接好电源、串口和网线,上电,便可看到开发板输出的调试信息:
##### FriendlyARM BIOS for 2440 #####
[x] bon part 0 320k 2368k
[v] Download vivi
[k] Download linux kernel
[y] Download root_yaffs image
[a] Absolute User Application
[n] Download Nboot
[l] Download WinCE boot-logo
[w] Download WinCE NK.bin
[d] Download & Run
[z] Download zImage into RAM
[g] Boot linux from RAM
[f] Format the nand flash
[b] Boot the system
[s] Set the boot parameters
[u] Backup NAND Flash to HOST through USB(upload)
[r] Restore NAND Flash from HOST through USB
[q] Goto shell of vivi
[i] Version: 1026-12
Enter your selection:
此时,输入q。开发板会提示:
Supervivi>
表示已经成功进入了命令行模式。然后输入:
Supervivi> param set linux_cmd_line "console=ttySAC0 root=/dev/nfs nfsroot=192.168.100.108:/opt/FriendlyARM/mini2440/rootfs ip=192.168.100.230:192.168.100.108:192.168.100.1:255.255.255.0:sbc2440.arm9.net:eth0:off"
其中各参数的含义如下:
–“nfsroot” 是自己主机的 IP 地址,以及nfs文件系统的目录地址。
–“ip=”后面:
第一项(192.168.100.230)是目标板的临时 IP(注意不要和局域网内其他 IP 冲突);
第二项(192.168.100.108)是开发主机的 IP;
第三项(192.168.100.1)是目标板上网关(GW)的设置;
第四项(255.255.255.0)是子网掩码;
第五项(sbc2440.arm9.net)是开发主机的名字(无关紧要,可随便填写);
–“eth0” 是网卡设备的名称;
开发板会提示:
Change linux command line to "console=ttySAC0 root=/dev/nfs nfsroot=192.168.100.108:/opt/FriendlyARM/mini2440/rootfs ip=192.168.100.230:192.168.100.108:192.168.1.1:255.255.255.0:sbc2440.arm9.net:eth0:off"
表明已经成功接受并设置了该命令。
但是,开发板有可能会提示错误,说命令非法。此时别急,回过头来看下,你再复制上述命令时,是不是从记事本里面复制的?确认一下你windows的记事本程序是否开启了自动换行显示功能。也就是说,可能你复制出来的上面那一长串命令里面携带了一个回车符,这就导致linux识别错误了。建议在linux 下复制这段话,或者用其他工具,比如UE,去掉回车换行符即可。
之后,直接在命令行内输入“boot”,便可看到linux启动的信息了:
Copy linux kernel from 0x00060000 to 0x30008000, size = 0x00500000 ... done
zImage magic = 0x016f2818
Setup linux parameters at 0x30000100
linux command line is: "console=ttySAC0 root=/dev/nfs nfsroot=192.168.100.108:/opt/FriendlyARM/mini2440/rootfs ip=192.168.100.230:192.168.100.108:192.168.1.1:255.255.255.0:sbc2440.arm9.net:eth0:off"
MACH_TYPE = 1999
NOW, Booting Linux......
Uncompressing Linux................................................................................................................................................... done, booting the kernel.
Linux version 2.6.32.2-FriendlyARM (root@LEON) (gcc version 4.4.3 (ctng-1.6.1) ) #1 Sat Jan 4 21:10:09 CST 2014
CPU: ARM920T [41129200] revision 0 (ARMv4T), cr=c0007177
CPU: VIVT data cache, VIVT instruction cache
Machine: FriendlyARM Mini2440 development board
ATAG_INITRD is deprecated; please update your bootloader.
Memory policy: ECC disabled, Data cache writeback
CPU S3C2440A (id 0x32440001)
S3C24XX Clocks, (c) 2004 Simtec Electronics
S3C244X: core 405.000 MHz, memory 101.250 MHz, peripheral 50.625 MHz
CLOCK: Slow mode (1.500 MHz), fast, MPLL on, UPLL on
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 16256
Kernel command line: console=ttySAC0 root=/dev/nfs nfsroot=192.168.100.108:/opt/FriendlyARM/mini2440/rootfs ip=192.168.100.230:192.168.100.108:192.168.1.1:255.255.255.0:sbc2440.arm9.net:eth0:off
PID hash table entries: 256 (order: -2, 1024 bytes)
OK,通过super-vivi的命令行,借助于nfs网络文件系统顺利启动成功!明天我们再继续研究如何利用u-boot进行nfs启动!
搞定!收工!
上一篇:玩转mini2440开发板之【在Ubuntu 14.04下编译安装tslib 1.4版本】
下一篇:玩转mini2440开发板之【如何设置开发板的网络参数】
推荐阅读最新更新时间:2024-11-13 06:16
设计资源 培训 开发板 精华推荐
- CS5095E三节锂电池升压充电电路
- HV9805高压LED驱动典型应用电路
- 使用 Analog Devices 的 ADM3062EBCPZ 的参考设计
- TL431 限流器或电流源稳压器的典型应用
- CN0363
- 用于四象限乘法电路的AD8626ARZ-REEL精密放大器典型应用电路
- ADP2108UJ-2.5-EVALZ,用于 600mA、3 MHz 降压稳压器的评估板
- MC44602 高性能电流模式控制器 150 瓦离线反激式稳压器的典型应用
- AL9910AEV2,基于 AL9910 大电流和高电压 LED 驱动器的评估板
- AM3G-1212SZ 12V 3 瓦 DC-DC 转换器的典型应用