rtl8188eu 驱动移植
测试平台
宿主机平台:Ubuntu 16.04.6
目标机:iMX6ULL
目标机内核:Linux 4.1.15
rtl8188eu 驱动移植
在网上下载Linux版的驱动源码;
wifi驱动的实现有两种:
1)将驱动源码交叉编译为内核模块ko文件,拷贝到目标机,通过 insmod 指令安装,在开机脚本中添加模块安装机wifi配置即可实现开机自动联网,本方法较为简单在此不做赘述;
2)将驱动移植到内核中,后面通过配置内核实现wifi支持,下面对内核驱动的移植进行详细描述;
移植步骤:
1.将驱动源码解压,并修改为 rtl8188eu ,对于移植的驱动我一般都放在 drivers/staging/ 这个暂存目录下;
2.修改 drivers/staging/Makefile 加入 支持 rtl8188eu 的驱动编译
obj-$(CONFIG_R8188EU) += rtl8188eu/
3.添加 Kconfig 支持,修改 drivers/staging/Kconfig
source "drivers/staging/rtl8188eu/Kconfig"
至此内核驱动移植完毕。
内核配置及驱动使用
在内核目录
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- menuconfig
因为使用板载wifi情况较多,所以直接编译进内核;
然后
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- zImage
更新内核
查看无线网络,对于wlan0 已经支持
wpa_supplicant是一个连接、配置WIFI的工具,下面使用该工具对wifi网络进行配置和连接
使用 wpa_passphrase wifi配置文件 wifi.conf
网络名和密码
wpa_passphrase "HTGW-Guest" >> wifi.conf
67106002
查看配置文件
启动wlan0
wpa_supplicant -D wext -B -i wlan0 -c wifi.conf
-D 驱动程序名称(可以是多个驱动程序:nl80211,wext)
-i 接口名称
-c 配置文件
-B 在后台运行守护进程
自动获取IP地址
udhcpc -b -i wlan0 -R
原文地址:https://www.cnblogs.com/silencehuan/p/11136568.html
- 共享单车运维“朋友圈”越来越宽,乱停乱放现象有望改善吗?
- 【Spring实战】—— 15 Spring JDBC模板使用
- 前端开发总览
- 【Spring实战】—— 16 基于JDBC持久化的事务管理
- 【Spring实战】—— 4 Spring中bean的init和destroy方法讲解
- 基于AngularJS的过滤与排序
- 【Spring实战】—— 5 设值注入
- 科学家预测:未来100万年人类将变成半机械人类
- 【Spring实战】—— 8 自动装配
- 【Spring实战】—— 7 复杂集合类型的注入
- 【Spring实战】—— 6 内部Bean
- 几款可替代Dreamweaver的HTML5开发工具
- Linux下的Telnet设置方法介绍
- 2017年11月互联网和相关服务业保持快速增长
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- CRC校验原来这么简单
- centos7安装kubernetes教程
- spring-boot自定义starter
- 实操 | kafka如何手动异步提交offset
- 解惑 | 为什么我根据时间戳获得的offset为空呢?
- spring-boot使用aop进行日志记录
- openGauss备机追数Catchup过程中主库写入阻塞问题
- openGauss830版本中对于备份模块的增强与当前问题
- spring boot自动配置原理
- 网站日志分析完整实践
- 聊聊分布式下的WebSocket解决方案
- pod安装、更新库失败,github连接超时问题
- Mysql如何给字符串添加索引(前缀索引)
- Python中5对必知的魔法方法
- java的三种代理