android ko 编译,如何把rtl8188EUS驱动编译生成ko模块并且下载到rk平台Android4.2.2上使用...
下了rtl8188EUS_linux_v4.3.24_16705.20160509.tar.gz,看了里面的数据手册,发现有些看不懂,上网搜了一下,发现大部分博客都在扯淡。。。后来还是我把Makefile一句一句的看完才知道怎么做。
具体应该怎么编译成我需要的模块呢?我的平台是rk3168。
1、解压缩rtl8188EUS_linux_v4.3.24_16705.20160509.tar.gz,会看到驱动源码目录下有一个Makefile
2、打开Makefile
(1)屏蔽无关平台,默认这个驱动是I386_PC,我们这里是RK平台,这个要去掉,然后把RK的选上:
CONFIG_PLATFORM_I386_PC = n
CONFIG_PLATFORM_ARM_RK2818 = y (这个参考网友的博客配置)
(2)指定交叉编译工具链和内核源代码的路径:
ifeq ($(CONFIG_PLATFORM_ARM_RK2818), y)
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_ROCKCHIPS
ARCH := arm
#CROSS_COMPILE := /usr/src/release_fae_version/toolchain/arm-eabi-4.4.0/bin/arm-eabi-
CROSS_COMPILE := /mnt/sdb1/yangyx/20170323_PROJECT_1088/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-
KSRC := /mnt/sdb1/yangyx/20170323_PROJECT_1088/kernel/
MODULE_NAME := 8188eu
endif
其中CROSS_COMPILE指的是交叉编译工具链的位置,由于我的平板是使用Android自带的交叉编译工具链接,所以要指定它在PC系统上的绝对路径:
/mnt/sdb1/yangyx/20170323_PROJECT_1088/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-
KSRC是内核源代码的路径,我的内核源代码路径在:/mnt/sdb1/yangyx/20170323_PROJECT_1088/kernel/
最后指定生成的ko文件的名称为:8188eu.ko
(3)将驱动编译为ko的形式:
大约在1670行,将以下脚本注释:
#obj-$(CONFIG_RTL8188EU) := $(MODULE_NAME).o
修改成:
obj-m := $(MODULE_NAME).o
接下来直接在这个wifi源码驱动下make就会看到8188eu.ko生成了。后续测试的步骤也很简单,将平板的8188eu.ko卸载,后将刚编译好的8188eu.ko插入到平板即可。
本文同步分享在 博客“Engineer-Bruce_Yang”(CSDN)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。
android ko 编译,如何把rtl8188EUS驱动编译生成ko模块并且下载到rk平台Android4.2.2上使用...相关推荐
- 编译openwrt-lede的故障排除,go模块的下载超时的问题
问题截图: 问题应该出现在这里: go: github.com/mitchellh/mapstructure@v1.4.2: Get "https://proxy.golang.org/gi ...
- Linux WIFI驱动编译进内核——RTL8188EUS
1.准备好Realtek提供的RTL8188EUS驱动源码: 2.将RTL8188EUS驱动源码拷贝进开发板的内核源文件目录/driver/net/wireless/rtl818x: 3.修改/dri ...
- 全志A40i开发板Android系统编译
Android系统编译 A40i &T3 板卡用户可以通过飞凌嵌入式提供的网盘链接获取OKA40i-C开发板软件和硬件的文档及源码.软件和硬件的文档及源码下载方法不清楚的可联系飞凌嵌入式客服索 ...
- Android高通平台调试Camera驱动全纪录
项目比较紧,3周内把一个带有外置ISP,MIPI数据通信,800万像素的camera从无驱动到实现客户全部需求. 1日 搭平台,建环境,编译内核,烧写代码. 我是一直在Window下搭个虚拟机登服务器 ...
- 理解Android Binder机制(1/3):驱动篇
Binder的实现是比较复杂的,想要完全弄明白是怎么一回事,并不是一件容易的事情. 这里面牵涉到好几个层次,每一层都有一些模块和机制需要理解.这部分内容预计会分为三篇文章来讲解.本文是第一篇,首先会对 ...
- android如何编译出带符号表的.so库
android如何编译出带符号表的.so库 关于这个问题,其实编译器带-g就会有调试信息.这是gcc相关的. 默认其实android编译的就是带符号表的,只是在strip掉了. 例如下面的操作: /$ ...
- android.mk 编译jar包,Androidmk 使用详解
和你一起终身学习,这里是程序员Android 经典好文推荐,通过阅读本文,您将收获以下知识点:一.Android.mk 简介二.Android.mk 的基本格式三.Android.mk 深入学习一四. ...
- Android 系统编译环境设置及源代码编译
一. 摘要 虽然已经在Android系统工作了一段时间, 但是每次需要重新setup环境的时候,都需要花一点时间, 所以就想借着这次在ubuntu 12.04 64bits系统上重新安装的机会, ...
- Android系统编译aosp
Android系统编译 公号文字版本:https://mp.weixin.qq.com/s/y6ReUNd3EDUctNVO_x3ZwQ 博客文字版本:http://liuwangshu.cn/bat ...
最新文章
- html语言设计表格,HTML标记语言——表格标记
- mysql.sock的作用
- 深度学习-Tensorflow2.2-深度学习基础和tf.keras{1}-优化函数,学习速率,反向传播,网络优化与超参数选择,Dropout 抑制过拟合概述-07
- Nginx的rewrite之set指令
- Android kotlin DataBinding 之 unresolved reference: BR
- Mac OS X安装Lua
- zabbix前端php界面,Zabbix Web UI
- homebrew长时间停在Updating Homebrew 这个步骤
- python union函数_如何掌握Python union()方法及怎么用?
- php 数据库编码,php怎么设置数据库编码方式
- CSRF:跨站请求伪造
- 什么?你还不知道Web Animations API
- gini系数 决策树_SKlearn中分类决策树的重要参数详解
- c#编写高程拟合程序
- 屏幕录像专家2018注册机怎么用?
- 怎么下载Windows图片和传真查看器
- 有趣的数字绕口令,提高孩子记忆力,锻炼出好口才!
- C# 火星文转化 算法 dictionary 的使用案例
- 原生js调用手机拍照功能
- Vue单向绑定与双向绑定解析