zoukankan      html  css  js  c++  java
  • openwrt系统之字符设备驱动软件包加载、测试程序加载

    1、首先将软件包(如mydrv)放到ubuntu虚拟机openwrt/trunk/package/kernel/目录下
    
    2、回到openwrt/trunk/目录下,make menuconfig进行配置,把我们复制的软件包编译进去
      Kemel modules -> Other modules -> kmod-mydrv(按y选中)保存退出
    
    3、然后在当前目录执行make  package/kernel/mydrv/compile  V=99
    
    4、编译结束后,固件在openwrt/trunk/bin/ramips/packages/base目录下
      kmod-mydrv_1.10.36-1_ramips_24kec.ipk
    
    5、执行make 得到OpenWrt系统固件位于penwrt/trunk/bin/ramips下,
     openwrt-ramips-rt305x-mpr-a2-squashfs-sysupgrade.bin
    6、烧写固件进入开发板,再加载我们的模块.ipk文件(使用ssh网络服务)
    
    7、进入开发板系统文件找到你加载的模块位置文件夹,进行ipk的安装
       opkg intall kmod-mydrv_1.10.36-1_ramips_24kec.ipk
    
    8、安装完成后,到/lib/modules/3.14.25/下找到我们的驱动mydrv.ko
    
    9、加载驱动 insmod mydrv.ko
    
    10、卸载驱动 rmmod mydir.ko
    
    
    
    驱动开机自动加载
      虽然我们通过 opkg insall 得到了.ko 为后缀的驱动模块,但是每次要使用都得进行 
    insmod,比较麻烦,我们可以让系统开机后自动的加载该驱动模块。 
      首先进入到特定的目录: 
      cd  /etc/modules.d 
      然后创建一个文件并且写入一些信息
      vi  61-mydrv  说明:61 表示不使用外接 usb 类的自启动程序,分隔符‘-’后面接 
    驱动模块名称!
       在创建的该文件中写入: mydrv 即驱动的名称。
       最后,必须保证 mydrv.ko文件即我们的驱动模块文件放在: /lib/modules/3.14.25/ 
       好的,重新启动系统即可: reboot 
    可以通过命令查询当前已经加载的驱动模块:lsmod 
    
    
    应用程序软件包测试(也就是通过编写另外一个程序来调用驱动程序,这属于嵌入式应用层,而上面属于驱动层)
    
    1、首先将软件包(如mydrv_app)放到ubuntu虚拟机openwrt/trunk/package/目录下
    
    2、回到openwrt/trunk/目录下,make menuconfig进行配置,把我们复制的软件包编译进去
      Utilitties -> mydrv_app (按y选中)保存退出
    
    3、然后在当前目录执行
       make package/mydrv_app/compile V=99 
       make package/mydrv_app/install V=99 
       make package/index V=99
    
    4、编译结束后,固件在openwrt/trunk/bin/ramips/packages/base目录下
       mydrv_app_1_ramips_24kec.ipk
    
    5、执行make 得到OpenWrt系统固件位于penwrt/trunk/bin/ramips下,
     openwrt-ramips-rt305x-mpr-a2-squashfs-sysupgrade.bin
    6、烧写固件进入开发板,再加载我们的模块.ipk文件(使用ssh网络服务)
    
    7、进入开发板系统文件找到你加载的模块位置文件夹,进行ipk的安装
       opkg intall kmod-mydrv_1.10.36-1_ramips_24kec.ipk
    
    
    8、安装完成后,到/lib/modules/3.14.25/下找到我们的驱动mydrv.ko
    
    9、加载驱动 insmod mydrv.ko
    
    10、进入开发板系统文件找到你加载的模块位置文件夹,进行ipk的安装
       opkg intall kmod-mydrv_app_1.10.36-1_ramips_24kec.ipk
    
    11、安装完成后根目录运行应用程序mydrv_app
    
    12、卸载驱动 rmmod mydir.ko
  • 相关阅读:
    Sharding-Jdbc 自定义分库分表-复合分片算法自定义实现
    sklearn:Python语言开发的通用机器学习库
    php验证码--图片
    ListView中的Item点击事件和子控件的冲突或者item点击没有反应的解决的方法
    【转载】C# Graphics类具体解释
    Oracle之外键(Foreign Key)使用方法具体解释(二)- 级联删除(DELETE CASCADE)
    职业生涯-小公司和大公司的不同(持续更新)
    视音频数据处理入门:AAC音频码流解析
    让人非常easy误解的TCP拥塞控制算法
    Redis资料整理
  • 原文地址:https://www.cnblogs.com/yihujiu/p/5702451.html
Copyright © 2011-2022 走看看