soc:imx6ull
存储:nand flash
内核版本:4.1.15
由于原先文件系统的编译器比较老,不支持 imx-kobs 的一些结构体;
下载了一个较新的编译器:gcc-arm-11.2-2022.02-x86_64-arm-none-linux-gnueabihf.tar.xz
使用静态编译的方式,来运行 kobs-ng 工具;
imx-kobs 源码下载:
git clone https://source.codeaurora.org/external/imx/cafatgithub/imx-kobs -b github.com/master
交叉编译器环境配置(按各自的目录来)
- export ARCH=arm
- export CROSS_COMPILE=arm-none-linux-gnueabihf-
- export PATH=$PATH:/opt/work/gcc-arm-11.2-2022.02-x86_64-arm-none-linux-gnueabihf/bin
imx-kobs 环境配置:(参考 buildroot 中的编译)
./configure CC=arm-none-linux-gnueabihf-gcc --target=arm-none-linux-gnueabihf --host=arm-none-linux-gnueabihf CFLAGS="-static -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -D_FORTIFY_SOURCE=1"
imx-kobs 编译:
make
imx-kobs 清除环境配置和编译文件:
make distclean
kobs-ng 工具就在 imx-kobs/src 目录下;
1. 挂载 debugfs
mount -t debugfs debugfs /sys/kernel/debug
2. 用 kobs-ng 烧写 u-boot;默认烧写在 /dev/mtd0 分区,按需修改;
./kobs-ng init -x -v u-boot.imx