mirror of
https://github.com/aircrack-ng/rtl8812au.git
synced 2024-11-26 23:24:11 +00:00
commit
2bf997aed7
2
Makefile
2
Makefile
@ -1037,7 +1037,7 @@ SUBARCH := $(shell uname -m | sed -e s/i.86/i386/ | sed -e s/aarch64/arm64/ )
|
||||
ARCH ?= $(SUBARCH)
|
||||
CROSS_COMPILE ?=
|
||||
KVER := $(shell uname -r)
|
||||
KSRC := /lib/modules/$(KVER)/build
|
||||
KSRC ?= /lib/modules/$(KVER)/build
|
||||
MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
|
||||
INSTALL_PREFIX :=
|
||||
STAGINGMODDIR := /lib/modules/$(KVER)/kernel/drivers/staging
|
||||
|
51
README.md
51
README.md
@ -1,25 +1,25 @@
|
||||
# RTL8812AU/21AU and RTL8814AU drivers
|
||||
# with monitor mode and frame injection
|
||||
## RTL8812AU/21AU and RTL8814AU drivers
|
||||
## with monitor mode and frame injection
|
||||
|
||||
## DKMS
|
||||
### DKMS
|
||||
This driver can be installed using [DKMS]. This is a system which will automatically recompile and install a kernel module when a new kernel gets installed or updated. To make use of DKMS, install the `dkms` package, which on Debian (based) systems is done like this:
|
||||
```
|
||||
sudo apt install dkms
|
||||
```
|
||||
|
||||
## Installation of Driver
|
||||
### Installation of Driver
|
||||
In order to install the driver open a terminal in the directory with the source code and execute the following command:
|
||||
```
|
||||
sudo ./dkms-install.sh
|
||||
```
|
||||
|
||||
## Removal of Driver
|
||||
### Removal of Driver
|
||||
In order to remove the driver from your system open a terminal in the directory with the source code and execute the following command:
|
||||
```
|
||||
sudo ./dkms-remove.sh
|
||||
```
|
||||
|
||||
## Make
|
||||
### Make
|
||||
For building & installing the rtl8812au/rtl8821au driver with 'make' use
|
||||
```
|
||||
make
|
||||
@ -31,7 +31,7 @@ make RTL8814=1
|
||||
make install RTL8814=1
|
||||
```
|
||||
|
||||
## Notes
|
||||
### Notes
|
||||
Download
|
||||
```
|
||||
git clone -b v5.2.20 https://github.com/aircrack-ng/rtl8812au.git
|
||||
@ -72,15 +72,36 @@ For setting TX power
|
||||
sudo iw wlan0 set txpower fixed 3000
|
||||
```
|
||||
|
||||
## LED Parameter
|
||||
```
|
||||
We've added the "realtek-leds.conf" in build directory,
|
||||
with this you may change the leds to
|
||||
"2: Allways On", "1: Normal" or "0: Allways Off" with placing the file in "/etc/modprobe.d/
|
||||
### LED control
|
||||
|
||||
Manual modprobe will override this file if option value also included at the command line, e.g.,
|
||||
$ sudo modprobe -r 8812au
|
||||
$ sudo modprobe 8812au rtw_led_ctrl=1
|
||||
#### You can now control LED behaviour statically by Makefile, for example:
|
||||
|
||||
```sh
|
||||
CONFIG_LED_ENABLE = n
|
||||
```
|
||||
value can be y or n
|
||||
|
||||
#### statically by module parameter in /etc/modprobe.d/8812au.conf or wherever, for example:
|
||||
|
||||
```sh
|
||||
options 8812au rtw_led_enable=0
|
||||
```
|
||||
value can be 0 or 1
|
||||
|
||||
#### or dynamically by writing to /proc/net/rtl8812au/$(your interface name)/led_enable, for example:
|
||||
|
||||
```sh
|
||||
$ echo "0" > /proc/net/rtl8812au/$(your interface name)/led_enable
|
||||
```
|
||||
value can be 0 or 1
|
||||
|
||||
#### check current value:
|
||||
|
||||
```sh
|
||||
$ cat /proc/net/rtl8812au/$(your interface name)/led_enable
|
||||
```
|
||||
|
||||
### NetworkManager
|
||||
|
||||
Newer versions of NetworkManager switches to random MAC address. Some users would prefer to use a fixed address.
|
||||
Simply add these lines below
|
||||
|
@ -6535,7 +6535,7 @@ u8 GetHalDefVar8814A(PADAPTER padapter, HAL_DEF_VARIABLE variable, void *pval)
|
||||
break;
|
||||
|
||||
case HAL_DEF_RX_STBC:
|
||||
*(u8*)pval = 1;
|
||||
*(u8*)pval = 4;
|
||||
break;
|
||||
|
||||
case HAL_DEF_EXPLICIT_BEAMFORMER:
|
||||
|
@ -2004,16 +2004,14 @@ hal_ReadUsbModeSwitch_8814AU(
|
||||
IN BOOLEAN AutoloadFail
|
||||
)
|
||||
{
|
||||
#if 0
|
||||
if(AutoloadFail)
|
||||
{
|
||||
UsbModeSwitch_SetUsbModeMechOn(Adapter, _FALSE);
|
||||
}
|
||||
|
||||
HAL_DATA_TYPE *pHalData = GET_HAL_DATA(Adapter);
|
||||
|
||||
if (AutoloadFail)
|
||||
pHalData->EEPROMUsbSwitch = _FALSE;
|
||||
else
|
||||
{
|
||||
UsbModeSwitch_SetUsbModeMechOn(Adapter, ((PROMContent[8]&BIT1)>>1));
|
||||
}
|
||||
#endif
|
||||
/* check efuse 0x0E bit2 */
|
||||
pHalData->EEPROMUsbSwitch = (PROMContent[EEPROM_USB_MODE_8814A] & BIT1) >> 1;
|
||||
}
|
||||
|
||||
static VOID
|
||||
|
@ -4162,6 +4162,11 @@ static int rtw_cfg80211_add_monitor_if(_adapter *padapter, char *name, struct ne
|
||||
mon_ndev->type = ARPHRD_IEEE80211_RADIOTAP;
|
||||
strncpy(mon_ndev->name, name, IFNAMSIZ);
|
||||
mon_ndev->name[IFNAMSIZ - 1] = 0;
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12 ,0))
|
||||
mon_ndev->needs_free_netdev = true;
|
||||
#else
|
||||
mon_ndev->destructor = rtw_ndev_destructor;
|
||||
#endif
|
||||
#if (LINUX_VERSION_CODE > KERNEL_VERSION(4, 11, 8))
|
||||
mon_ndev->priv_destructor = rtw_ndev_destructor;
|
||||
#else
|
||||
|
Loading…
Reference in New Issue
Block a user