广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    如何将驱动添加进内核?

    来源:网络收集  点击:  时间:2024-03-01
    【导读】:
    进行底层驱动开发,必不可少的就是将驱动程序加载进内核,然而我们熟知的方法又有哪些呢?今天在这里介绍2种常用的方法,这里是基于MINI2440开发的;工具/原料moreUbuntu12.04操作系统和测试驱动程序(beep_arv.c)方法/步骤1/9分步阅读

    在介绍2种方法前,必须知道的知识点:

    1.关联文件Makefile:

    Makefile:分布在Linux内核源代码中的Makefile用于定义Linux内核的编译规则;

    2.管理文件Kconfig:

    给用户提供配置选择的功能;

    配置工具:

    1)包括配置命令解析器;

    2)配置用户界面;menuconfig || xconfig;

    3)通过脚本语言编写的;

    3.

    ---tristate 代表三种状态:1.不选择,2.选择直接编译进内核,加载驱动到内核里,3.动态加载驱动;

    ---bool 代表两种状态,1.不选择,2.选择;

    2/9

    ---Mini2440 module sample这个是在make menuconfig时刷出的提示字符;

    ---depends on MACH_MINI2440 这个配置选项出现在make menuconfig菜单栏下,在内核配置中必须选中、MACH_MINI2440;

    ---default m if MACH_MINI2440 这个如果选中了MACH_MINI2440,默认是手

    动加载这个驱动;

    help:提示帮助信息;

    3/9

    在了解了基本的知识点,便开始进行第一种添加驱动的方法,本次交流是以beep_arv.c蜂鸣驱动程序为基础的

    方法一:

    1)进入内核的驱动目录;

    #cp beep_arv.c /XXX/.../linux-XXXl/drivers/char

    2)进入Kconfig添加驱动信息;

    #cd /XXX/linux-XXX/.../drivers/char

    #vim Kconfig

    添加基本信息:

    config BEEP_MINI2440

    tristate ---HAH--- BEEP

    default

    help

    this is test makefile!

    4/9

    3)进入Makefile添加驱动编译信息;

    #vim Makefile

    添加基本信息:

    obj-$(CONFIG-BEEP_MINI2440) +=beep_drv.o

    5/9

    方法一结果:

    在--Character devices下就能看到配置信息了;

    6/9

    方法二:

    1)进入驱动目录,创建BEED目录;

    #cd /XXX/.../linux-XXX/drivers/char

    #mkdir beep

    2)将beep_arv.c驱动程序复制到新建目录下;

    #cp beep_arv.c /XXX/.../linux-XXXl/drivers/char/beep

    3)创建Makefile和Kconfig文件

    #cd char/beep

    #touch Makefile Kconfig

    #chmod 755 Makefile

    #chmod 755 Kconfig

    7/9

    4)进入Kconfig添加驱动信息;

    #vim Kconfig

    添加基本信息:

    config BEEP_MINI2440

    tristate ---HAH--- BEEP

    default

    help

    this is test makefile!

    8/9

    5)进入Makefile添加驱动编译信息;

    #vim Makefile

    添加基本信息:

    obj-$(CONFIG_BEEP_MINI2440) +=beep_drv.o

    9/9

    6)并且要到上一级目录的Makefile和Kconfig添加驱动信息;

    #cd ../

    #vim Makefile

    #vim Kconfig

    注意事项

    特别注意:依赖depends on为配置信息,前提配置必须支持所依赖的对象

    快乐生活,学会隐忍

    电脑技术
    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_185209.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-04 23:38:34  耗时:0.023
    0.0231s