远古之前买的JZ2440没怎么用,现在拿出来学习一下嵌入式Linux。一看,韦东山网站早已更新,资料也没得下载了。况且现在都是基于设备树开发驱动,JZ2440在设备树下的文章很少。因为还不是很熟,现在记录一下这个艰辛过程。
1、先不深入学习Uboot kernel 根文件系统的移植,直接从移植好的系统开始学习驱动方面的基础知识。那么就在网上找到网友们移植好的文件:(在此感谢,版权归原作者所有!)
先试的是在linux4.15 移植设备树到JZ2440_jz2440移植设备树-CSDN博客,但是烧写后不成功,不得已再找下面的。
uboot、根文件系统(rcS删除无线启动):
Zeepunt / linux_for_jz2440:https://gitee.com/zeepunt/linux_for_jz2440/blob/master
kernel:
使用上述kernel可以正常启动,但是是启动的USB无线网卡。而JZ2440是以太网口,所以另找到
支持设备树系统移植 - EdgeAI Lab (edgeai-lab.github.io)中的kernel linux-4.19-rc3
dts:重新学习
交叉编译工具使用 arm-zepunt-linux-gnueabi-gcc,在/etc/profile里增加export PATH=$PATH:/usr/local/arm/toolchain/bin(跟随自己的路径),source /etc/profile,reboot。
JZ2440启动后,在/etc/init.d/rcS里修改增加ifconfig eth0 192.168.42.222,
mount -t nfs -o nolock,vers=3 192.168.42.144:/home/embedfire/linux /mnt重启没成功,呵呵。
好吧,每次在shell命令行手动mount -t nfs -o nolock,vers=3 192.168.42.144:/home/embedfire/linux /mnt
终于成功,开整。。。