1.在移植u-boot时遇见的问题
- 编译后的uboot设置好tftp和nfs后一boot就直接重启
- 是因为我当时虚拟机上有交叉编译器我用的7点几的交叉编译器,要用正点原子要求的版本
- nfs挂载不上
- 原因很多但我踩的坑是我用了正点原子提供的虚拟机,他虚拟机安装的时候不能用默认的系统,他们文档里说的有,这个默认系统只是拿来参考,要根据文档自己新建一个系统把他们提供的参考的系统内容拷贝到自己新建的系统
2.kernel遇见的问题
- 当service tftpd-hpa restart重启tftp时候遇见下面这个报错是因为/etc/default/tftpd-hpa 文件里内容被我修改了,我挂载的目录没写对所以报错
Job for tftpd-hpa.service failed because the control process exited with error code. See "systemctl status tftpd-hpa.service" and "journalctl -xe" for details.
3.rootfs根文件
- 没有遇见什么问题还是比较顺利的
4.使用MfgTool烧写
- 开始烧写就提示loading uboot
- 需要按下复位键
- 当uboot,kernel烧完后他会自动重启下,当重启后显示Partitioning...
- 如果烧录时串口提示wait for /dev/mmcblk0这是因为sd卡的问题可以把sd卡格式化一下,格式化后在烧写过程中再遇见可以按下复位键也是有奇效的
5.学习体会
- imx6ull的移植只要下载了正点的虚拟机还是简单了很多,个人觉得比较重要的就是知道怎么改uboot和kernel的源码
- 改的也不是很多,uboot和kernel的目录格式因为基本一样所以它俩都是去
- arch/arm/configs下改配置,后缀是deconfig(这个后缀意识是阉割的一种配置)
- arch/arm/boot/dts里改设备树
- 在顶层makefile里
- ARCH(架构类型)设置为arm
-
CROSS_COMPILE(编译器) 设置为arm-linux-gnueabihf-
-
make的时候加上imx_alientek_emmc_defconfig 这是configs里我们的配置文件