【2017-11-19】Linux基础知识:TP-Link WN823N无线网卡(RTL8192EU芯片)的X86-64及AARCH64驱动安装
目的:
使类似于树莓派的AARCH-64架构的嵌入式设备能通过USB无线网卡连接上以太网;
该设备有LAN接口,但在前一次系统固件升级后,其内部的三个网络接口可以相互ping通,但任一接口无法ping通外部网络接口,目前该问题还没有解决;
另外实验室还涉及到连接外部网络的权限问题,所以就想是否可以通过USB无线网卡来access以太网;
但这又涉及到一些问题:
1. 目前大部分的usb无线网卡,虽然说是免驱的,但仅仅针对Winows系统免驱,并且生产厂家可能不会提供Linux版本的驱动,所以要么找芯片厂商看是否有对应芯片的驱动,要么去GitHub上看是否有前辈已经做过对应芯片的驱动;
2. 可能x86-64、i386或者是Raspberry Pi的驱动有开源的,但是目前使用的这种不常见的嵌入式芯片是否可以通过稍微改动一下源码来实现编译呢?
解决过程
1. 对于第一个问题,TP-Link TL-WN823N所使用的RTL823EU确实在GitHub上有开源驱动,但需要注意驱动适配的内核
比如很多博客上提到的rtl8192eu-master.zip,该版本在4.10内核上编译就有可能出问题,目前我还没有想到比较好的解决版本;
rtl8192eu-master/include/rtw_debug.h:187:19: error: void value not ignored as it ought to be
然后又看到有人已经repo了代码,解决了这一问题:
https://github.com/Mange/rtl8192eu-linux-driver
下载下来之后解压,看下Readme,可以不装dkms,直接make,make install,然后modprobe -a 8192eu即成功加载了驱动,可使用lsmod查看是否加载成功;
参考:
Linux无线驱动安装历程(rtl8192eu驱动安装,开机自启动)
http://blog.csdn.net/Strangevy/article/details/52877872?locationNum=6&fps=1
因此,重点在于解决第二个问题,既然Raspberry Pi可以编译成功,那么类似的应该也可以。