numerous updates plus concurrent mode support
This commit is contained in:
parent
b46f775f66
commit
abf14c6b29
21
Makefile
21
Makefile
@ -84,8 +84,6 @@ CONFIG_RTW_ADAPTIVITY_MODE = normal
|
|||||||
CONFIG_SIGNAL_SCALE_MAPPING = n
|
CONFIG_SIGNAL_SCALE_MAPPING = n
|
||||||
# necessary for WPA3 support
|
# necessary for WPA3 support
|
||||||
CONFIG_80211W = y
|
CONFIG_80211W = y
|
||||||
# necessary for WPA3 support
|
|
||||||
CONFIG_GTK_OL = y
|
|
||||||
CONFIG_REDUCE_TX_CPU_LOADING = n
|
CONFIG_REDUCE_TX_CPU_LOADING = n
|
||||||
CONFIG_BR_EXT = y
|
CONFIG_BR_EXT = y
|
||||||
CONFIG_TDLS = n
|
CONFIG_TDLS = n
|
||||||
@ -1069,10 +1067,6 @@ ifeq ($(CONFIG_MP_INCLUDED), y)
|
|||||||
EXTRA_CFLAGS += -DCONFIG_MP_INCLUDED
|
EXTRA_CFLAGS += -DCONFIG_MP_INCLUDED
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(CONFIG_CONCURRENT_MODE), y)
|
|
||||||
EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(CONFIG_POWER_SAVING), y)
|
ifeq ($(CONFIG_POWER_SAVING), y)
|
||||||
ifneq ($(CONFIG_IPS_MODE), default)
|
ifneq ($(CONFIG_IPS_MODE), default)
|
||||||
EXTRA_CFLAGS += -DRTW_IPS_MODE=$(CONFIG_IPS_MODE)
|
EXTRA_CFLAGS += -DRTW_IPS_MODE=$(CONFIG_IPS_MODE)
|
||||||
@ -1357,12 +1351,10 @@ EXTRA_CFLAGS += -DCONFIG_RTW_MBO -DCONFIG_RTW_80211K -DCONFIG_RTW_WNM -DCONFIG_R
|
|||||||
EXTRA_CFLAGS += -DCONFIG_RTW_80211R
|
EXTRA_CFLAGS += -DCONFIG_RTW_80211R
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# necessary for WPA3 support
|
|
||||||
ifeq ($(CONFIG_GTK_OL), y)
|
|
||||||
EXTRA_CFLAGS += -DCONFIG_GTK_OL
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(CONFIG_PLATFORM_I386_PC), y)
|
ifeq ($(CONFIG_PLATFORM_I386_PC), y)
|
||||||
|
ifeq ($(CONFIG_CONCURRENT_MODE), y)
|
||||||
|
EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
|
||||||
|
endif
|
||||||
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
|
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
|
||||||
EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
|
EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
|
||||||
SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
|
SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
|
||||||
@ -1378,6 +1370,9 @@ endif
|
|||||||
### START RASPBERRY PI OS SUPPORT
|
### START RASPBERRY PI OS SUPPORT
|
||||||
|
|
||||||
ifeq ($(CONFIG_PLATFORM_ARM_RPI), y)
|
ifeq ($(CONFIG_PLATFORM_ARM_RPI), y)
|
||||||
|
ifeq ($(CONFIG_CONCURRENT_MODE), y)
|
||||||
|
EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
|
||||||
|
endif
|
||||||
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
|
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
|
||||||
EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
|
EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
|
||||||
#EXTRA_CFLAGS += -DPLATFORM_LINUX
|
#EXTRA_CFLAGS += -DPLATFORM_LINUX
|
||||||
@ -1390,6 +1385,9 @@ INSTALL_PREFIX :=
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(CONFIG_PLATFORM_ARM64_RPI), y)
|
ifeq ($(CONFIG_PLATFORM_ARM64_RPI), y)
|
||||||
|
ifeq ($(CONFIG_CONCURRENT_MODE), y)
|
||||||
|
EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
|
||||||
|
endif
|
||||||
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
|
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
|
||||||
EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
|
EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
|
||||||
#EXTRA_CFLAGS += -DPLATFORM_LINUX
|
#EXTRA_CFLAGS += -DPLATFORM_LINUX
|
||||||
@ -2576,4 +2574,3 @@ clean:
|
|||||||
rm -fr *.mod.c *.mod *.o .*.cmd *.ko *~
|
rm -fr *.mod.c *.mod *.o .*.cmd *.ko *~
|
||||||
rm -fr .tmp_versions
|
rm -fr .tmp_versions
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
23
cmode-on.sh
Executable file
23
cmode-on.sh
Executable file
@ -0,0 +1,23 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# 2021-12-03
|
||||||
|
#
|
||||||
|
# Purpose: Turn Concurrent Mode on.
|
||||||
|
#
|
||||||
|
# To make this file executable:
|
||||||
|
#
|
||||||
|
# $ chmod +x edit-options.sh
|
||||||
|
#
|
||||||
|
# To execute this file:
|
||||||
|
#
|
||||||
|
# $ ./cmode-on.sh
|
||||||
|
|
||||||
|
sed -i 's/CONFIG_CONCURRENT_MODE = n/CONFIG_CONCURRENT_MODE = y/g' Makefile
|
||||||
|
RESULT=$?
|
||||||
|
|
||||||
|
if [[ "$RESULT" != "0" ]]; then
|
||||||
|
echo "An error occurred and Concurrent Mode was not turned on in Makefile."
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
echo "Concurrent Mode was turned on in Makefile as planned."
|
||||||
|
fi
|
68
docs/Concurrent_Mode.md
Normal file
68
docs/Concurrent_Mode.md
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
2021-12-03
|
||||||
|
|
||||||
|
What is Concurrent Mode?
|
||||||
|
|
||||||
|
Concurrent Mode creates 2 wireless network interfaces (wlan0, wlan1) and those
|
||||||
|
two interfaces share the same WiFi adapter.
|
||||||
|
|
||||||
|
This feature allows performing 2 separate wireless tasks at the same time with a
|
||||||
|
single WiFi adapter.
|
||||||
|
|
||||||
|
For example:
|
||||||
|
|
||||||
|
Use station mode (called managed or client mode also) to connect with an
|
||||||
|
AP to access the internet at the same time as it also performs as an AP
|
||||||
|
to allow other devices to connect to the second interface.
|
||||||
|
|
||||||
|
Note: Only supports 3 combinations
|
||||||
|
|
||||||
|
1. Station mode + Station mode
|
||||||
|
2. Station mode + AP mode
|
||||||
|
3. Station mode + P2P mode
|
||||||
|
|
||||||
|
-----
|
||||||
|
|
||||||
|
How do I Enable Concurrent Mode?
|
||||||
|
|
||||||
|
Run the following as instructed during the installation process:
|
||||||
|
|
||||||
|
```
|
||||||
|
./cmode-on.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
Once the driver is fully installed and you have rebooted the system, you
|
||||||
|
can verify that this works by typing the “iw dev” command, You should
|
||||||
|
see two wireless interfaces, and the MAC address of secondary interface
|
||||||
|
is nearly the same as the first except for one digit.
|
||||||
|
|
||||||
|
-----
|
||||||
|
|
||||||
|
FAQ:
|
||||||
|
|
||||||
|
Q: Which wireless interface can run in station mode? Which
|
||||||
|
wireless interface can run in AP mode?
|
||||||
|
|
||||||
|
A: It is recommended to run station mode in wlan0 and AP or P2P mode in
|
||||||
|
wlan1.
|
||||||
|
|
||||||
|
Q: How is the throughput with 2 wireless interfaces in concurrent mode?
|
||||||
|
|
||||||
|
A: Because there is only one physical hardware device, the two wireless
|
||||||
|
interfaces (wlan0, wlan1) will share the transmit bandwidth.
|
||||||
|
|
||||||
|
For example:
|
||||||
|
|
||||||
|
Assume the throughput limitation of current environment is 85Mb/s,
|
||||||
|
then the throughput of wlan0 + the throughput of wlan1 is basically
|
||||||
|
equal or smaller than 85Mb/s.
|
||||||
|
|
||||||
|
Q: Everything is fine when I only start hostapd, but when I start running
|
||||||
|
station mode in the other interface at the same time, hostapd will disconnect
|
||||||
|
for a moment then will reconnect again, however ,the channel is differ from
|
||||||
|
before. Is something wrong?
|
||||||
|
|
||||||
|
A: Don’t worry, it is fine! As mentioned before, those two wireless interfaces
|
||||||
|
share the same physical hardware device. That means those 2 wireless interfaces
|
||||||
|
must use the same channel. The AP/P2P interface should use the same channel as
|
||||||
|
the station interface. If both interfaces are running in station mode, the
|
||||||
|
connected APs MUST be on same channel.
|
@ -1,7 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
SCRIPT_NAME="install-driver.sh"
|
SCRIPT_NAME="install-driver.sh"
|
||||||
SCRIPT_VERSION="20211026"
|
SCRIPT_VERSION="20211204"
|
||||||
|
|
||||||
DRV_NAME="rtl88x2bu"
|
DRV_NAME="rtl88x2bu"
|
||||||
DRV_VERSION="5.13.1"
|
DRV_VERSION="5.13.1"
|
||||||
|
@ -2,13 +2,13 @@
|
|||||||
#
|
#
|
||||||
# Purpose: Change settings in the Makefile to support compiling for Raspberry Pi OS (32 bit).
|
# Purpose: Change settings in the Makefile to support compiling for Raspberry Pi OS (32 bit).
|
||||||
#
|
#
|
||||||
# To make this file executable:
|
# To make this file executable (if necessary):
|
||||||
#
|
#
|
||||||
# $ chmod +x edit-options.sh
|
# $ chmod +x raspiOS-32.sh
|
||||||
#
|
#
|
||||||
# To execute this file:
|
# To execute this file:
|
||||||
#
|
#
|
||||||
# $ ./raspi32.sh
|
# $ ./raspiOS-32.sh
|
||||||
|
|
||||||
sed -i 's/CONFIG_PLATFORM_I386_PC = y/CONFIG_PLATFORM_I386_PC = n/g' Makefile
|
sed -i 's/CONFIG_PLATFORM_I386_PC = y/CONFIG_PLATFORM_I386_PC = n/g' Makefile
|
||||||
RESULT=$?
|
RESULT=$?
|
@ -4,11 +4,11 @@
|
|||||||
#
|
#
|
||||||
# To make this file executable:
|
# To make this file executable:
|
||||||
#
|
#
|
||||||
# $ chmod +x edit-options.sh
|
# $ chmod +x raspiOS-64.sh
|
||||||
#
|
#
|
||||||
# To execute this file:
|
# To execute this file:
|
||||||
#
|
#
|
||||||
# $ ./raspi64.sh
|
# $ ./raspiOS-64.sh
|
||||||
|
|
||||||
sed -i 's/CONFIG_PLATFORM_I386_PC = y/CONFIG_PLATFORM_I386_PC = n/g' Makefile
|
sed -i 's/CONFIG_PLATFORM_I386_PC = y/CONFIG_PLATFORM_I386_PC = n/g' Makefile
|
||||||
RESULT=$?
|
RESULT=$?
|
@ -1,12 +1,30 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
SCRIPT_NAME="remove-driver.sh"
|
SCRIPT_NAME="remove-driver.sh"
|
||||||
SCRIPT_VERSION="20211026"
|
SCRIPT_VERSION="20211204"
|
||||||
|
|
||||||
DRV_NAME="rtl88x2bu"
|
DRV_NAME="rtl88x2bu"
|
||||||
DRV_VERSION="5.13.1"
|
DRV_VERSION="5.13.1"
|
||||||
OPTIONS_FILE="88x2bu.conf"
|
OPTIONS_FILE="88x2bu.conf"
|
||||||
|
|
||||||
|
NO_PROMPT=0
|
||||||
|
|
||||||
|
# Get the options
|
||||||
|
while [ $# -gt 0 ]
|
||||||
|
do
|
||||||
|
case $1 in
|
||||||
|
NoPrompt)
|
||||||
|
NO_PROMPT=1 ;;
|
||||||
|
*h|*help|*)
|
||||||
|
echo "Syntax $0 <NoPrompt>"
|
||||||
|
echo " NoPrompt - noninteractive mode"
|
||||||
|
echo " -h|--help - Show help"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
if [[ $EUID -ne 0 ]]
|
if [[ $EUID -ne 0 ]]
|
||||||
then
|
then
|
||||||
echo "You must run this script with superuser (root) privileges."
|
echo "You must run this script with superuser (root) privileges."
|
||||||
@ -36,11 +54,14 @@ else
|
|||||||
exit $RESULT
|
exit $RESULT
|
||||||
fi
|
fi
|
||||||
|
|
||||||
read -p "Are you ready to reboot now? [y/N] " -n 1 -r
|
if [ $NO_PROMPT -ne 1 ]
|
||||||
echo # move to a new line
|
then
|
||||||
if [[ $REPLY =~ ^[Yy]$ ]]
|
read -p "Are you ready to reboot now? [y/N] " -n 1 -r
|
||||||
then
|
echo
|
||||||
reboot
|
if [[ $REPLY =~ ^[Yy]$ ]]
|
||||||
|
then
|
||||||
|
reboot
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
Loading…
x
Reference in New Issue
Block a user