Compare commits

...

5 Commits

Author SHA1 Message Date
Fomalhaut Weisszwerg e9231c3e66 Add: Realtek USB wireless card that has ID 0bda:b812.
# Conflicts:
#	os_dep/linux/usb_intf.c
2018-03-05 09:10:52 +01:00
Fomalhaut Weisszwerg 946fbd6308 Fix: "__vfs_read" undefined.
Since Linux-4.14, the `__vfs_read()` and `__vfs_write()` have been obsoleted for drivers.
See: bd8df82be6

To avoid to undefined error, use `kernel_read()` and `kernel_write()` instead.
2018-03-05 09:07:21 +01:00
Harald Wolff d7bbce06b9 Added .gitignore, Fix Compiler Error 2018-03-05 07:59:01 +00:00
Fomalhaut Weisszwerg 5186fc3138 Fix: implicit declaration of function 'allow_signal'.
'allow_signal' requires explicit including of "linux/sched/signal.h" from Linux 4.11.
2018-03-05 08:52:57 +01:00
Brandon Bailey a7c85b7366 Updated Makefile to allow for ARM devices to compile correctly 2018-03-02 08:24:39 +01:00
6 changed files with 197 additions and 68 deletions

3
.gitignore vendored 100644
View File

@ -0,0 +1,3 @@
*.o
*.o.cmd

206
Makefile
View File

