![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux驱动开发
文章平均质量分 93
奇奇猴
这个作者很懒,什么都没留下…
展开
-
linux安装驱动模块时提示 loading out-of-tree module taints kernel
在刚开始学习linux设备驱动时,我们写驱动文件时可能并不会把他们加入到Kconfig的树中,而是直接编译产生.ko文件后,在开发板上运行insmod xxx.ko,此时虽然安装模块成功了,但是会提示loading out-of-tree module taints kernel。英文的意思是:加载的树外模块污染了内核。从这段描述可以猜到,这是我们没有把此驱动模块加入到Kconfig树导致的,即make menuconfig的配置选项中没有此驱动。此时这个驱动模块仍能正确加载和使用。如果我们只是学习怎么写原创 2020-09-16 14:19:19 · 9879 阅读 · 0 评论 -
向Linux Kconfig树中添加驱动配置信息
这里使用“Kconfig树”这个词是因为我不知道准确的说法应该是怎样的,我想表达的意思是:make menuconfig的菜单中能够显示我们自己写的驱动信息,我们可以通过make menuconfig来决定是否使用该驱动,这样也让内核知道我们驱动的存在,而不是让我们写的驱动成为一个野生的程序以致污染内核。接下来讲怎么向Linux Kconfig树中添加驱动配置信息。主要涉及的文件就三个,第一个是你写的驱动源文件(xxx.c),第二个是Kconfig文件,第三个是Makefile文件。1、驱动源文件驱动原创 2020-09-16 14:15:54 · 3492 阅读 · 0 评论 -
ubuntu20.04.1 64位搭建嵌入式linux开发环境
目录背景开发环境的搭建1.交叉编译工具的安装2.开发工具和依赖库的安装2.1. 必需部分2.2.可选部分ubuntu20.04.1 64位配置和编译Linux3.0内核背景市面上的嵌入式linux开发板厂商提供给客户的开发环境往往是低版本的ubuntu,因为他们没有精力去测试每个版本的ubuntu,一旦某个版本调通了,这个版本就用一直用下去,不会换新的,这主要是考虑到人力成本。理论上,高版本的ubuntu也是可以搭建好嵌入式linux开发环境的,只不过相比低版本的ubuntu,可能会做更多一些的工作,原创 2020-08-14 14:36:21 · 2661 阅读 · 0 评论 -
使用IDE(vs code)进行嵌入式linux驱动开发
目录背景系统版本vs code的安装和使用安装新建工程搭建交叉开发环境并编译内核设置vs code工程的头文件查找路径编辑驱动文件和Makefile背景早期的ubuntu版本上没有好的可用的IDE,那个时候嵌入式linux驱动开发人员多使用vim进行编码;对于没有图像界面的linux服务器,开发人员更是只能选择vim这一编辑工具。但是,接触过IDE的人会意识到vim的不方便:需要记一些指令,而且没有代码自动补全,没有代码提示,没有括号自动补全,没有回车后自动缩进等等。后来ubuntu上有了gedit这原创 2020-08-13 19:13:03 · 9070 阅读 · 1 评论 -
在windows下解压压缩文件时出现文件名重名的问题
之前我从百度网盘上下下来了一些arm linux开发板的资料,其中有一些tar.gz文件,这种文件一般都是在linux下用tar命令打包压缩得到的。windows上的用于解压的软件,比如rar,360压缩等都是可以打开和解压这种格式的压缩文件的,但是极有可能出问题:出现同名文件,询问你是否需要替换,如下图所示。出现这种状况的原因是linux的文件系统在命名时是区分大小写的,而windows的文件系统在命名时并不区分大小写。不信的话,你可以做个实验,在windows上新建一个名为aa的文件夹,然后再新建原创 2020-08-13 15:19:34 · 9177 阅读 · 0 评论