tftp加载Linux内核及rootfs

一、通过tftp加载内核和根文件系统

1、将内核镜像“uImage”、“exynos4412-fs4412.dtb”和根文件系统“ramdisk”拷贝到ubuntu中tftp工作目录下,并修改这些文件的权限,命令如下:

sudo chmod 777 /tftpboot/*

2、重启tftp服务器,命令如下:

sudo service tftpd-hpa restart

3、连接开发板与电脑,在uboot交互模式下,设置uboot的启动参数:
①bootm :启动指定内存地址上的Linux内核并为内核传递参数
bootm kernel-addr ramdisk-addr dtb-addr
注:kernel-addr:内核的下载地址
ramdisk-addr:根文件系统的下载地址
dtb-addr:设备数的下载地址
若不使用相应的地址,对应的位置写“—”
② bootarges:eg:

setenv bootargs root=/dev/nfs nfsroot=xxx.xxx.xxx.xxx:/opt/4412/rootfs rw console=ttySAC2,115200 init=/linuxrc ip=***.***.***.***

注:
root: 根文件系统类型
nfsroot:网络文件系统路径
rw:操作网络文件系统的权限(rw)
console:控制台(使用串口2,波特率115200)
init :init进程的位置(/linuxrc)
ip:linux启动后自身的IP
4、使用网线连接开发板与电脑,然后给开发板重新上电,上电之后观察uboot是否能通过tftp加载和启动内核,启动时是否能挂载根文件系统(ext2),启动完成后在终端输入linux下的shell命令测试是否正常。

你可能感兴趣的:(系统移植,linux,ubuntu,驱动开发,内核)