mirror of
https://github.com/RinCat/RTL88x2BU-Linux-Driver.git
synced 2025-07-01 23:54:16 +00:00
Compare commits
3 Commits
1f0005d9be
...
fcf8bf2936
Author | SHA1 | Date | |
---|---|---|---|
fcf8bf2936 | |||
9d619f4c09 | |||
9f48662d71 |
@ -1,6 +1,6 @@
|
|||||||
# REALTEK RTL88x2B USB Linux Driver
|
# REALTEK RTL88x2B USB Linux Driver
|
||||||
**Current Driver Version**: 5.13.1-30
|
**Current Driver Version**: 5.13.1-30
|
||||||
**Support Kernel**: 2.6.24 ~ 6.14 (with unofficial patches)
|
**Support Kernel**: 2.6.24 ~ 6.15 (with unofficial patches)
|
||||||
|
|
||||||
Linux in-tree rtw8822bu driver is a work in progress. Check [this](https://lore.kernel.org/lkml/20220518082318.3898514-1-s.hauer@pengutronix.de/) patchset.
|
Linux in-tree rtw8822bu driver is a work in progress. Check [this](https://lore.kernel.org/lkml/20220518082318.3898514-1-s.hauer@pengutronix.de/) patchset.
|
||||||
|
|
||||||
@ -8,6 +8,8 @@ For official release notes please check ReleaseNotes.pdf.
|
|||||||
|
|
||||||
**Note:** if you believe your device is **RTL8812BU** or **RTL8822BU** but after loading the module no NIC shows up, the device ID maybe not be in the driver whitelist. In this case, please submit a new issue with `lsusb` result, and your device name, brand, website, etc.
|
**Note:** if you believe your device is **RTL8812BU** or **RTL8822BU** but after loading the module no NIC shows up, the device ID maybe not be in the driver whitelist. In this case, please submit a new issue with `lsusb` result, and your device name, brand, website, etc.
|
||||||
|
|
||||||
|
This driver does *NOT* support newer Realtek 802.11ax (Wi-Fi 6) chipsets such as RTL8852BU.
|
||||||
|
|
||||||
## Linux 5.18+ and RTW88 Driver
|
## Linux 5.18+ and RTW88 Driver
|
||||||
Starting from Linux 5.18, some distributions have added experimental RTW88 USB support (include RTW88x2BU support).
|
Starting from Linux 5.18, some distributions have added experimental RTW88 USB support (include RTW88x2BU support).
|
||||||
It is not yet stable but if it works well on your system, then you no longer need this driver.
|
It is not yet stable but if it works well on your system, then you no longer need this driver.
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
EXTRA_CFLAGS += -I$(src)/hal/phydm
|
ccflags-y += -I$(src)/hal/phydm
|
||||||
|
|
||||||
_PHYDM_FILES := hal/phydm/phydm_debug.o \
|
_PHYDM_FILES := hal/phydm/phydm_debug.o \
|
||||||
hal/phydm/phydm_antdiv.o\
|
hal/phydm/phydm_antdiv.o\
|
||||||
|
@ -725,11 +725,23 @@ void odm_initialize_timer(struct dm_struct *dm, struct phydm_timer_list *timer,
|
|||||||
void odm_cancel_timer(struct dm_struct *dm, struct phydm_timer_list *timer)
|
void odm_cancel_timer(struct dm_struct *dm, struct phydm_timer_list *timer)
|
||||||
{
|
{
|
||||||
#if (DM_ODM_SUPPORT_TYPE & ODM_AP)
|
#if (DM_ODM_SUPPORT_TYPE & ODM_AP)
|
||||||
|
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0))
|
||||||
|
timer_delete(timer);
|
||||||
|
#else
|
||||||
del_timer(timer);
|
del_timer(timer);
|
||||||
|
#endif
|
||||||
#elif (DM_ODM_SUPPORT_TYPE & ODM_CE) && defined(DM_ODM_CE_MAC80211)
|
#elif (DM_ODM_SUPPORT_TYPE & ODM_CE) && defined(DM_ODM_CE_MAC80211)
|
||||||
|
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0))
|
||||||
|
timer_delete(timer);
|
||||||
|
#else
|
||||||
del_timer(timer);
|
del_timer(timer);
|
||||||
|
#endif
|
||||||
#elif (DM_ODM_SUPPORT_TYPE & ODM_CE) && defined(DM_ODM_CE_MAC80211_V2)
|
#elif (DM_ODM_SUPPORT_TYPE & ODM_CE) && defined(DM_ODM_CE_MAC80211_V2)
|
||||||
|
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0))
|
||||||
|
timer_delete(&timer->timer);
|
||||||
|
#else
|
||||||
del_timer(&timer->timer);
|
del_timer(&timer->timer);
|
||||||
|
#endif
|
||||||
#elif (DM_ODM_SUPPORT_TYPE & ODM_CE)
|
#elif (DM_ODM_SUPPORT_TYPE & ODM_CE)
|
||||||
_cancel_timer_ex(timer);
|
_cancel_timer_ex(timer);
|
||||||
#elif (DM_ODM_SUPPORT_TYPE & ODM_WIN)
|
#elif (DM_ODM_SUPPORT_TYPE & ODM_WIN)
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
EXTRA_CFLAGS += -I$(src)/hal/phydm
|
ccflags-y += -I$(src)/hal/phydm
|
||||||
|
|
||||||
_PHYDM_FILES := hal/phydm/phydm_debug.o \
|
_PHYDM_FILES := hal/phydm/phydm_debug.o \
|
||||||
hal/phydm/phydm_interface.o\
|
hal/phydm/phydm_interface.o\
|
||||||
|
@ -387,12 +387,20 @@ __inline static void _set_timer(_timer *ptimer, u32 delay_time)
|
|||||||
|
|
||||||
__inline static void _cancel_timer(_timer *ptimer, u8 *bcancelled)
|
__inline static void _cancel_timer(_timer *ptimer, u8 *bcancelled)
|
||||||
{
|
{
|
||||||
|
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0))
|
||||||
|
*bcancelled = timer_delete_sync(&ptimer->timer) == 1 ? 1 : 0;
|
||||||
|
#else
|
||||||
*bcancelled = del_timer_sync(&ptimer->timer) == 1 ? 1 : 0;
|
*bcancelled = del_timer_sync(&ptimer->timer) == 1 ? 1 : 0;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
__inline static void _cancel_timer_async(_timer *ptimer)
|
__inline static void _cancel_timer_async(_timer *ptimer)
|
||||||
{
|
{
|
||||||
|
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0))
|
||||||
|
timer_delete(&ptimer->timer);
|
||||||
|
#else
|
||||||
del_timer(&ptimer->timer);
|
del_timer(&ptimer->timer);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void _init_workitem(_workitem *pwork, void *pfunc, void *cntx)
|
static inline void _init_workitem(_workitem *pwork, void *pfunc, void *cntx)
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
EXTRA_CFLAGS += -DCONFIG_RTL8822B
|
ccflags-y += -DCONFIG_RTL8822B
|
||||||
|
|
||||||
ifeq ($(CONFIG_MP_INCLUDED), y)
|
ifeq ($(CONFIG_MP_INCLUDED), y)
|
||||||
### 8822B Default Enable VHT MP HW TX MODE ###
|
### 8822B Default Enable VHT MP HW TX MODE ###
|
||||||
#EXTRA_CFLAGS += -DCONFIG_MP_VHT_HW_TX_MODE
|
#ccflags-y += -DCONFIG_MP_VHT_HW_TX_MODE
|
||||||
#CONFIG_MP_VHT_HW_TX_MODE = y
|
#CONFIG_MP_VHT_HW_TX_MODE = y
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user