[Make-wifi-fast] [OpenWrt-Devel] [PATCH] mac80211: add rtl8xxxu

dave taht dave at taht.net
Sun Dec 27 03:57:49 EST 2015


Given that this driver is now simpler, and cleaner/more understandable, 
perhaps it could be a target for the make-wifi-fast work? First goal 
would be to exert BQL-like backpressure to the upper portions of the 
stack, then add in ampdu support (still with backpressure), etc.


On 12/25/15 10:11 PM, Dirk Neukirchen wrote:
> OpenWrt is often used to develop or test new devices
> Some users might want to test and help to improve
> this new driver
>
> upstream commit notice 26f1fad29ad973b0fb26a9ca3dcb2a73dde781aa
>
> New driver: rtl8xxxu (mac80211)
> This is an alternate driver for a number of Realtek WiFi USB devices,
> including RTL8723AU, RTL8188CU, RTL8188RU, RTL8191CU, and RTL8192CU.
> It was written from scratch utilizing the Linux mac80211 stack.
>
> After spending months cleaning up the vendor provided rtl8723au
> driver, which comes with it's own 802.11 stack included, I decided to
> rewrite this driver from the bottom up.
>
> Many thanks to Johannes Berg for 802.11 insights and help and Larry
> Finger for help with the vendor driver.
>
> The full git log for the development of this driver can be found here:
> git git://git.kernel.org/pub/scm/linux/kernel/git/jes/linux.git
>      branch rtl8723au-mac80211
>
> This driver is still under development, but has proven to be very
> stable for me. It currently supports station mode only. It has support
> for OFDM and CCK rates. It does lack certain features found in the
> staging driver, such as power management, AMPDU, and 40MHz channel
> support. In addition it does not support AD-HOC, AP, and monitor mode
> support at this point.
>
> The driver is known to work with the following devices:
> Lenovo Yoga (rtl8723au)
> TP-Link TL-WN823N (rtl8192cu)
> Etekcity 6R (rtl8188cu)
> Daffodil LAN03 (rtl8188cu)
> Alfa AWUS036NHR (rtl8188ru)
>
> Compile tested only
>
> Signed-off-by: Dirk Neukirchen <dirkneukirchen at web.de>
> ---
>   package/kernel/mac80211/Makefile | 38 ++++++++++++++++++++++++++++++++++++++
>   1 file changed, 38 insertions(+)
>
> diff --git a/package/kernel/mac80211/Makefile b/package/kernel/mac80211/Makefile
> index bdde345..eb0f70c 100644
> --- a/package/kernel/mac80211/Makefile
> +++ b/package/kernel/mac80211/Makefile
> @@ -43,6 +43,7 @@ PKG_DRIVERS = \
>   	rtl8180 rtl8187 \
>   	rtlwifi rtlwifi-pci rtlwifi-usb rtl8192c-common rtl8192ce rtl8192se \
>   	rtl8192de rtl8192cu \
> +	rtl8xxxu \
>   	wlcore wl12xx wl18xx \
>   	zd1211rw
>   
> @@ -1526,6 +1527,39 @@ define KernelPackage/rtl8192cu/install
>   endef
>   
>   
> +define KernelPackage/rtl8xxxu
> +  $(call KernelPackage/mac80211/Default)
> +  TITLE:=alternative Realtek RTL8XXXU support
> +  DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-mac80211
> +  FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.ko
> +  AUTOLOAD:=$(call AutoProbe,rtl8xxxu)
> +endef
> +
> +define KernelPackage/rtl8xxxu/description
> +  This is an alternative driver for various Realtek RTL8XXX
> +  parts written to utilize the Linux mac80211 stack.
> +  The driver is known to work with a number of RTL8723AU,
> +  RL8188CU, RTL8188RU, RTL8191CU, and RTL8192CU devices
> +
> +  This driver is under development and has a limited feature
> +  set. In particular it does not yet support 40MHz channels
> +  and power management. However it should have a smaller
> +  memory footprint than the vendor drivers and benetifs
> +  from the in kernel mac80211 stack.
> +
> +  It can coexist with drivers from drivers/staging/rtl8723au,
> +  drivers/staging/rtl8192u, and drivers/net/wireless/rtlwifi,
> +  but you will need to control which module you wish to load.
> +
> +  RTL8XXXU_UNTESTED is enabled
> +  This option enables detection of Realtek 8723/8188/8191/8192 WiFi
> +  USB devices which have not been tested directly by the driver
> +  author or reported to be working by third parties.
> +
> +  Please report your results!
> +endef
> +
> +
>   define KernelPackage/wlcore
>     $(call KernelPackage/mac80211/Default)
>     TITLE:=TI common driver part
> @@ -1756,6 +1790,9 @@ config-$(call config_package,rtl8192de) += RTL8192DE
>   config-$(call config_package,rtl8192cu) += RTL8192CU
>   config-$(CONFIG_PACKAGE_RTLWIFI_DEBUG) += RTLWIFI_DEBUG
>   
> +config-$(call config_package,rtl8xxxu) += RTL8XXXU
> +config-y += RTL8XXXU_UNTESTED
> +
>   config-$(CONFIG_LEDS_TRIGGERS) += MAC80211_LEDS B43_LEDS B43LEGACY_LEDS
>   
>   MAKE_OPTS:= -C "$(PKG_BUILD_DIR)" \
> @@ -2169,6 +2206,7 @@ $(eval $(call KernelPackage,rtl8192ce))
>   $(eval $(call KernelPackage,rtl8192se))
>   $(eval $(call KernelPackage,rtl8192de))
>   $(eval $(call KernelPackage,rtl8192cu))
> +$(eval $(call KernelPackage,rtl8xxxu))
>   $(eval $(call KernelPackage,wlcore))
>   $(eval $(call KernelPackage,wl12xx))
>   $(eval $(call KernelPackage,wl18xx))



More information about the Make-wifi-fast mailing list