、首先将软件包(如mydrv)放到ubuntu虚拟机openwrt/trunk/package/kernel/目录下

、回到openwrt/trunk/目录下,make menuconfig进行配置,把我们复制的软件包编译进去
Kemel modules -> Other modules -> kmod-mydrv(按y选中)保存退出 、然后在当前目录执行make package/kernel/mydrv/compile V= 、编译结束后,固件在openwrt/trunk/bin/ramips/packages/base目录下
kmod-mydrv_1.10.36-1_ramips_24kec.ipk 、执行make 得到OpenWrt系统固件位于penwrt/trunk/bin/ramips下,
openwrt-ramips-rt305x-mpr-a2-squashfs-sysupgrade.bin
、烧写固件进入开发板,再加载我们的模块.ipk文件(使用ssh网络服务) 、进入开发板系统文件找到你加载的模块位置文件夹,进行ipk的安装
opkg intall kmod-mydrv_1.10.36-1_ramips_24kec.ipk 、安装完成后,到/lib/modules/3.14./下找到我们的驱动mydrv.ko 、加载驱动 insmod mydrv.ko 、卸载驱动 rmmod mydir.ko 驱动开机自动加载
虽然我们通过 opkg insall 得到了.ko 为后缀的驱动模块,但是每次要使用都得进行
insmod,比较麻烦,我们可以让系统开机后自动的加载该驱动模块。
首先进入到特定的目录:
cd /etc/modules.d
然后创建一个文件并且写入一些信息
vi -mydrv 说明: 表示不使用外接 usb 类的自启动程序,分隔符‘-’后面接
驱动模块名称!
在创建的该文件中写入: mydrv 即驱动的名称。
最后,必须保证 mydrv.ko文件即我们的驱动模块文件放在: /lib/modules/3.14./
好的,重新启动系统即可: reboot
可以通过命令查询当前已经加载的驱动模块:lsmod 应用程序软件包测试(也就是通过编写另外一个程序来调用驱动程序,这属于嵌入式应用层,而上面属于驱动层) 、首先将软件包(如mydrv_app)放到ubuntu虚拟机openwrt/trunk/package/目录下 、回到openwrt/trunk/目录下,make menuconfig进行配置,把我们复制的软件包编译进去
Utilitties -> mydrv_app (按y选中)保存退出 、然后在当前目录执行
make package/mydrv_app/compile V=
make package/mydrv_app/install V=
make package/index V= 、编译结束后,固件在openwrt/trunk/bin/ramips/packages/base目录下
mydrv_app_1_ramips_24kec.ipk 、执行make 得到OpenWrt系统固件位于penwrt/trunk/bin/ramips下,
openwrt-ramips-rt305x-mpr-a2-squashfs-sysupgrade.bin
、烧写固件进入开发板,再加载我们的模块.ipk文件(使用ssh网络服务) 、进入开发板系统文件找到你加载的模块位置文件夹,进行ipk的安装
opkg intall kmod-mydrv_1.10.36-1_ramips_24kec.ipk 、安装完成后,到/lib/modules/3.14./下找到我们的驱动mydrv.ko 、加载驱动 insmod mydrv.ko 、进入开发板系统文件找到你加载的模块位置文件夹,进行ipk的安装
opkg intall kmod-mydrv_app_1.10.36-1_ramips_24kec.ipk 、安装完成后根目录运行应用程序mydrv_app 、卸载驱动 rmmod mydir.ko

