New upstream version 5.3.9~git20201227
This commit is contained in:
parent
739e000bbf
commit
f075fe14db
|
@ -23,14 +23,14 @@
|
|||
|
||||
# Howto build/install
|
||||
1. You will need to blacklist another driver in order to use this one.
|
||||
2. "echo "blacklist r8188eu" > "/etc/modprobe.d/realtek.conf"
|
||||
3. "make && make install"<br>
|
||||
2. `echo "blacklist r8188eu" >> "/etc/modprobe.d/realtek.conf"`
|
||||
3. `make && make install`
|
||||
4. Reboot in order to blacklist and load the new driver/module.
|
||||
|
||||
# MONITOR MODE howto
|
||||
Use these steps to enter monitor mode.
|
||||
```
|
||||
$ sudo airmon-ng check-kill
|
||||
$ sudo airmon-ng check kill
|
||||
$ sudo ip link set <interface> down
|
||||
$ sudo iw dev <interface> set type monitor
|
||||
```
|
||||
|
@ -42,7 +42,7 @@ $ aireplay -9 <interface>
|
|||
|
||||
# NetworkManager configuration
|
||||
Add these lines below to "NetworkManager.conf" and ADD YOUR ADAPTER MAC below [keyfile]
|
||||
This will make the Network-Manager ignore the device, and therefor don't cause problems.
|
||||
This will make the Network-Manager ignore the device, and therefore don't cause problems.
|
||||
```
|
||||
[device]
|
||||
wifi.scan-rand-mac-address=no
|
||||
|
|
|
@ -7088,18 +7088,16 @@ exit:
|
|||
return ret;
|
||||
}
|
||||
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 8, 0))
|
||||
static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy,
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0))
|
||||
struct wireless_dev *wdev,
|
||||
#else
|
||||
struct net_device *ndev,
|
||||
#endif
|
||||
u16 frame_type, bool reg)
|
||||
#else
|
||||
static void cfg80211_rtw_update_mgmt_frame_register(struct wiphy *wiphy,
|
||||
struct wireless_dev *wdev,
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0))
|
||||
struct mgmt_frame_regs *upd)
|
||||
#else
|
||||
u16 frame_type, bool reg)
|
||||
#endif
|
||||
|
||||
{
|
||||
|
@ -7110,6 +7108,12 @@ static void cfg80211_rtw_update_mgmt_frame_register(struct wiphy *wiphy,
|
|||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0))
|
||||
struct net_device *ndev = wdev_to_ndev(wdev);
|
||||
#endif
|
||||
|
||||
/* hardcoded always true, to make it pass compilation */
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0))
|
||||
bool reg = true;
|
||||
#endif
|
||||
|
||||
_adapter *adapter;
|
||||
|
||||
struct rtw_wdev_priv *pwdev_priv;
|
||||
|
@ -7132,8 +7136,13 @@ static void cfg80211_rtw_update_mgmt_frame_register(struct wiphy *wiphy,
|
|||
|
||||
/* Wait QC Verify */
|
||||
return;
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 8, 0))
|
||||
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0))
|
||||
switch (upd->interface_stypes) {
|
||||
#else
|
||||
switch (frame_type) {
|
||||
#endif
|
||||
|
||||
case IEEE80211_STYPE_PROBE_REQ: /* 0x0040 */
|
||||
SET_CFG80211_REPORT_MGMT(pwdev_priv, IEEE80211_STYPE_PROBE_REQ, reg);
|
||||
break;
|
||||
|
@ -9454,10 +9463,10 @@ static struct cfg80211_ops rtw_cfg80211_ops = {
|
|||
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE)
|
||||
.mgmt_tx = cfg80211_rtw_mgmt_tx,
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 8, 0))
|
||||
.mgmt_frame_register = cfg80211_rtw_mgmt_frame_register,
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0))
|
||||
.update_mgmt_frame_registrations = cfg80211_rtw_mgmt_frame_register,
|
||||
#else
|
||||
.update_mgmt_frame_registrations = cfg80211_rtw_update_mgmt_frame_register,
|
||||
.mgmt_frame_register = cfg80211_rtw_mgmt_frame_register,
|
||||
#endif
|
||||
#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35))
|
||||
.action = cfg80211_rtw_mgmt_tx,
|
||||
|
@ -9792,5 +9801,3 @@ void rtw_cfg80211_dev_res_unregister(struct dvobj_priv *dvobj)
|
|||
rtw_wiphy_unregister(dvobj_to_wiphy(dvobj));
|
||||
#endif
|
||||
}
|
||||
|
||||
#endif /* CONFIG_IOCTL_CFG80211 */
|
||||
|
|
|
@ -2139,15 +2139,19 @@ static int isFileReadable(const char *path, u32 *sz)
|
|||
{
|
||||
struct file *fp;
|
||||
int ret = 0;
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
||||
mm_segment_t oldfs;
|
||||
#endif
|
||||
char buf;
|
||||
|
||||
fp = filp_open(path, O_RDONLY, 0);
|
||||
if (IS_ERR(fp))
|
||||
ret = PTR_ERR(fp);
|
||||
else {
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
||||
oldfs = get_fs();
|
||||
set_fs(KERNEL_DS);
|
||||
#endif
|
||||
|
||||
if (1 != readFile(fp, &buf, 1))
|
||||
ret = PTR_ERR(fp);
|
||||
|
@ -2159,8 +2163,9 @@ static int isFileReadable(const char *path, u32 *sz)
|
|||
*sz = i_size_read(fp->f_dentry->d_inode);
|
||||
#endif
|
||||
}
|
||||
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
||||
set_fs(oldfs);
|
||||
#endif
|
||||
filp_close(fp, NULL);
|
||||
}
|
||||
return ret;
|
||||
|
@ -2176,7 +2181,9 @@ static int isFileReadable(const char *path, u32 *sz)
|
|||
static int retriveFromFile(const char *path, u8 *buf, u32 sz)
|
||||
{
|
||||
int ret = -1;
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
||||
mm_segment_t oldfs;
|
||||
#endif
|
||||
struct file *fp;
|
||||
|
||||
if (path && buf) {
|
||||
|
@ -2184,10 +2191,14 @@ static int retriveFromFile(const char *path, u8 *buf, u32 sz)
|
|||
if (0 == ret) {
|
||||
RTW_INFO("%s openFile path:%s fp=%p\n", __FUNCTION__, path , fp);
|
||||
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
||||
oldfs = get_fs();
|
||||
set_fs(KERNEL_DS);
|
||||
#endif
|
||||
ret = readFile(fp, buf, sz);
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
||||
set_fs(oldfs);
|
||||
#endif
|
||||
closeFile(fp);
|
||||
|
||||
RTW_INFO("%s readFile, ret:%d\n", __FUNCTION__, ret);
|
||||
|
@ -2211,7 +2222,9 @@ static int retriveFromFile(const char *path, u8 *buf, u32 sz)
|
|||
static int storeToFile(const char *path, u8 *buf, u32 sz)
|
||||
{
|
||||
int ret = 0;
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
||||
mm_segment_t oldfs;
|
||||
#endif
|
||||
struct file *fp;
|
||||
|
||||
if (path && buf) {
|
||||
|
@ -2219,10 +2232,14 @@ static int storeToFile(const char *path, u8 *buf, u32 sz)
|
|||
if (0 == ret) {
|
||||
RTW_INFO("%s openFile path:%s fp=%p\n", __FUNCTION__, path , fp);
|
||||
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
||||
oldfs = get_fs();
|
||||
set_fs(KERNEL_DS);
|
||||
#endif
|
||||
ret = writeFile(fp, buf, sz);
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
||||
set_fs(oldfs);
|
||||
#endif
|
||||
closeFile(fp);
|
||||
|
||||
RTW_INFO("%s writeFile, ret:%d\n", __FUNCTION__, ret);
|
||||
|
|
Loading…
Reference in New Issue