无线网卡适配

买了款EDUP(深圳翼联)无线网卡在Linux系统不没有驱动适配用不起来,后来电话到翼联,翼联技术人员
给了无线驱动包并且告诉我无线网卡芯片型号RTL881BU,

00008446-RTL88x2BU_WiFi_linux_v5.2.4.1 解压后
看到型号是:
########################## WIFI IC ############################
CONFIG_MULTIDRV = n
CONFIG_RTL8188E = n
CONFIG_RTL8812A = n
CONFIG_RTL8821A = n
CONFIG_RTL8192E = n
CONFIG_RTL8723B = n
CONFIG_RTL8814A = n
CONFIG_RTL8723C = n
CONFIG_RTL8188F = n
CONFIG_RTL8822B = y
CONFIG_RTL8723D = n
CONFIG_RTL8821C = n
######################### Interface ###########################
默认选择CONFIG_RTL8822B = y 没有RTL8812BU,猜测驱动共用
选了海思平台,修改了下编译选项
ifeq (KaTeX parse error: Expected 'EOF', got '#' at position 33: …HISILICON), y) #̲EXTRA_CFLAGS +=…(SUPPORT_CONCURRENT),y)
#EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
#endif
#EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
#ARCH := arm
#ifeq ($(CROSS_COMPILE),)

CROSS_COMPILE = arm-hisiv200-linux-

CROSS_COMPILE =

#endif
#MODULE_NAME := rtl8192eu
#ifeq ($(KSRC),)

//KSRC := …/…/…/…/…/…/kernel/linux-3.4.y

#endif
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_HISILICON
EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
ARCH ?= arm64
CROSS_COMPILE ?=
KVER ?= ( s h e l l u n a m e − r ) K S R C : = / l i b / m o d u l e s / (shell uname -r) KSRC := /lib/modules/ (shellunamer)KSRC:=/lib/modules/(KVER)/build
MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
INSTALL_PREFIX :=
endif
==>make -j8
编译fail
wireless/RTL8812BU/include/osdep_service_linux.h:282:8: error: ‘_timer’ {aka ‘struct timer_list’} has no member named ‘data’
ptimer->data = (unsigned long)cntx;
^~
wireless/RTL8812BU/include/osdep_service_linux.h:283:2: error: implicit declaration of function ‘init_timer’; did you mean ‘_init_timer’? [-Werror=implicit-function-declaration]
init_timer(ptimer);
^~~~~~~~~~
_init_timer
In file included from /home/uos/wireless/RTL8812BU/include/osdep_service.h:42,
from /home/uos/wireless/RTL8812BU/include/drv_types.h:27,
from /home/uos/wireless/RTL8812BU/core/rtw_ioctl_query.c:17:
wireless/RTL8812BU/include/osdep_service_linux.h: In function ‘_init_timer’:
wireless/RTL8812BU/include/osdep_service_linux.h:282:8: error: ‘_timer’ {aka ‘struct timer_list’} has no member named ‘data’

发现不好解决,去github 搜索了一下"RTL8812BU "找了个新的驱动
https://github.com/morrownr/88xbu
下载下来,解压缩,选择
###################### Platform Related #######################
CONFIG_PLATFORM_ARM_NV_NANO = n
CONFIG_PLATFORM_I386_PC = n
CONFIG_PLATFORM_ARM_RPI = y
CONFIG_PLATFORM_ANDROID_X86 = n
CONFIG_PLATFORM_ARM_RPI ==》选择

稍微修改
ifeq ($(CONFIG_PLATFORM_ARM_RPI), y)
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
#ARCH := arm
ARCH := arm64
KVER := ( s h e l l u n a m e − r ) K S R C : = / l i b / m o d u l e s / (shell uname -r) KSRC := /lib/modules/ (shellunamer)KSRC:=/lib/modules/(KVER)/build
MODDESTDIR := /lib/modules/ ( K V E R ) / k e r n e l / d r i v e r s / n e t / w i r e l e s s / I N S T A L L P R E F I X : = S T A G I N G M O D D I R : = / l i b / m o d u l e s / (KVER)/kernel/drivers/net/wireless/ INSTALL_PREFIX := STAGINGMODDIR := /lib/modules/ (KVER)/kernel/drivers/net/wireless/INSTALLPREFIX:=STAGINGMODDIR:=/lib/modules/(KVER)/kernel/drivers/staging
endif

==》make -j8编译OK
总用量 9756
-rw-r----- 1 uos uos 4916512 8月 28 19:11 88x2bu.ko
-rw-r----- 1 uos uos 8043 8月 28 19:11 88x2bu.mod.c
-rw-r----- 1 uos uos 98296 8月 28 19:11 88x2bu.mod.o
-rw-r----- 1 uos uos 4819072 8月 28 19:11 88x2bu.o
-rwxrwxrwx 1 root root 64 7月 5 13:18 clean
drwxrwxrwx+ 4 root root 4096 8月 28 19:11 core
-rwxrwxrwx 1 root root 237 7月 5 13:18 dkms.conf
drwxrwxrwx+ 9 root root 4096 8月 28 19:10 hal
-rwxrwxrwx 1 root root 1902 7月 5 13:18 halmac.mk
-rwxrwxrwx 1 root root 51 7月 5 13:18 ifcfg-wlan0
drwxrwxrwx+ 5 root root 12288 7月 5 13:18 include
-rwxrwxrwx 1 root root 110 7月 5 13:18 Kconfig
-rwxrwxrwx 1 root root 70462 8月 28 19:10 Makefile
-rw-r----- 1 uos uos 66 8月 28 19:10 modules.order
-rw-r----- 1 uos uos 0 8月 28 19:11 Module.symvers
drwxrwxrwx+ 3 root root 4096 8月 28 19:10 os_dep
drwxrwxrwx+ 2 root root 4096 8月 28 19:11 platform
-rwxrwxrwx 1 root root 2013 7月 5 13:18 README.md
-rwxrwxrwx 1 root root 1920 7月 5 13:18 rtl8822b.mk
-rwxrwxrwx 1 root root 423 7月 5 13:18 runwpa
-rwxrwxrwx 1 root root 294 7月 5 13:18 wlan0dhcp
PC:~/wireless/RTL8812BU001/RTL8812BU-master$

sudo insmod 88x2bu.ko 无线网络可用,完美解决

ifconfig
wlxe84e0686728a: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.2.6.229 netmask 255.255.255.0 broadcast 10.2.6.255
inet6 fe80::611f:cd3e:e5c1:f8c8 prefixlen 64 scopeid 0x20
ether e8:4e:06:86:72:8a txqueuelen 1000 (Ethernet)
RX packets 1047 bytes 227591 (222.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 232 bytes 31882 (31.1 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kaira88

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值