Board logo

标题: 海思Hi3520D红外驱动及功能测试 [打印本页]

作者: look_w    时间: 2019-1-18 19:55     标题: 海思Hi3520D红外驱动及功能测试

我使用的是海思的Hi3520DV300,SDK包里是有携带红外的驱动以及红外的测试程序,但是该代码不能直接使用,有几个坑,修改后测试正常。从官方提供的资料来看,该驱动以及测试程序都是比较旧的,应该做一些修改可以适用于海思的其它系列芯片。

官方提供的代码在SDK中的hisi-irda目录,文件结构如下:

    biao@ubuntu:~/Hi3520DV300_SDK/Hi3521A_SDK_V1.0.3.1/drv/hisi-irda$ tree
    .
    ├── hiir.c
    ├── hiir_codedef.h
    ├── hiir.h
    ├── Makefile
    └── test
        ├── hiir_codedef.h
        ├── hiir.h
        ├── hiir_test.c
        └── Makefile
     
    1 directory, 8 files
    biao@ubuntu:~/Hi3520DV300_SDK/Hi3521A_SDK_V1.0.3.1/drv/hisi-irda$

SDK编译的时候并不会编译该文件夹,所以需要我们自己手动编译,修改Makefile:

    obj-m := hiir.o
     
    KDIR := /home/biao/NVR_Hi3520/linux-3.10.y_Wifi_NandFlash/
    PWD ?= $(shell pwd)
     
    #make -C $(KDIR) M=$(PWD) modules
    #make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux-  -C $(KDIR) M=$(PWD) modules
    all:
        make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux-  -C $(KDIR) M=$(PWD) modules
     
    clean:
        rm -rf *.o

Makefile注意几点:

    1.KDIR表示kernel 所在的路径,按自己的实际路径填写

    2.需要指定arm的架构和交叉编译工具,官方给的make -C $(KDIR) M=$(PWD) modules 需要修改为make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux-  -C $(KDIR) M=$(PWD) modules   交叉编译工具按自己实际使用的来配置。

    3.编译模块驱动,需要配置内核,使它支持模块驱动。配置后需要全编译内核。配置如下:选择Enable loadable module support 然后再选择里面的前4个选项。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0