hello.zip

  • 浏览量:687
  • 下载量:16
  • 资料大小:59.12 KB
  • 日期:2015-06-02
  • 上传者:穿prada的008
  • 分享
  • 评论
  • 举报
  • 收藏

资料描述

    论坛里应该有一部分人是想学驱动,却不知道该怎么入门吧,在这里我教大家写一个helloworld的简单随linux内核加载的驱动。
    1.首先在/kernel/drivers下建一个新的文件夹hello,在文件夹里添加四个文件分别是hello.c,hello.hkconfig,makefile,
    hello.c文件里也有注释,这个文件主要就是为了注册和初始化设备文件以及定义驱动接口,主要是用啦file_operations这个结构体,大家想了解驱动可以先了解这个,这个程序里的注释可以帮助大家理解下一个简单驱动的结构
    2.修改kconfig,内容如下
     
    3.修改makefile,内容如下
     
    4.返回dirvers目录下修改kconfig,在最后加一句:source"drivers/hello/kconfig"
    5.修改makefle文件,在里面添加一句   obj-$(config_hello_test)       += hello/
    6.返回kernel目录下,执行makemenuconfig 在/driver路径下找到设备,选定(注:这里设备的名字和我们之前写的kconfig有一定的关系,修改kconfig的相应的参数,可以改变menu下的名字)
      
    ,然后返回
    makekernel.img
    7,然后创建测试文件,在driver目录下创建目录hellotest,加入两个文件test和android.mk
    然后mm,在sdk/out/target/product/rkpx2/system/bin目录下找到测试文件,(如mm无法执行,可在根目录下执行下sourcebuild/envsetup.sh)
    8.最后测试下结果,在window目录下,用adb工具把测试文件push进板中,然后在文件所在的位置给文件赋上权限,执行chmod777  test
    执行./testhello 或./testgoodbye可看到结果如下,即驱动可成功加载

     
评论(0)

登录后可评论,请 登录注册

   
相关资料
换一换