Firefly开源社区

标题: hello 驱动编写(采用模块加载的方式开发驱动) [打印本页]

作者: 天道酬勤David    时间: 2018-7-28 15:49
标题: hello 驱动编写(采用模块加载的方式开发驱动)
本帖最后由 天道酬勤David 于 2018-7-28 15:49 编辑

在已经成功编译好了内核后,后边准备进行驱动开发的准备工作。用hello驱动去验证交叉编译的环境。
1、介绍一下目前主机上我已经建好了工作目录/home/xxw/rk3288   .该目录下的相关文件如下:
主要是编译器,内核原文件、和hello驱动文件        看图片1
2、添加编译器到环境变量
    vim ~/.bashrc   看图片2
在文件最后加上编译器的路径
    看图片3
3、hello和Makefile
      我是直接用的阿sai的hello.c的文件,添加了prink的输出级别,不然在加载驱动的时候看不见log打印。
hello.c的源文件
看图片4
makefile文件内容
看图片5
主要注意的编译器路径、内核路径、和驱动源文件名
4、开始编译驱动
   具体指令如下,我们看到hello.ko文件是已经生成了
看图片6
5、下载到开发板,运行驱动
拷贝驱动到开发的mnt目录下,然后insmod 驱动。可以看到驱动有打印相应的log。
或者rmmod的时候,已有相应log。
  看图片7
至此说明我们linux驱动的编译环境基本没有问题了。








1.png (18.27 KB, 下载次数: 638)

1.png

2.png (8.74 KB, 下载次数: 663)

2.png

3.png (31.72 KB, 下载次数: 636)

3.png

4.png (56.3 KB, 下载次数: 681)

4.png

5.png (40.2 KB, 下载次数: 618)

5.png

6.png (66.65 KB, 下载次数: 637)

6.png

7.png (9.34 KB, 下载次数: 613)

7.png

作者: 天道酬勤David    时间: 2018-7-30 09:26
自己沙发一下
作者: sheqw    时间: 2018-8-2 09:26

作者: 1210443832    时间: 2018-10-24 09:38
请问如何把ko文件如何下载到开发板?
作者: williamzhang    时间: 2018-10-24 12:13
1210443832 发表于 2018-10-24 09:38
请问如何把ko文件如何下载到开发板?

这个可以有多种方法吧,T卡,网络,nfs应该都可以吧




欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/) Powered by Discuz! X3.1