向NXP官网Linux内核添加ALPHA开发板-测试

一.   Linux内核移植

上一篇文章 参考I.MX6ULL EVK 开发板的设置, 在 Linux 内核中添加正点原子的 I.MX6U-ALPHA 开发板,最后,也编译生成了 zImage和设备树文件。

本文验证 下载到开发板后,Linux内核是否可以成功运行。

本文继以下文章,地址如下:

向NXP官网Linux内核添加ALPHA开发板_凌肖战的博客-CSDN博客

二.  下载验证 Linux内核与设备树文件

向Linux 内核中添加正点原子的 I.MX6U-ALPHA 开发板,如果编译成功,这里会得到两个文件:

①  Linux 内核镜像文件: ./arm/arm/boot/zImage 。

②  ALPHA开发板对应的设备树文件: ./arch/arm/boot/dts/imx6ull-alientek-nand.dtb 。

1.  通过 tftp下载到开发板

(1)  使用 tftp服务的前提是:开发板可以 ping通 ubuntu虚拟机。这里 ping一下试试:

开发板上电后,进入 uboot命令模式,操作如下:

=> ping 192.168.1.66
FEC1 Waiting for PHY auto negotiation to complete.... done
Using FEC1 device
host 192.168.1.66 is alive

(2)  将之前编译好的 zImage、设备树文件复制到 ubuntu下之前设置好的 tftp目录下。

wangtian@wangtian-virtual-machine:~$ cd zhengdian_Linux/linux/kernel/linux-imx-rel_imx_4.1.15_2.1.0_ga/arch/arm/boot/zImage /home/wangtian/linux/tftp_file/

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

(3) 下载 zImage,设备树文件imx6ull-alientek-nand.dtb 到开发板

开发板上电后,进入 uboot命令模式。操作如下:

=> 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 = 5582720 (552f80 hex)
=> 

下载 设备树文件imx6ull-alientek-nand.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.9 MiB/s
done
Bytes transferred = 35969 (8c81 hex)
=> 

2.  启动开发板

以上步骤完成后,开发板的 uboot命令模式下,启动开发板,操作如下:

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

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 Wed Sep 27 17:48:20 CST 2023
CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine model: Freescale i.MX6 ULL 14x14 EVK Board
Reserved memory: failed to allocate memory for node 'linux,cma'
cma: Failed to reserve 320 MiB
Memory policy: Data cache writealloc
.....
hub 1-1:1.0: 4 ports detected
 (driver?)
010c           65536 ram12  (driver?)
010d           65536 ram13  (driver?)
010e           65536 ram14  (driver?)
010f           65536 ram15  (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

可以看出,Linux内核已经成功启动。最后的Log信息:

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
只是说明没有可用的文件系统,这里因为没有制作可用的文件系统。
Linux 内核启动成功,说明我们已经在 NXP 提供的 Linux 内核源码中添加了正点原子 I.MX6UL-ALPHA 开发板。

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