1 | 综合篇 | 点我 |
---|---|---|
2 | uboot移植 | 点我 |
3 | uboot lcd驱动 | 点我 |
4 | kernel移植 | 点我 |
5 | kernel lcd驱动 | 点我 |
6 | 摄像头驱动 | 点我 |
7 | ubuntu base移植 | 点我 |
8 | 挂载网络文件系统 | 点我 |
9 | qt移植 | 点我 |
10 | 搭建qt交叉编译 | 点我 |
11 | wifi移植 | 点我 |
首先下载好NXP官方的 linux-imx-rel_imx_4.1.15_2.1.0_ga.tar.bz2源码,复制到ubuntu中并解压
tar -jxvf linux-imx-rel_imx_4.1.15_2.1.0_ga.tar.bz2
解压完成后进入linux-imx-rel_imx_4.1.15_2.1.0_ga文件夹,通过ls查看有哪些文件
1 在 Linux 中添加自己的开发板
1.1 添加开发板默认配置文件
将 arch/arm/configs 目 录 下 的 imx_v7_mfg_defconfig 重 新 复 制 一 份 , 命 名 为imx_user_emmc_defconfig
cd arch/arm/configs/
cp imx_v7_defconfig imx_user_emmc_defconfig
1.2 添加开发板对应的设备树文件
添加设备树文件,进入目录 arch/arm/boot/dts 中,复制一份 imx6ull-14x14-evk.dts,然后将其重命名为 imx6ull-user-emmc.dts
cd arch/arm/boot/dts/
cp imx6ull-14x14-evk.dts imx6ull-user-emmc.dts
.dts 是设备树源码文件,编译 Linux 的时候会将其编译为.dtb 文件。imx6ull-user-emmc.dts创 建 好 以 后 我 们 还 需 要 修 改 文 件 arch/arm/boot/dts/Makefile , 找 到 “ dtb-$(CONFIG_SOC_IMX6ULL)”配置项,在此配置项中加入“imx6ull-user-emmc.dtb”
第 422 行为“imx6ull-user-emmc.dtb”,这样编译 Linux 的时候就可以从 imx6ull-user-mmc.dts 编译出 imx6ull-user-emmc.dtb 文件了。
1.3 编译测试
我 们 可 以 创 建 一 个 编 译 脚 本 ,imx6ull_user_emmc.sh,脚本内容如下:
#!/bin/bash
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- imx_user_emmc_defconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- menuconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j8
添加可执行权限并编译内核:
chmod 777 imx6ull_user_emmc.sh //给予可执行权限
./imx6ull_user_emmc.sh //执行 shell 脚本编译内核