环境:ubuntu20.04
开发板:fs4412
linux内核版本 3.14
资料包:
1、将linux-3.14.tar.xz拷贝到ubuntu中下解压并进入Linux-3.14
tar xvf linux-3.14.tar.xz
cd linux-3.14
接着修改内核顶层目录下的Makefile
vim Makefile
导入默认配置
make exynos_defconfig
配置内核
make menuconfig
注:如果出现问题,先执行安装命令,另外终端窗口也要调大点,不然显示不出也会报错
sudo apt-get install libncurses5-dev
然后看到
退出,接着编译内核,可能会出现如果编译过程中提示缺少mkimage工具,需将前天编译的uboot源码中的tools/mkimage拷贝到ubuntu的/usr/bin目录下
cp u-boot-2013.01/tools/mkimage /usr/bin
make uImage
修改设备树文件生成设备树文件,以参考板origen的设备数文件为参考
cp arch/arm/boot/dts/exynos4412-origen.dts arch/arm/boot/dts/exynos4412-fs4412.dts
添加新文件需修改Makefile才能编译
vim arch/arm/boot/dts/Makefile
然后编译树文件
make dtbs
拷贝内核和设备树文件到/tftpboot目录下
cp arm/arm/boot/uImage ~/tftpboot
cp arch/arm/boot/dts/exynos4412-fs4412.dtb ~/tftpboot/
修改uboot启动参数(参考tftp那篇文章)
sudo /etc/init.d/network-manager stop //暂时关闭网络,保留ip
tftp 41000000 uImage
tftp 42000000 exynos4412-fs4412.dtb
pri //先查看botargs是否已经配置好(ip)
bootm 41000000 - 42000000
重启板子查看实验现象
报错原因:fs4412使用的设备树和origen的不同,网卡设备不同