openwrt系统之字符设备驱动软件包加载、测试程序加载的更多相关文章

  1. Linux字符设备驱动框架

    字符设备是Linux三大设备之一(另外两种是块设备,网络设备),字符设备就是字节流形式通讯的I/O设备,绝大部分设备都是字符设备,常见的字符设备包括鼠标.键盘.显示器.串口等等,当我们执行ls -l ...

  2. LDD3 字符设备驱动简单分析

    最近在看LDD3,理解了一下,为了加深自己的印象,自己梳理一下.我用的CentOS release 6.6 (Final)系统. 一.编写编译内核模块的Makefile 以下是我用的Makefile ...

  3. Linux应用程序访问字符设备驱动详细过程【转】

    本文转载自:http://blog.csdn.net/coding__madman/article/details/51346532 下面先通过一个编写好的内核驱动模块来体验以下字符设备驱动 可以暂时 ...

  4. 深入理解Linux字符设备驱动

    文章从上层应用访问字符设备驱动开始,一步步地深入分析Linux字符设备的软件层次.组成框架和交互.如何编写驱动.设备文件的创建和mdev原理,对Linux字符设备驱动有全面的讲解.本文整合之前发表的& ...

  5. Linux字符设备驱动结构(一)--cdev结构体、设备号相关知识机械【转】

    本文转载自:http://blog.csdn.net/zqixiao_09/article/details/50839042 一.字符设备基础知识 1.设备驱动分类 linux系统将设备分为3类:字符 ...

  6. Linux驱动设计——字符设备驱动(一)

    Linux字符设别驱动结构 cdev结构体 struct cdev { struct kobject kobj; struct module *owner; const struct file_ope ...

  7. 【转】linux设备驱动程序之简单字符设备驱动

    原文网址:http://www.cnblogs.com/geneil/archive/2011/12/03/2272869.html 一.linux系统将设备分为3类:字符设备.块设备.网络设备.使用 ...

  8. 字符设备驱动、平台设备驱动、设备驱动模型、sysfs的比较和关联

    转载自:http://www.kancloud.cn/yueqian_scut/emlinux/106829 学习Linux设备驱动开发的过程中自然会遇到字符设备驱动.平台设备驱动.设备驱动模型和sy ...

  9. 使用内核定时器的second字符设备驱动及测试代码

    驱动: #include <linux/kernel.h> #include <linux/module.h> #include <linux/fs.h> #inc ...

随机推荐

  1. 1.5后台修改添加TDK

    manager\includes\languages\english.php //注意 是后台的语言包define('BOX_CONFIGURATION_Lin_STORE', 'TDKcss_set ...

  2. 详细理解servlet实现的几种方式和生命周期

    现在很多的开发都是用的框架,然后很多同学学习的时候又是直接接触的框架,对于底层的一些开发,完全没有任何的了解.虽然对于业务上面来说,没有什么问题.但是很多时候当你被面试问到,或者是想要了解框架底层原理 ...

  3. 更改Xcode的缺省公司名

    更改前: //  testAppDelegate.m //  test // //  Created by gaohf on 11-5-24. //  Copyright 2011 __MyCompa ...

  4. Spring security 获取当前用户

    spring security中当前用户信息 1:如果在jsp页面中获取可以使用spring security的标签库 在页面中引入标签   1 <%@ taglib prefix=" ...

  5. blob的存储与读取

    对于oracle数据库的blob的存储与读取对应的是byte数组. 将blob类型数据存入数据库: String blob: byte[] byte = blob.getBytes(); entity ...

  6. 转 Oracle 12c 使用scott等普通用户的方法

    一.前言 最近电脑上安装了oracle 12c数据库,想体验下新特性.安装完后,便像11g一样在dos窗口进行下面的操作: SQL*Plus: Release 12.1.0.2.0 Productio ...

  7. OpenGL ES着色器语言之静态使用(static use)和预处理

    OpenGL ES着色器语言之静态使用(static use) 在OpenGL ES中有一个术语叫静态使用(static use),什么叫静态使用呢? 在写代码中,对于一个变量可能具有以下三种情况: ...

  8. 转换流--InputStreamReader ,OutputStreamWriter

    BufferedReader 字符流,只能装饰字符流,不能装饰字节流.有个重要且好用的方法是readLine()整行读取字符. 但是InputStream是字节流,没有resdLine方法,那么字节流 ...

  9. robot framework -记录关键字

    1.set value if (当条件满足时,进行变量赋值) 2.focus (将焦点定在制定的元素) 3.win close +title(关闭制定title) 4.get list items  ...

  10. makefile的编写规则

    2.       编写makefile 示例: test:main.o func.o gcc -o test main.o func.o func.o:func.c gcc -c func.c mai ...