@ -7,12 +7,14 @@ EXTRA_CFLAGS += -O1
#EXTRA_CFLAGS += -pedantic
#EXTRA_CFLAGS += -Wshadow -Wpointer-arith -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes
PLATFORM = LINUX
EXTRA_CFLAGS += -Wno-unused-variable
EXTRA_CFLAGS += -Wno-unused-value
EXTRA_CFLAGS += -Wno-unused-label
EXTRA_CFLAGS += -Wno-unused-parameter
EXTRA_CFLAGS += -Wno-unused-function
EXTRA_CFLAGS += -Wno-unused
EXTRA_CFLAGS += -Wno-error=date-time
#EXTRA_CFLAGS += -Wno-uninitialized
#EXTRA_CFLAGS += -Wno-error=date-time # Fix compile error on gcc 4.9 and later
@ -36,6 +38,7 @@ CONFIG_RTL8188F = n
CONFIG_RTL8822B = y
CONFIG_RTL8723D = n
CONFIG_RTL8821C = n
######################### Interface ###########################
CONFIG_USB_HCI = y
CONFIG_PCI_HCI = n
@ -43,7 +46,7 @@ CONFIG_SDIO_HCI = n
CONFIG_GSPI_HCI = n
########################## Features ###########################
CONFIG_MP_INCLUDED = y
CONFIG_POWER_SAVING = y
CONFIG_POWER_SAVING = n
CONFIG_USB_AUTOSUSPEND = n
CONFIG_HW_PWRP_DETECTION = n
CONFIG_WIFI_TEST = n
@ -54,8 +57,8 @@ CONFIG_EFUSE_CONFIG_FILE = y
CONFIG_EXT_CLK = n
CONFIG_TRAFFIC_PROTECT = y
CONFIG_LOAD_PHY_PARA_FROM_FILE = y
CONFIG_TXPWR_BY_RATE_EN = y
CONFIG_TXPWR_LIMIT_EN = n
CONFIG_CALIBRATE_TX_POWER_BY_REGULATORY = n
CONFIG_CALIBRATE_TX_POWER_TO_MAX = n
CONFIG_RTW_ADAPTIVITY_EN = disable
CONFIG_RTW_ADAPTIVITY_MODE = normal
CONFIG_SIGNAL_SCALE_MAPPING = n
@ -87,7 +90,8 @@ CONFIG_RTW_SDIO_PM_KEEP_POWER = y
###################### MP HW TX MODE FOR VHT #######################
CONFIG_MP_VHT_HW_TX_MODE = n
###################### Platform Related #######################
CONFIG_PLATFORM_I386_PC = y
CONFIG_PLATFORM_ARM_RPI = y
CONFIG_PLATFORM_I386_PC = n
CONFIG_PLATFORM_ANDROID_X86 = n
CONFIG_PLATFORM_ANDROID_INTEL_X86 = n
CONFIG_PLATFORM_JB_X86 = n
@ -132,6 +136,9 @@ CONFIG_PLATFORM_ARM_SUN50IW1P1 = n
CONFIG_PLATFORM_ARM_RTD299X = n
CONFIG_PLATFORM_ARM_SPREADTRUM_6820 = n
CONFIG_PLATFORM_ARM_SPREADTRUM_8810 = n
# Setting to n
CONFIG_PLATFORM_AML = y
CONFIG_PLATFORM_ARM_WMT = n
CONFIG_PLATFORM_TI_DM365 = n
CONFIG_PLATFORM_MOZART = n
@ -146,6 +153,14 @@ CONFIG_DRVEXT_MODULE = n
export TopDIR ?= $(shell pwd)
ifeq ($(CONFIG_PLATFORM_AML), y)
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -fno-pic
EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211
EXTRA_CFLAGS += -DCONFIG_P2P_IPS -DRTW_USE_CFG80211_STA_EVENT
EXTRA_CFLAGS += -DCONFIG_LPS_SLOW_TRANSITION
EXTRA_CFLAGS += -DCONFIG_RADIO_WORK
endif
########### COMMON #################################
ifeq ($(CONFIG_GSPI_HCI), y)
HCI_NAME = gspi
@ -237,25 +252,21 @@ _OUTSRC_FILES := hal/phydm/phydm_debug.o \
EXTRA_CFLAGS += -I$(src)/platform
_PLATFORM_FILES := platform/platform_ops.o
EXTRA_CFLAGS += -I$(src)/hal/btc
_OUTSRC_FILES += hal/btc/halbtc8723bwifionly.o \
hal/btc/halbtc8822bwifionly.o
ifeq ($(CONFIG_BT_COEXIST), y)
_OUTSRC_FILES += hal/btc/halbtc8192e1ant.o \
hal/btc/halbtc8192e2ant.o \
hal/btc/halbtc8723b1ant.o \
hal/btc/halbtc8723b2ant.o \
hal/btc/halbtc8812a1ant.o \
hal/btc/halbtc8812a2ant.o \
hal/btc/halbtc8821a1ant.o \
hal/btc/halbtc8821a2ant.o \
hal/btc/halbtc8703b1ant.o \
EXTRA_CFLAGS += -I$(src)/hal/btc
_OUTSRC_FILES += hal/btc/HalBtc8192e1Ant.o \
hal/btc/HalBtc8192e2Ant.o \
hal/btc/HalBtc8723b1Ant.o \
hal/btc/HalBtc8723b2Ant.o \
hal/btc/HalBtc8812a1Ant.o \
hal/btc/HalBtc8812a2Ant.o \
hal/btc/HalBtc8821a1Ant.o \
hal/btc/HalBtc8821a2Ant.o \
hal/btc/HalBtc8821aCsr2Ant.o \
hal/btc/HalBtc8703b1Ant.o \
hal/btc/halbtc8723d1ant.o \
hal/btc/halbtc8723d2ant.o \
hal/btc/halbtc8822b1ant.o \
hal/btc/halbtc8822b2ant.o \
hal/btc/halbtc8821c1ant.o \
hal/btc/halbtc8821c2ant.o
hal/btc/HalBtc8822b1Ant.o
endif
@ -322,6 +333,8 @@ endif
_OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8188e_mac.o\
hal/phydm/$(RTL871X)/halhwimg8188e_bb.o\
hal/phydm/$(RTL871X)/halhwimg8188e_rf.o\
hal/phydm/$(RTL871X)/halhwimg8188e_t_fw.o\
hal/phydm/$(RTL871X)/halhwimg8188e_s_fw.o\
hal/phydm/$(RTL871X)/halphyrf_8188e_ce.o\
hal/phydm/$(RTL871X)/phydm_regconfig8188e.o\
hal/phydm/$(RTL871X)/hal8188erateadaptive.o\
@ -383,6 +396,7 @@ endif
_OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8192e_mac.o\
hal/phydm/$(RTL871X)/halhwimg8192e_bb.o\
hal/phydm/$(RTL871X)/halhwimg8192e_rf.o\
hal/phydm/$(RTL871X)/halhwimg8192e_fw.o\
hal/phydm/$(RTL871X)/halphyrf_8192e_ce.o\
hal/phydm/$(RTL871X)/phydm_regconfig8192e.o\
hal/phydm/$(RTL871X)/phydm_rtl8192e.o
@ -450,9 +464,8 @@ endif
ifeq ($(CONFIG_RTL8812A), y)
EXTRA_CFLAGS += -DCONFIG_RTL8812A
_HAL_INTFS_FILES += hal/rtl8812a/hal8812a_fw.o
_OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8812a_mac.o\
_OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8812a_fw.o\
hal/phydm/$(RTL871X)/halhwimg8812a_mac.o\
hal/phydm/$(RTL871X)/halhwimg8812a_bb.o\
hal/phydm/$(RTL871X)/halhwimg8812a_rf.o\
hal/phydm/$(RTL871X)/halphyrf_8812a_ce.o\
@ -483,9 +496,8 @@ endif
endif
EXTRA_CFLAGS += -DCONFIG_RTL8821A
_HAL_INTFS_FILES += hal/rtl8812a/hal8821a_fw.o
_OUTSRC_FILES += hal/phydm/rtl8821a/halhwimg8821a_mac.o\
_OUTSRC_FILES += hal/phydm/rtl8821a/halhwimg8821a_fw.o\
hal/phydm/rtl8821a/halhwimg8821a_mac.o\
hal/phydm/rtl8821a/halhwimg8821a_bb.o\
hal/phydm/rtl8821a/halhwimg8821a_rf.o\
hal/phydm/rtl8812a/halphyrf_8812a_ce.o\
@ -499,6 +511,78 @@ endif
endif
RTL871X := rtl8822b
EXTRA_CFLAGS += -DCONFIG_RTL8822B
ifeq ($(CONFIG_USB_HCI), y)
MODULE_NAME = 8822bu
endif
ifeq ($(CONFIG_PCI_HCI), y)
MODULE_NAME = 8822be
endif
ifeq ($(CONFIG_SDIO_HCI), y)
MODULE_NAME = 8822bs
endif
ifeq ($(CONFIG_MP_INCLUDED), y)
### 8822B Default Enable VHT MP HW TX MODE ###
#EXTRA_CFLAGS += -DCONFIG_MP_VHT_HW_TX_MODE
#CONFIG_MP_VHT_HW_TX_MODE = y
endif
_HAL_HALMAC_FILES += hal/halmac/halmac_api.o
_HAL_HALMAC_FILES += hal/halmac/halmac_88xx/halmac_api_88xx.o \
hal/halmac/halmac_88xx/halmac_func_88xx.o \
hal/halmac/halmac_88xx/halmac_api_88xx_usb.o \
hal/halmac/halmac_88xx/halmac_api_88xx_sdio.o \
hal/halmac/halmac_88xx/halmac_api_88xx_pcie.o
_HAL_HALMAC_FILES += hal/halmac/halmac_88xx/halmac_8822b/halmac_8822b_pwr_seq.o \
hal/halmac/halmac_88xx/halmac_8822b/halmac_api_8822b.o \
hal/halmac/halmac_88xx/halmac_8822b/halmac_func_8822b.o \
hal/halmac/halmac_88xx/halmac_8822b/halmac_api_8822b_usb.o \
hal/halmac/halmac_88xx/halmac_8822b/halmac_api_8822b_sdio.o \
hal/halmac/halmac_88xx/halmac_8822b/halmac_api_8822b_pcie.o
_HAL_INTFS_FILES += hal/hal_halmac.o
_HAL_INTFS_FILES += hal/rtl8822b/rtl8822b_halinit.o \
hal/rtl8822b/rtl8822b_mac.o \
hal/rtl8822b/rtl8822b_cmd.o \
hal/rtl8822b/rtl8822b_phy.o \
hal/rtl8822b/rtl8822b_ops.o
_HAL_INTFS_FILES += hal/rtl8822b/$(HCI_NAME)/rtl$(MODULE_NAME)_halinit.o \
hal/rtl8822b/$(HCI_NAME)/rtl$(MODULE_NAME)_halmac.o \
hal/rtl8822b/$(HCI_NAME)/rtl$(MODULE_NAME)_io.o \
hal/rtl8822b/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
hal/rtl8822b/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o \
hal/rtl8822b/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
hal/rtl8822b/$(HCI_NAME)/rtl$(MODULE_NAME)_ops.o
ifeq ($(CONFIG_USB_HCI), y)
_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8822B_USB.o
endif
ifeq ($(CONFIG_PCI_HCI), y)
_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8822B_PCIE.o
endif
ifeq ($(CONFIG_SDIO_HCI), y)
#_HAL_INTFS_FILES +=hal/efuse/$(RTL871X)/HalEfuseMask8822B_SDIO.o
endif
_OUTSRC_FILES += hal/phydm/rtl8822b/halhwimg8822b_bb.o \
hal/phydm/rtl8822b/halhwimg8822b_fw.o \
hal/phydm/rtl8822b/halhwimg8822b_mac.o \
hal/phydm/rtl8822b/halhwimg8822b_rf.o \
hal/phydm/rtl8822b/halphyrf_8822b.o \
hal/phydm/rtl8822b/phydm_hal_api8822b.o \
hal/phydm/rtl8822b/phydm_iqk_8822b.o \
hal/phydm/rtl8822b/phydm_regconfig8822b.o \
hal/phydm/rtl8822b/phydm_rtl8822b.o
_HAL_INTFS_FILES += $(_HAL_HALMAC_FILES)
########### HAL_RTL8723B #################################
ifeq ($(CONFIG_RTL8723B), y)
@ -525,7 +609,7 @@ _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_hal_init.o \
hal/$(RTL871X)/$(RTL871X)_dm.o \
hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
hal/$(RTL871X)/$(RTL871X)_cmd.o \
hal/$(RTL871X)/hal8723b_fw.o
_HAL_INTFS_FILES += \
hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
@ -549,6 +633,7 @@ endif
_OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8723b_bb.o\
hal/phydm/$(RTL871X)/halhwimg8723b_mac.o\
hal/phydm/$(RTL871X)/halhwimg8723b_rf.o\
hal/phydm/$(RTL871X)/halhwimg8723b_fw.o\
hal/phydm/$(RTL871X)/halhwimg8723b_mp.o\
hal/phydm/$(RTL871X)/phydm_regconfig8723b.o\
hal/phydm/$(RTL871X)/halphyrf_8723b_ce.o\
@ -559,8 +644,8 @@ endif
########### HAL_RTL8814A #################################
ifeq ($(CONFIG_RTL8814A), y)
## ADD NEW VHT MP HW TX MODE ##
#EXTRA_CFLAGS += -DCONFIG_MP_VHT_HW_TX_MODE
#CONFIG_MP_VHT_HW_TX_MODE = y
EXTRA_CFLAGS += -DCONFIG_MP_VHT_HW_TX_MODE
CONFIG_MP_VHT_HW_TX_MODE = y
##########################################
RTL871X = rtl8814a
ifeq ($(CONFIG_USB_HCI), y)
@ -615,6 +700,7 @@ endif
_OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8814a_bb.o\
hal/phydm/$(RTL871X)/halhwimg8814a_mac.o\
hal/phydm/$(RTL871X)/halhwimg8814a_rf.o\
hal/phydm/$(RTL871X)/halhwimg8814a_fw.o\
hal/phydm/$(RTL871X)/phydm_iqk_8814a.o\
hal/phydm/$(RTL871X)/phydm_regconfig8814a.o\
hal/phydm/$(RTL871X)/halphyrf_8814a_ce.o\
@ -652,7 +738,7 @@ _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_hal_init.o \
hal/$(RTL871X)/$(RTL871X)_dm.o \
hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
hal/$(RTL871X)/$(RTL871X)_cmd.o \
hal/$(RTL871X)/hal8703b_fw.o
_HAL_INTFS_FILES += \
hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
@ -676,6 +762,7 @@ endif
_OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8703b_bb.o\
hal/phydm/$(RTL871X)/halhwimg8703b_mac.o\
hal/phydm/$(RTL871X)/halhwimg8703b_rf.o\
hal/phydm/$(RTL871X)/halhwimg8703b_fw.o\
hal/phydm/$(RTL871X)/phydm_regconfig8703b.o\
hal/phydm/$(RTL871X)/halphyrf_8703b.o
endif
@ -735,6 +822,7 @@ endif
_OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8723d_bb.o\
hal/phydm/$(RTL871X)/halhwimg8723d_mac.o\
hal/phydm/$(RTL871X)/halhwimg8723d_rf.o\
hal/phydm/$(RTL871X)/halhwimg8723d_fw.o\
hal/phydm/$(RTL871X)/phydm_regconfig8723d.o\
hal/phydm/$(RTL871X)/phydm_rtl8723d.o\
hal/phydm/$(RTL871X)/halphyrf_8723d.o
@ -766,7 +854,7 @@ _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_hal_init.o \
hal/$(RTL871X)/$(RTL871X)_dm.o \
hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
hal/$(RTL871X)/$(RTL871X)_cmd.o \
hal/$(RTL871X)/hal8188f_fw.o
_HAL_INTFS_FILES += \
hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
@ -791,6 +879,7 @@ endif
_OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8188f_bb.o\
hal/phydm/$(RTL871X)/halhwimg8188f_mac.o\
hal/phydm/$(RTL871X)/halhwimg8188f_rf.o\
hal/phydm/$(RTL871X)/halhwimg8188f_fw.o\
hal/phydm/$(RTL871X)/phydm_regconfig8188f.o\
hal/phydm/$(RTL871X)/halphyrf_8188f.o \
hal/phydm/$(RTL871X)/phydm_rtl8188f.o
@ -798,21 +887,19 @@ _OUTSRC_FILES += hal/phydm/$(RTL871X)/halhwimg8188f_bb.o\
endif
########### HAL_RTL8822B #################################
ifeq ($(CONFIG_RTL8822B), y)
include $(TopDIR)/rtl8822b.mk
endif
#ifeq ($(CONFIG_RTL8822B), y)
#include $(TopDIR)/rtl8822b.mk
#endif
########### HAL_RTL8821C #################################
ifeq ($(CONFIG_RTL8821C), y)
include $(TopDIR)/rtl8821c.mk
_OUTSRC_FILES += hal/phydm/rtl8821c/halhwimg8821c_bb.o \
hal/phydm/rtl8821c/halhwimg8821c_mac.o \
hal/phydm/rtl8821c/halhwimg8821c_rf.o \
_OUTSRC_FILES += hal/phydm/rtl8821c/halhwimg8821c_testchip_bb.o \
hal/phydm/rtl8821c/halhwimg8821c_testchip_mac.o \
hal/phydm/rtl8821c/halhwimg8821c_testchip_rf.o \
hal/phydm/rtl8821c/phydm_hal_api8821c.o \
hal/phydm/rtl8821c/phydm_regconfig8821c.o\
hal/phydm/rtl8821c/halphyrf_8821c.o\
hal/phydm/rtl8821c/phydm_iqk_8821c.o
hal/phydm/rtl8821c/phydm_regconfig8821c.o
endif
########### AUTO_CFG #################################
@ -908,25 +995,8 @@ endif
ifeq ($(CONFIG_LOAD_PHY_PARA_FROM_FILE), y)
EXTRA_CFLAGS += -DCONFIG_LOAD_PHY_PARA_FROM_FILE
#EXTRA_CFLAGS += -DREALTEK_CONFIG_PATH_WITH_IC_NAME_FOLDER
#EXTRA_CFLAGS += -DREALTEK_CONFIG_PATH=\"/lib/firmware/\"
EXTRA_CFLAGS += -DREALTEK_CONFIG_PATH=\"\"
endif
ifeq ($(CONFIG_TXPWR_BY_RATE_EN), n)
EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE_EN=0
else ifeq ($(CONFIG_TXPWR_BY_RATE_EN), y)
EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE_EN=1
else ifeq ($(CONFIG_TXPWR_BY_RATE_EN), auto)
EXTRA_CFLAGS += -DCONFIG_TXPWR_BY_RATE_EN=2
endif
ifeq ($(CONFIG_TXPWR_LIMIT_EN), n)
EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT_EN=0
else ifeq ($(CONFIG_TXPWR_LIMIT_EN), y)
EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT_EN=1
else ifeq ($(CONFIG_TXPWR_LIMIT_EN), auto)
EXTRA_CFLAGS += -DCONFIG_TXPWR_LIMIT_EN=2
EXTRA_CFLAGS += -DREALTEK_CONFIG_PATH=\"/etc/firmware/\"
#EXTRA_CFLAGS += -DREALTEK_CONFIG_PATH=\"$(TopDIR)/\"
endif
ifeq ($(CONFIG_CALIBRATE_TX_POWER_BY_REGULATORY), y)
@ -1059,6 +1129,7 @@ EXTRA_CFLAGS += -DDM_ODM_SUPPORT_TYPE=0x04
ifeq ($(CONFIG_PLATFORM_I386_PC), y)
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
EXTRA_CFLAGS += -DPLATFORM_LINUX
SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
ARCH ?= $(SUBARCH)
CROSS_COMPILE ?=
@ -1068,14 +1139,13 @@ MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
INSTALL_PREFIX :=
endif
ifeq ($(CONFIG_PLATFORM_NV_TK1), y)
EXTRA_CFLAGS += -DCONFIG_PLATFORM_NV_TK1
ifeq ($(CONFIG_PLATFORM_ARM_RPI), y)
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
EXTRA_CFLAGS += -DPLATFORM_LINUX
ARCH ?= arm
CROSS_COMPILE ?=
KVER := $(shell uname -r)
KVER ?= $(shell uname -r)
KSRC := /lib/modules/$(KVER)/build
MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
INSTALL_PREFIX :=
@ -1862,7 +1932,7 @@ ifeq ($(CONFIG_RTL8723B), y)
$(MODULE_NAME)-$(CONFIG_MP_INCLUDED)+= core/rtw_bt_mp.o
endif
obj-$(CONFIG_RTL8822BU) := $(MODULE_NAME).o
obj-m := $(MODULE_NAME).o
else
@ -1871,7 +1941,7 @@ export CONFIG_RTL8822BU = m
all: modules
modules:
$(MAKE) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) -C $(KSRC) M=$(shell pwd) modules
$(MAKE) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) -C $(KSRC) M=$(shell pwd) modules
strip:
$(CROSS_COMPILE)strip $(MODULE_NAME).ko --strip-unneeded
@ -1892,8 +1962,10 @@ config_r:
.PHONY: modules clean
clean:
#$(MAKE) -C $(KSRC) M=$(shell pwd) clean
cd hal ; rm -fr */*/*/*.mod.c */*/*/*.mod */*/*/*.o */*/*/.*.cmd */*/*/*.ko
$(MAKE) -C $(KSRC) M=$(shell pwd) clean
cd hal/phydm/ ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko
cd hal/phydm/ ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
cd hal/led ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
cd hal ; rm -fr */*/*.mod.c */*/*.mod */*/*.o */*/.*.cmd */*/*.ko
cd hal ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko
cd hal ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko

46
README.md 100644
View File

@ -0,0 +1,46 @@
<u>**8822BU for Linux**</u>
Driver for 802.11ac USB Adapter with
RTL8822BU chipset
Only STA/Monitor Mode is supported, no AP.
A few known wireless cards that use this driver include
* [Edimax EW-7822ULC](http://us.edimax.com/edimax/merchandise/merchandise_detail/data/edimax/us/wireless_adapters_ac1200_dual-band/ew-7822ulc/)
* [ASUS AC-53 NANO](https://www.asus.com/Networking/USB-AC53-Nano/)
> NOTE: At least v4.7 is needed to compile this module
> sorry people with older kernels, the code is removed.
> Upon request I can work towards making it backwards compatible.
Currently tested on X86_64 and ARM platform(s) **only**,
cross compile possible.
For compiling type
`make`
in source dir
To install the firmware files
`sudo make install`
To Unload driver you may need to disconnect the device
If the driver fails building consult your distro how to
install the kernel sources and build an <u>external</u> module.
**NOTES**
This driver allows use of wpa_supplicant by using the nl80211 driver
`wpa_supplicant -Dnl80211`
If installing on Rasberry Pi or other "armv71" devices, edit the Makefile and set `CONFIG_PLATFORM_ARM_RPI = y` and `CONFIG_PLATFORM_I386_PC = n`
**STATUS**
Driver works fine (some sort of)
Most of the work is done is cleaning the driver and make this mess **readable** for conversion.
Updates for wireless-ext/cfg80211 are not accepted.
**BUGS**

View File

@ -44,6 +44,7 @@
#ifdef PLATFORM_LINUX
#include <osdep_service_linux.h>
#include <linux/sched/signal.h>
#endif
#ifdef PLATFORM_OS_XP

View File

@ -219,6 +219,9 @@ static struct usb_device_id rtw_usb_id_tbl[] = {
#ifdef CONFIG_RTL8822B
/*=== Realtek demoboard ===*/
{USB_DEVICE(0x0B05, 0x1812), .driver_info = RTL8812}, /* ASUS - Edimax */
{USB_DEVICE(0x7392, 0xB822), .driver_info = RTL8822B}, /* Edimax - EW-7822ULC */
{USB_DEVICE(0x0BDA, 0xB812), .driver_info = RTL8822B},
{USB_DEVICE_AND_INTERFACE_INFO(USB_VENDER_ID_REALTEK, 0xB82C, 0xff, 0xff, 0xff), .driver_info = RTL8822B}, /* Default ID for USB multi-function */
{USB_DEVICE_AND_INTERFACE_INFO(USB_VENDER_ID_REALTEK, 0xB812, 0xff, 0xff, 0xff), .driver_info = RTL8822B}, /* Default ID for USB Single-function, WiFi only */
#endif /* CONFIG_RTL8822B */

View File

@ -1987,7 +1987,11 @@ static int readFile(struct file *fp, char *buf, int len)
return -EPERM;
while (sum < len) {
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0))
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 14, 0))
// Since Linux-4.14, the `__vfs_read` has been obsoleted for drivers.
// Use `kernel_read` instead.
rlen = kernel_read(fp, (buf + sum), (len - sum), &fp->f_pos);
#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0)) && (LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0))
rlen = __vfs_read(fp, buf + sum, len - sum, &fp->f_pos);
#else
rlen = fp->f_op->read(fp, buf + sum, len - sum, &fp->f_pos);