IMX6ULL移植篇-Linux内核镜像烧录验证

一.  Linux内核编译

本文验证之前编译的 Linux内核镜像是否可用。即烧录设备后是否可以成功启动。

本文续之前博文:

IMX6ULL移植篇-Linux内核编译_凌肖战的博客-CSDN博客

二.  Linux内核镜像烧录验证

1.  生成的 Linux内核镜像与 设备树(.dtb)

Linux内核编译后,生成的 Linux内核镜像文件在如下目录下(Linux根目录下):

/arch/arm/boot

zImage生成的路径,结果如下:

IMX6ULL移植篇-Linux内核镜像烧录验证_第1张图片

设备树的生成路径,如下:

./arch/arm/boot/dts

2.  烧录验证

(1)  tftp下载

搭建好 tftp服务,通过网络方式,将 zImage与设备树文件都下载到开发板上。

首先,保证设备可以 ping的通 ubuntu系统。

设备上电,进入uboot命令模式,串口操作如下所示:

    => ping 192.168.1.66
    Using FEC1 device
    host 192.168.1.66 is alive

其次,将 编译好的 zImage与设备树文件,拷贝到 tftp服务设置的目录下。我的 ubuntu系统拷贝到如下目录:

@wangtian-virtual-machine:~/zhengdian_Linux/linux/kernel/$ cp ./arch/arm/boot/zImage /home/wangtian/linux/tftp_file/

@wangtian-virtual-machine:~/zhengdian_Linux/linux/kernel/$ cp ./arch/arm/boot/dts/imx6ull-alientek-nand.dtb /home/wangtian/linux/tftp_file/

通过 tftp下载 zImage与 设备树文件( .dtb文件)

开发板调试串口输入如下命令:

下载 zImage

=> tftp 0x80800000 zImage
Using FEC1 device
TFTP from server 192.168.1.66; our IP address is 192.168.1.50
Filename 'zImage'.
Load address: 0x80800000
Loading: #################################################################
	 #################################################################
	 #################################################################
	 #################################################################
	 #################################################################
	 ##################################################
	 2.4 MiB/s
done
Bytes transferred = 5493072 (53d150 hex)

下载 设备树文件(.dtb):

=> tftp 0x83000000 imx6ull-alientek-nand.dtb
Using FEC1 device
TFTP from server 192.168.1.66; our IP address is 192.168.1.50
Filename 'imx6ull-alientek-nand.dtb'.
Load address: 0x83000000
Loading: ###
	 2.7 MiB/s
done
Bytes transferred = 39666 (9af2 hex)
=> 

(2) 启动验证

zImage 与设备树文件下载成功后,输入如下命令,启动:

=> bootz 0x80800000 - 0x83000000

输出如下:

=> bootz 0x80800000 - 0x83000000
Kernel image @ 0x80800000 [ 0x000000 - 0x53d150 ]
## Flattened Device Tree blob at 83000000
   Booting using the fdt blob at 0x83000000
   Using Device Tree in place at 83000000, end 8300caf1

Starting kernel ...

Booting Linux on physical CPU 0x0
Linux version 4.1.15 (wangtian@wangtian-virtual-machine) (gcc version 4.9.4 (Linaro GCC 4.9-2017.01) ) #1 SMP PREEMPT Tue Sep 19 15:13:36 CST 2023
CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d

从输出可以看出,Linux内核已经启动,zImage编译时间是:2023年9月19号15:13分

至此,说明Linux内核镜像可用,可以成功启动设备。

你可能感兴趣的:(系统移植篇,linux,arm开发)