mt7601u linux驱动编译,移植MT7601U AP Linux 驱动至Orangepi-PC2开发板
简单一下记录移植MT7601U AP Linux 驱动至Orangepi-PC2开发板的过程。
二 环境描述
1、Orangpi-PC2开发板(Linux Orangepi 3.10.65 #12 SMP PREEMPT Sat Mar 4 18:05:52 CST 2017 aarch64 aarch64 aarch64 GNU/Linux)
2、wifi网卡(360 mini wifi ,芯片组MT7601U)
3、OrangePi-PC2开发SDK
4、MT7601U AP for Linux 驱动
三 移植过程
1、首先修改工程Makefile
下载的驱动中没有针对ORANGEPI-PC2平台的定制宏,这里需要自己手动添加:
(1)在开始30行左右添加如下内容:
#PLATFORM: Target platform
PLATFORM = ORANGEPI_PC2
(2)在200行左右添加如下内容:
ifeq ($(PLATFORM),ORANGEPI_PC2)
# Linux 3.10 Change to your local setting
LINUX_SRC = /work/orangePi/OrangePi_H5SDK/kernel
LINUX_SRC_MODULE = /work/orangePi/OrangePi_H5SDK/kernel/drivers/net/wireless/
CROSS_COMPILE = /work/orangePi/OrangePi_H5SDK/toolchain/gcc-linaro-aarch/bin/aarch64-linux-gnu-
endif
Note:我的SDK是放在/work/orangePi目录下的
(3)在400行左右将下面的内容
$(MAKE) -C $(LINUX_SRC) SUBDIRS=$(RT28xx_DIR)/os/linux modules
替换为
ifeq ($(PLATFORM),ORANGEPI_PC2)
$(MAKE) ARCH=arm64 CROSS_COMPILE=$(CROSS_COMPILE) -C $(LINUX_SRC) SUBDIRS=$(RT28xx_DIR)/os/linux modules
else
$(MAKE) -C $(LINUX_SRC) SUBDIRS=$(RT28xx_DIR)/os/linux modules
endif
2、修改驱动源码,支持360 wifi网卡
360 mini wifi的USB ID是ID 148f:760b,需要将该ID添加到rtusb_dev_id列表中,否则加载驱动后会探测不到网卡;
修改rtusb_dev_id.c文件的dev id列表如下:
/* module table */
USB_DEVICE_ID rtusb_dev_id[] = {
{USB_DEVICE(0x148f,0x6570)}, /* Ralink 6570 */
{USB_DEVICE(0x148f,0x7650)}, /* MT7650 */
{USB_DEVICE(0x148f,0x6370)}, /* Ralink 6370 */
{USB_DEVICE(0x148f,0x7601)}, /* MT 6370 */
{USB_DEVICE(0x148f,0x760b)}, /* 360 mini wifi */
{ }/* Terminating entry */
};
3、修改申请的DMA内存大小,否则驱动会加载失败,提示如下错误:
--> RTMPAllocTxRxRingMemory
[ 74.801467]
[ 74.807607] ---> RTMPFreeTxRxRingMemory
[ 74.811927]
[ 74.816152] ERROR!!! Failed to allocate memory - TxRxRing
[ 74.823792]
[ 74.828817] rt2870: probe of 4-1:1.0 failed with error -1
[ 74.835193] usbcore: registered new interface driver rt2870
解决方法:将rt_linux.h中的BULKAGGRE_SIZE调整为10,rtmp_usb.h中的RXBULKAGGRE_SIZE调整为2; (备注:后续还需要定位一下为什么orangePi-PC2的DMA 内存剩下这么小)
4、编译驱动
直接使用make命令即可;
5、编译成功后会在os/Linux目录下生成mt7601Uap.ko内核模块,将该模块拷贝至Orangepi开发板上(我这里已经配置好了samba共享),并加载;
6、使用ifconfig命令配置该网卡,
ifconfig ra0 10.10.10.100
使用iwconfig命令应该会看到如下信息:
ra0 RTWIFI SoftAP ESSID:"RT2860AP"
Mode:Managed Channel=11 Access Point: 24:05:0F:64:BB:E9
Bit Rate=150 Mb/s
使用手机搜索一下周围的wifi热点,应该会发现名称为RT2860AP的热点;
7、至此驱动部分移植完成,后续还需进行热点配置的调试;
mt7601u linux驱动编译,移植MT7601U AP Linux 驱动至Orangepi-PC2开发板相关推荐
- linux内核编译最详细,Linux内核编译详细教程,linux内核编译
Linux内核编译详细教程,linux内核编译 尝试编译下Linux-kernel 4.14.14,使用Ubuntu 16.04 64位 系统. kernel-4.14.14 内核文件约96MB,解压 ...
- tq2440 linux,移植最新内核Linux4.1.6到TQ2440开发板教程(一)-Go语言中文社区
本次移植主要是移植最新内核Linux4.1.6到TQ2440开发板 开发板:TQ2440 内核:Linux4.1.6 目的:在开发板上实现内核的启动,并挂上nfs根文件系统 1. 下载最新内核linu ...
- Mastering Embedded Linux Programming 学习 (二)在百问网157开发板上,编译构建u-boot
Mastering Embedded Linux Programming 学习 (二)在百问网157开发板上,编译构建u-boot 一.下载u-boot源码 git clone https://git ...
- Mastering Embedded Linux Programming 学习 (三)在百问网157开发板上,编译构建linux内核
Mastering Embedded Linux Programming 学习 (三)在百问网157开发板上,编译构建linux内核 一.下载内核源码 wget http://ftp.sjtu.edu ...
- Mastering Embedded Linux Programming 学习 (五)在百问网157开发板上,解决网络配置问题
Mastering Embedded Linux Programming 学习 (五)在百问网157开发板上,解决网络配置问题 思考.参考 搜索发现,需要配置设备树,参考这个链接 修改设备树 找到百问 ...
- arm linux打印机驱动编译方法,嵌入式linux驱动打印机HP系列
arm linux打印机驱动编译方法和过程记录(2017.03.15): 改动添加概述: 添加foo2zjs工具(用于发送数据到打印机进行打印): 添加gohstscript工具(用于转换文档格式到打 ...
- 树莓派Linux内核编译、文件系统、Linux内核驱动基础框架、驱动测试步骤、总线地址
树莓派高阶开发课程 1. ubuntu18.04版本安装 让程序猿搭建环境太搞笑了,轻松easy! ========================================= ...
- Ubuntu linux 手动编译安装 Realtek 8852 无线网卡驱动 非常简单 添加Manjaro教程
由于8852是刚出的支持wifi6的无线网卡,因此只有Windows驱动,而Linux 用只能自己编译驱动,好在不麻烦. 本驱动置只支持5.4及以上内核,请确认. 安装必要工具: sudo apt-g ...
- linux怎么编译并安装busybox,linux下安装busybox
1.获取busybox源码并解压,这里使用天嵌提供的"busybox-1.16.0.tar.bz2" #tar xvf busybox-1.16..tar.bz2 -C / 解压的 ...
最新文章
- centos7 安装git_如何在 CentOS 7 上挂载 Amazon EFS 文件系统?
- arm el2与el3_ARMv8的学习笔记
- 1.1 JAVA集合
- (转)Shell中获取字符串长度的七种方法
- 深入浅出VC++串口编程之基于Win32 API
- rsync服务扩展应用
- 我的INI 配置文件读写动态库
- .net remoting与web service的区别
- ps如何修改图片大小尺寸_如何查看图片尺寸,大小及如何修改图片尺寸—淘宝美工入门课03...
- 刚写完的商城erp + 这个商城前台,新鲜出炉。自己1个人写, 包括php框架和前端html页面....
- [转]web实时视频流从0到1(ffmpeg+nginx-http-flv-module+flv.js)
- xmapp mysql打不开_XAMPP 的MYSQL无法启动
- Springboot读取application.properties文件乱码
- 2021年上半年国家软考系统分析师论文和案例分析
- 进销存excel_EXCEL进销存系统升级版,自动库存更新,利润毛利分析一键操作
- 杭州/北京内推 | 蚂蚁集团数字身份及安全生态团队招聘学术实习生
- cxf调用webservice
- Linux下通过CCID协议与USB设备进行交互经验总结
- 软件调试系列:软件崩溃篇之内存异常崩溃
- 汽车防抱死系统_ABS_建模与模糊PID控制研究
热门文章
- Windows2016配置多人远程桌面登录
- 阿里首次公开了量子通信技术:应用于云计算服务
- Alamofire -安全认证
- ajax 文件上传 iframe,AJAX_iframe实现Ajax文件上传效果示例,复制代码 代码如下: span styl - phpStudy...
- Postfix 发送邮件失败问题,求大神
- A.pro读算法--报刊(咕)
- 本笔记为阿里云天池龙珠计划SQL训练营的学习内容 TASK 5
- frida药监局爬虫app签名逆向,数据采集
- TryHackMe-红队-07_武器化
- php做五星评价系统,微信小程序之五星评价功能制作