查看: 2823|回复: 2

[提问] iTOP-iMX6开发板-设备树内核-缺省文件文件的配置

[复制链接]
发表于 2019-7-11 11:28:15 | 显示全部楼层 |阅读模式
本文档主要讲解在iTOP-iMX6Q/D/PLUS 开发板的设备树内核(4.1.15)的缺省文件配置。
这里以 imx6q(imx6d 和 plus 的类似)的 qt 系统内核编译为例,Ubuntu16 的内核和
qt 通用,android6.0 的配置和 qt 的类似。
1 内核源码中默认缺省文件的位置
如下图所示,进入源码的“kernel_imx”目录,可以看到两个脚本
“build_android_kernel.sh”和“build_qt_kernel.sh”,分别用来编译 android 和 qt 的内
核和设备树,这部分在用户手册上有介绍,根据不同参数即可完成编译。
01.jpg
打开“build_qt_kernel.sh”文件,如下图所示,是脚本的一部分。
02.jpg
注意上图中的“make imx_v7_linux_defconfig”,这一句脚本是用来配置却文件的,这
是 linux 内核编译的一个默认用法,它表示内核的配置 config 文件,使用
“arch/arm/configs/”路径下一个叫“imx_v7_linux_defconfig”的缺省文件。如下图所
示,我们可以找到这个缺省文件。
03.jpg
另外还有 android 的缺省文件,使用命令“ls
arch/arm/configs/imx_v7_android_defconfig”,如下图所示。
04.jpg
2 配置缺省文件
知道了默认缺省文件之后,接下来我们来通过 menuconfig 修改缺省文件,检验到底对
不对。
启动开发板,如下图所示,可以看到有一个设备节点“/dev/leds_ctl”,这是 led 小灯的
设备节点。
05.jpg
我们现在要配置缺省文件,去掉这个驱动,让内核不能生成这个设备节点。首先,备份一
下默认的缺省文件,以免修改错误,使用命令“cp
arch/arm/configs/imx_v7_linux_defconfig imx_v7_linux_defconfig”
如下图所示,如果配置失败无法编译内核,可以用备份在 kernel_imx 路径下的
imx_v7_linux_defconfig 缺省文件覆盖掉 arch/arm/configs/路径下的
imx_v7_linux_defconfig 缺省文件。
06.jpg

接着配置配置需要使用.config 文件,如下图所示,使用命令“cp
arch/arm/configs/imx_v7_linux_defconfig .config”覆盖掉.config 文件。
07.jpg
启动 menuconfig,使用“export ARCH=arm”,然后使用“make menuconfig”命
令,进入 menuconfig 界面,如下图所示,一定要确保进入的是 arm 4.1.15 界面。
08.jpg
选择“Device Drivers->”->“Character devices->”,找到“Enable LEDS
config”,如下图所示。
09.jpg
敲回车,然后去掉 led 驱动的配置,如下图所示。
10.jpg
最后退出,保存修改,这样我们就得到新的.config 文件,选择 Yes。
11.jpg
使用新的.config 文件覆盖掉“arch/arm/configs”目录下的 imx_v7_linux_defconfig
文件,使用命令“cp -r .config arch/arm/configs/imx_v7_linux_defconfig”,如下图所
示。
12.jpg
最后编译执行“./build_qt_kernel.sh”脚本(其它版本核心板,需要传递参数,参考用
用户手册对应章节),编译 imx6q 的 qt 的内核,烧写到开发板。
会发现 led 的设备节点“/dev/leds_ctl”没有了,表明.config 和 menuconfig 以及缺省
文件使用方法正确。

 楼主| 发表于 2019-9-16 10:01:43 | 显示全部楼层
1114075-20190909105613327-514130339.jpg
发表于 2019-9-24 09:56:08 | 显示全部楼层
看过内容学习了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表