From owner-svn-src-head@freebsd.org Mon Oct 17 20:38:26 2016 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 556D5C15592; Mon, 17 Oct 2016 20:38:26 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0CEE320E; Mon, 17 Oct 2016 20:38:25 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u9HKcPuk015455; Mon, 17 Oct 2016 20:38:25 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u9HKcOxs015446; Mon, 17 Oct 2016 20:38:24 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201610172038.u9HKcOxs015446@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Mon, 17 Oct 2016 20:38:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r307529 - in head: . etc etc/devd share/doc/legal/realtek share/man/man4 sys/conf sys/contrib/dev/rtwn sys/contrib/dev/urtwn sys/dev/rtwn sys/dev/rtwn/pci sys/dev/rtwn/rtl8188e sys/dev/... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Oct 2016 20:38:26 -0000 Author: avos Date: Mon Oct 17 20:38:24 2016 New Revision: 307529 URL: https://svnweb.freebsd.org/changeset/base/307529 Log: rtwn(4), urtwn(4): merge common code, add support for 11ac devices. All devices: - add support for rate adaptation via ieee80211_amrr(9); - use short preamble for transmitted frames when needed; - multi-bss support: * for RTL8821AU: 2 VAPs at the same time; * other: 1 any VAP + 1 sta VAP. RTL8188CE: - fix IQ calibration bug (reason of significant speed degradation); - add h/w crypto acceleration support. USB: - A-MPDU Tx support; - short GI support; Other: - add support for RTL8812AU / RTL8821AU chipsets (a/b/g/n only; no ac yet); - split merged code into subparts: * bus glue (usb/*, pci/*, rtl*/usb/*, rtl*/pci/*) * common (if_rtwn*) * chip-specific (rtl*/*) - various other bugfixes. Due to code reorganization, module names / requirements were changed too: urtwn urtwnfw -> rtwn rtwn_usb rtwnfw rtwn rtwnfw -> rtwn rtwn_pci rtwnfw Tested with RTL8188CE, RTL8188CUS, RTL8188EU and RTL8821AU. Tested by: kevlo, garga, Peter Garshtja , Kevin McAleavey , Ilias-Dimitrios Vrachnis , Relnotes: yes Added: head/share/man/man4/rtwn_pci.4 (contents, props changed) head/share/man/man4/rtwn_usb.4 (contents, props changed) head/sys/contrib/dev/rtwn/rtwn-rtl8188eufw.fw.uu - copied, changed from r307528, head/sys/contrib/dev/urtwn/urtwn-rtl8188eufw.fw.uu head/sys/contrib/dev/rtwn/rtwn-rtl8192cfwE.fw.uu head/sys/contrib/dev/rtwn/rtwn-rtl8192cfwE_B.fw.uu - copied, changed from r307528, head/sys/contrib/dev/rtwn/rtwn-rtl8192cfwU_B.fw.uu head/sys/contrib/dev/rtwn/rtwn-rtl8192cfwT.fw.uu head/sys/contrib/dev/rtwn/rtwn-rtl8812aufw.fw.uu head/sys/contrib/dev/rtwn/rtwn-rtl8821aufw.fw.uu head/sys/dev/rtwn/if_rtwn_beacon.c (contents, props changed) head/sys/dev/rtwn/if_rtwn_beacon.h (contents, props changed) head/sys/dev/rtwn/if_rtwn_calib.c (contents, props changed) head/sys/dev/rtwn/if_rtwn_calib.h (contents, props changed) head/sys/dev/rtwn/if_rtwn_cam.c (contents, props changed) head/sys/dev/rtwn/if_rtwn_cam.h (contents, props changed) head/sys/dev/rtwn/if_rtwn_debug.h (contents, props changed) head/sys/dev/rtwn/if_rtwn_efuse.c (contents, props changed) head/sys/dev/rtwn/if_rtwn_efuse.h (contents, props changed) head/sys/dev/rtwn/if_rtwn_fw.c (contents, props changed) head/sys/dev/rtwn/if_rtwn_fw.h (contents, props changed) head/sys/dev/rtwn/if_rtwn_nop.h (contents, props changed) head/sys/dev/rtwn/if_rtwn_ridx.h (contents, props changed) head/sys/dev/rtwn/if_rtwn_rx.c (contents, props changed) head/sys/dev/rtwn/if_rtwn_rx.h (contents, props changed) head/sys/dev/rtwn/if_rtwn_task.c (contents, props changed) head/sys/dev/rtwn/if_rtwn_task.h (contents, props changed) head/sys/dev/rtwn/if_rtwn_tx.c (contents, props changed) head/sys/dev/rtwn/if_rtwn_tx.h (contents, props changed) head/sys/dev/rtwn/if_rtwnvar.h (contents, props changed) head/sys/dev/rtwn/pci/ head/sys/dev/rtwn/pci/rtwn_pci_attach.c (contents, props changed) head/sys/dev/rtwn/pci/rtwn_pci_attach.h (contents, props changed) head/sys/dev/rtwn/pci/rtwn_pci_reg.c (contents, props changed) head/sys/dev/rtwn/pci/rtwn_pci_reg.h (contents, props changed) head/sys/dev/rtwn/pci/rtwn_pci_rx.c (contents, props changed) head/sys/dev/rtwn/pci/rtwn_pci_rx.h (contents, props changed) head/sys/dev/rtwn/pci/rtwn_pci_tx.c (contents, props changed) head/sys/dev/rtwn/pci/rtwn_pci_tx.h (contents, props changed) head/sys/dev/rtwn/pci/rtwn_pci_var.h (contents, props changed) head/sys/dev/rtwn/rtl8188e/ head/sys/dev/rtwn/rtl8188e/r88e.h (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_beacon.c (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_calib.c (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_chan.c (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_fw.c (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_fw_cmd.h (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_init.c (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_led.c (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_priv.h (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_reg.h (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_rf.c (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_rom.c (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_rom_defs.h (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_rom_image.h (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_rx.c (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_rx_desc.h (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_tx.c (contents, props changed) head/sys/dev/rtwn/rtl8188e/r88e_tx_desc.h (contents, props changed) head/sys/dev/rtwn/rtl8188e/usb/ head/sys/dev/rtwn/rtl8188e/usb/r88eu.h (contents, props changed) head/sys/dev/rtwn/rtl8188e/usb/r88eu_attach.c (contents, props changed) head/sys/dev/rtwn/rtl8188e/usb/r88eu_init.c (contents, props changed) head/sys/dev/rtwn/rtl8188e/usb/r88eu_reg.h (contents, props changed) head/sys/dev/rtwn/rtl8188e/usb/r88eu_rx.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/ head/sys/dev/rtwn/rtl8192c/pci/ head/sys/dev/rtwn/rtl8192c/pci/r92ce.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/pci/r92ce_attach.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/pci/r92ce_calib.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/pci/r92ce_fw.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/pci/r92ce_init.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/pci/r92ce_led.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/pci/r92ce_priv.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/pci/r92ce_reg.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/pci/r92ce_rx.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/pci/r92ce_rx_desc.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/pci/r92ce_tx.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/pci/r92ce_tx_desc.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_attach.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_beacon.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_calib.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_chan.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_fw.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_fw_cmd.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_init.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_priv.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_reg.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_rf.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_rom.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_rom_defs.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_rom_image.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_rx.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_rx_desc.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_tx.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_tx_desc.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/r92c_var.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/usb/ head/sys/dev/rtwn/rtl8192c/usb/r92cu.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/usb/r92cu_attach.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/usb/r92cu_init.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/usb/r92cu_led.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/usb/r92cu_priv.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/usb/r92cu_reg.h (contents, props changed) head/sys/dev/rtwn/rtl8192c/usb/r92cu_rx.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/usb/r92cu_tx.c (contents, props changed) head/sys/dev/rtwn/rtl8192c/usb/r92cu_tx_desc.h (contents, props changed) head/sys/dev/rtwn/rtl8812a/ head/sys/dev/rtwn/rtl8812a/r12a.h (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_beacon.c (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_calib.c (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_caps.c (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_chan.c (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_fw.c (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_fw_cmd.h (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_init.c (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_led.c (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_priv.h (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_reg.h (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_rf.c (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_rom.c (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_rom_defs.h (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_rom_image.h (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_rx.c (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_rx_desc.h (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_tx.c (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_tx_desc.h (contents, props changed) head/sys/dev/rtwn/rtl8812a/r12a_var.h (contents, props changed) head/sys/dev/rtwn/rtl8812a/usb/ head/sys/dev/rtwn/rtl8812a/usb/r12au.h (contents, props changed) head/sys/dev/rtwn/rtl8812a/usb/r12au_attach.c (contents, props changed) head/sys/dev/rtwn/rtl8812a/usb/r12au_init.c (contents, props changed) head/sys/dev/rtwn/rtl8812a/usb/r12au_reg.h (contents, props changed) head/sys/dev/rtwn/rtl8812a/usb/r12au_rx.c (contents, props changed) head/sys/dev/rtwn/rtl8812a/usb/r12au_tx.c (contents, props changed) head/sys/dev/rtwn/rtl8812a/usb/r12au_tx_desc.h (contents, props changed) head/sys/dev/rtwn/rtl8821a/ head/sys/dev/rtwn/rtl8821a/r21a.h (contents, props changed) head/sys/dev/rtwn/rtl8821a/r21a_beacon.c (contents, props changed) head/sys/dev/rtwn/rtl8821a/r21a_calib.c (contents, props changed) head/sys/dev/rtwn/rtl8821a/r21a_chan.c (contents, props changed) head/sys/dev/rtwn/rtl8821a/r21a_fw.c (contents, props changed) head/sys/dev/rtwn/rtl8821a/r21a_init.c (contents, props changed) head/sys/dev/rtwn/rtl8821a/r21a_led.c (contents, props changed) head/sys/dev/rtwn/rtl8821a/r21a_priv.h (contents, props changed) head/sys/dev/rtwn/rtl8821a/r21a_reg.h (contents, props changed) head/sys/dev/rtwn/rtl8821a/r21a_rom.c (contents, props changed) head/sys/dev/rtwn/rtl8821a/r21a_rx.c (contents, props changed) head/sys/dev/rtwn/rtl8821a/usb/ head/sys/dev/rtwn/rtl8821a/usb/r21au.h (contents, props changed) head/sys/dev/rtwn/rtl8821a/usb/r21au_attach.c (contents, props changed) head/sys/dev/rtwn/rtl8821a/usb/r21au_init.c (contents, props changed) head/sys/dev/rtwn/rtl8821a/usb/r21au_reg.h (contents, props changed) head/sys/dev/rtwn/usb/ head/sys/dev/rtwn/usb/rtwn_usb_attach.c (contents, props changed) head/sys/dev/rtwn/usb/rtwn_usb_attach.h (contents, props changed) head/sys/dev/rtwn/usb/rtwn_usb_ep.c (contents, props changed) head/sys/dev/rtwn/usb/rtwn_usb_ep.h (contents, props changed) head/sys/dev/rtwn/usb/rtwn_usb_reg.c (contents, props changed) head/sys/dev/rtwn/usb/rtwn_usb_reg.h (contents, props changed) head/sys/dev/rtwn/usb/rtwn_usb_rx.c (contents, props changed) head/sys/dev/rtwn/usb/rtwn_usb_rx.h (contents, props changed) head/sys/dev/rtwn/usb/rtwn_usb_tx.c (contents, props changed) head/sys/dev/rtwn/usb/rtwn_usb_tx.h (contents, props changed) head/sys/dev/rtwn/usb/rtwn_usb_var.h (contents, props changed) head/sys/modules/rtwn_pci/ head/sys/modules/rtwn_pci/Makefile (contents, props changed) head/sys/modules/rtwn_usb/ head/sys/modules/rtwn_usb/Makefile (contents, props changed) head/sys/modules/rtwnfw/rtwnrtl8188eu/ head/sys/modules/rtwnfw/rtwnrtl8188eu/Makefile (contents, props changed) head/sys/modules/rtwnfw/rtwnrtl8192cE/ head/sys/modules/rtwnfw/rtwnrtl8192cE/Makefile (contents, props changed) head/sys/modules/rtwnfw/rtwnrtl8192cEB/ head/sys/modules/rtwnfw/rtwnrtl8192cEB/Makefile (contents, props changed) head/sys/modules/rtwnfw/rtwnrtl8192cT/ head/sys/modules/rtwnfw/rtwnrtl8192cT/Makefile (contents, props changed) head/sys/modules/rtwnfw/rtwnrtl8812au/ head/sys/modules/rtwnfw/rtwnrtl8812au/Makefile (contents, props changed) head/sys/modules/rtwnfw/rtwnrtl8821au/ head/sys/modules/rtwnfw/rtwnrtl8821au/Makefile (contents, props changed) Deleted: head/share/man/man4/urtwn.4 head/share/man/man4/urtwnfw.4 head/sys/contrib/dev/rtwn/rtwn-rtl8192cfwU_B.fw.uu head/sys/contrib/dev/urtwn/ head/sys/dev/urtwn/ head/sys/modules/rtwnfw/rtwnrtl8192cUB/ head/sys/modules/urtwn/ head/sys/modules/urtwnfw/ Modified: head/ObsoleteFiles.inc head/etc/devd.conf head/etc/devd/usb.conf head/share/doc/legal/realtek/Makefile head/share/man/man4/Makefile head/share/man/man4/rtwn.4 head/share/man/man4/rtwnfw.4 head/share/man/man4/wlan.4 head/sys/conf/WITHOUT_SOURCELESS_UCODE head/sys/conf/files head/sys/conf/options head/sys/contrib/dev/rtwn/LICENSE head/sys/contrib/dev/rtwn/rtwn-rtl8192cfwU.fw.uu head/sys/dev/rtwn/if_rtwn.c head/sys/dev/rtwn/if_rtwnreg.h head/sys/mips/conf/std.AR933X head/sys/mips/conf/std.AR934X head/sys/mips/conf/std.QCA955X head/sys/modules/Makefile head/sys/modules/rtwn/Makefile head/sys/modules/rtwnfw/Makefile head/sys/modules/rtwnfw/Makefile.inc head/sys/riscv/conf/GENERIC head/sys/sys/param.h head/tools/build/mk/OptionalObsoleteFiles.inc Modified: head/ObsoleteFiles.inc ============================================================================== --- head/ObsoleteFiles.inc Mon Oct 17 19:51:00 2016 (r307528) +++ head/ObsoleteFiles.inc Mon Oct 17 20:38:24 2016 (r307529) @@ -38,6 +38,9 @@ # xargs -n1 | sort | uniq -d; # done +# 20161016: urtwn(4) was merged into rtwn(4) +OLD_FILES+=usr/share/man/man4/urtwn.4.gz +OLD_FILES+=usr/share/man/man4/urtwnfw.4.gz # 20161015: Remove GNU rcs OLD_FILES+=usr/bin/ci OLD_FILES+=usr/bin/co Modified: head/etc/devd.conf ============================================================================== --- head/etc/devd.conf Mon Oct 17 19:51:00 2016 (r307528) +++ head/etc/devd.conf Mon Oct 17 20:38:24 2016 (r307529) @@ -24,7 +24,7 @@ options { [0-9]+"; set wifi-driver-regex "(ath|bwi|bwn|ipw|iwi|iwm|iwn|malo|mwl|ral|rsu|rum|run|uath|\ - upgt|ural|urtw|urtwn|wi|wpi|wtap|zyd)[0-9]+"; + upgt|ural|urtw|rtwn_usb|wi|wpi|wtap|zyd)[0-9]+"; }; # Note that the attach/detach with the highest value wins, so that one can Modified: head/etc/devd/usb.conf ============================================================================== --- head/etc/devd/usb.conf Mon Oct 17 19:51:00 2016 (r307528) +++ head/etc/devd/usb.conf Mon Oct 17 20:38:24 2016 (r307529) @@ -185,6 +185,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0409"; + match "product" "0x0408"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0409"; match "product" "(0x8024|0x8025)"; action "kldload -n uipaq"; }; @@ -304,6 +312,14 @@ nomatch 32 { nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; + match "vendor" "0x0411"; + match "product" "(0x0242|0x025d)"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; match "vendor" "0x0413"; match "product" "0x2101"; action "kldload -n uplcom"; @@ -553,6 +569,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x04bb"; + match "product" "0x0952"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x04bb"; match "product" "(0x0a03|0x0a0e)"; action "kldload -n uplcom"; }; @@ -682,7 +706,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x04f2"; match "product" "(0xaff7|0xaff8|0xaff9|0xaffa|0xaffa)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -754,7 +778,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x050d"; match "product" "0x1102"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -778,7 +802,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x050d"; match "product" "(0x2102|0x2103)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -1050,7 +1074,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x056e"; match "product" "0x4008"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -1146,7 +1170,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0586"; match "product" "0x341f"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -1160,6 +1184,14 @@ nomatch 32 { nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; + match "vendor" "0x0586"; + match "product" "0x3426"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; match "vendor" "0x058f"; match "product" "0x9720"; action "kldload -n uplcom"; @@ -1442,7 +1474,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x06f8"; match "product" "0xe033"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -1658,7 +1690,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x07aa"; match "product" "0x0056"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -1722,7 +1754,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x07b8"; match "product" "(0x8178|0x8179|0x8188|0x8189)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2026,7 +2058,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0846"; match "product" "0x9021"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2041,8 +2073,8 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0846"; - match "product" "0x9041"; - action "kldload -n if_urtwn"; + match "product" "(0x9041|0x9052)"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2498,7 +2530,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0b05"; match "product" "0x17ab"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2522,7 +2554,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0b05"; match "product" "0x17ba"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2537,6 +2569,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0b05"; + match "product" "0x17d2"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0b05"; match "product" "(0x4200|0x4201|0x4202|0x420f|0x9200|0x9202)"; action "kldload -n uipaq"; }; @@ -2658,7 +2698,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0bda"; match "product" "(0x0179|0x018a|0x317f)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2682,7 +2722,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0bda"; match "product" "0x8170"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2698,7 +2738,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0bda"; match "product" "(0x8176|0x8177|0x8178|0x8179|0x817a|0x817b|0x817c|0x817d|0x817e|0x817f)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2714,7 +2754,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0bda"; match "product" "(0x818a|0x8191)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2738,7 +2778,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0bda"; match "product" "0x8754"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -3162,7 +3202,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0df6"; match "product" "0x0052"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -3178,7 +3218,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0df6"; match "product" "(0x005c|0x0061)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -3193,6 +3233,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0df6"; + match "product" "0x0074"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0df6"; match "product" "0x061c"; action "kldload -n if_axe"; }; @@ -3257,8 +3305,8 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0e66"; - match "product" "0x0019"; - action "kldload -n if_urtwn"; + match "product" "(0x0019|0x0023)"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -3330,7 +3378,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0eb0"; match "product" "0x9071"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -3490,7 +3538,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x103c"; match "product" "0x1629"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -3976,6 +4024,14 @@ nomatch 32 { nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; + match "vendor" "0x13b1"; + match "product" "0x003f"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; match "vendor" "0x13d2"; match "product" "0x0400"; action "kldload -n if_kue"; @@ -4018,7 +4074,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x13d3"; match "product" "(0x3357|0x3358|0x3359)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -4569,6 +4625,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x1740"; + match "product" "0x0100"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x1740"; match "product" "(0x0605|0x0615)"; action "kldload -n if_run"; }; @@ -4961,8 +5025,8 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x2001"; - match "product" "(0x3307|0x3308|0x3309|0x330a|0x330d|0x330f|0x3310)"; - action "kldload -n if_urtwn"; + match "product" "(0x3307|0x3308|0x3309|0x330a|0x330d|0x330f|0x3310|0x3314|0x3315|0x3316|0x3318)"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5042,7 +5106,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x2019"; match "product" "(0x1201|0x4902)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5089,8 +5153,8 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x2019"; - match "product" "(0xab2a|0xab2b|0xab2e)"; - action "kldload -n if_urtwn"; + match "product" "(0xab2a|0xab2b|0xab2e|0xab30)"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5130,7 +5194,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x2019"; match "product" "0xed17"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5170,7 +5234,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x20f4"; match "product" "0x624d"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5185,8 +5249,8 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x20f4"; - match "product" "0x648b"; - action "kldload -n if_urtwn"; + match "product" "(0x648b|0x805b)"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5232,6 +5296,14 @@ nomatch 32 { nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; + match "vendor" "0x2357"; + match "product" "0x0101"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; match "vendor" "0x2405"; match "product" "0x0003"; action "kldload -n uslcom"; @@ -5354,7 +5426,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x4855"; match "product" "(0x0090|0x0091)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5465,8 +5537,8 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x7392"; - match "product" "(0x7811|0x7822)"; - action "kldload -n if_urtwn"; + match "product" "(0x7811|0x7822|0xa811|0xa812|0xa822)"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5522,7 +5594,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x9846"; match "product" "0x9041"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5817,5 +5889,5 @@ nomatch 32 { action "kldload -n umass"; }; -# 2722 USB entries processed +# 2743 USB entries processed Modified: head/share/doc/legal/realtek/Makefile ============================================================================== --- head/share/doc/legal/realtek/Makefile Mon Oct 17 19:51:00 2016 (r307528) +++ head/share/doc/legal/realtek/Makefile Mon Oct 17 20:38:24 2016 (r307529) @@ -1,6 +1,6 @@ # $FreeBSD$ -FILES= ${.CURDIR}/../../../../sys/contrib/dev/urtwn/LICENSE +FILES= ${.CURDIR}/../../../../sys/contrib/dev/rtwn/LICENSE FILESDIR= ${SHAREDIR}/doc/legal FILESNAME= realtek.LICENSE Modified: head/share/man/man4/Makefile ============================================================================== --- head/share/man/man4/Makefile Mon Oct 17 19:51:00 2016 (r307528) +++ head/share/man/man4/Makefile Mon Oct 17 20:38:24 2016 (r307529) @@ -433,6 +433,7 @@ MAN= aac.4 \ rp.4 \ rtwn.4 \ rtwnfw.4 \ + rtwn_pci.4 \ rue.4 \ rum.4 \ run.4 \ @@ -692,6 +693,8 @@ MLINKS+=pms.4 pmspcv.4 MLINKS+=ral.4 if_ral.4 MLINKS+=re.4 if_re.4 MLINKS+=rl.4 if_rl.4 +MLINKS+=rtwn.4 if_rtwn.4 +MLINKS+=rtwn_pci.4 if_rtwn_pci.4 MLINKS+=rue.4 if_rue.4 MLINKS+=rum.4 if_rum.4 MLINKS+=run.4 if_run.4 @@ -886,6 +889,7 @@ MAN+= \ otusfw.4 \ rsu.4 \ rsufw.4 \ + rtwn_usb.4 \ u3g.4 \ uark.4 \ uart.4 \ @@ -928,8 +932,6 @@ MAN+= \ urio.4 \ urndis.4 \ ${_urtw.4} \ - urtwn.4 \ - urtwnfw.4 \ usb.4 \ usb_quirk.4 \ usb_template.4 \ @@ -941,6 +943,7 @@ MAN+= \ MLINKS+=otus.4 if_otus.4 MLINKS+=rsu.4 if_rsu.4 +MLINKS+=rtwn_usb.4 if_rtwn_usb.4 MLINKS+=u3g.4 u3gstub.4 MLINKS+=uath.4 if_uath.4 MLINKS+=udav.4 if_udav.4 @@ -948,7 +951,6 @@ MLINKS+=upgt.4 if_upgt.4 MLINKS+=ural.4 if_ural.4 MLINKS+=urndis.4 if_urndis.4 MLINKS+=${_urtw.4} ${_if_urtw.4} -MLINKS+=urtwn.4 if_urtwn.4 .endif .include Modified: head/share/man/man4/rtwn.4 ============================================================================== --- head/share/man/man4/rtwn.4 Mon Oct 17 19:51:00 2016 (r307528) +++ head/share/man/man4/rtwn.4 Mon Oct 17 20:38:24 2016 (r307529) @@ -2,6 +2,7 @@ .\" .\" Copyright (c) 2010 Damien Bergamini .\" Copyright (c) 2015 Stefan Sperling +.\" Copyright (c) 2016 Andriy Voskoboinyk .\" .\" Permission to use, copy, modify, and distribute this software for any .\" purpose with or without fee is hereby granted, provided that the above @@ -17,89 +18,88 @@ .\" .\" $FreeBSD$ .\" -.Dd October 28, 2015 +.Dd September 19, 2016 .Dt RTWN 4 .Os .Sh NAME .Nm rtwn -.Nd Realtek RTL8188CE PCIe IEEE 802.11b/g/n wireless network device +.Nd Realtek IEEE 802.11 wireless network driver .Sh SYNOPSIS +.Cd "options RTWN_DEBUG" +.Cd "options RTWN_WITHOUT_UCODE" +.Pp To compile this driver into the kernel, place the following lines in your kernel configuration file: .Bd -ragged -offset indent .Cd "device rtwn" .Cd "device rtwnfw" +.Cd "device rtwn_usb" +.Cd "device rtwn_pci" .Cd "device wlan" .Cd "device firmware" .Ed .Pp Alternatively, to load the driver as a -module at boot time, place the following line in +module at boot time, place following lines in .Xr loader.conf 5 : .Bd -literal -offset indent if_rtwn_load="YES" -.Ed -.Pp -After you have read the license in -.Pa /usr/share/doc/legal/realtek.LICENSE -you will want to add the following lines to -.Xr loader.conf 5 : -.Bd -literal -offset indent -legal.realtek.license_ack=1 -rtwn-rtl8192cfwU_load="YES" -rtwn-rtl8192cfwU_B_load="YES" +if_rtwn_pci_load="YES" +if_rtwn_usb_load="YES" .Ed .Sh DESCRIPTION The .Nm -driver supports PCIe wireless network devices based on the Realtek -RTL8188CE chipset. +driver provides support for wireless network devices based on +the Realtek RTL8192C, RTL8188E, RTL8812A and RTL8821A programming APIs. +These APIs are used by a wide variety of chips; most chips with USB +and some with PCI interface are supported. +.Pp +To enable use for PCI/PCIe systems, see the rtwn_pci(4) driver; +for USB devices, use the rtwn_usb(4) driver. +.Pp +The driver supports +.Cm station , +.Cm adhoc , +.Cm hostap +and +.Cm monitor +mode operation. +There are no limitations for number of +.Cm monitor +mode +virtual interfaces; in addition to any other virtual interface +one +.Cm station +interface can be added (Note: RTL8821AU supports two non-monitor +mode interfaces at the same time). .Pp -The RTL8188CE is a highly integrated 802.11n adapter that combines a MAC, -a 1T1R capable baseband and an RF in a single chip. -It operates in the 2GHz spectrum only. -.Pp -These are the modes the -.Nm -driver can operate in: -.Bl -tag -width "IBSS-masterXX" -.It BSS mode -Also known as -.Em infrastructure -mode, this is used when associating with an access point, through -which all traffic passes. -This mode is the default. -.It monitor mode -In this mode the driver is able to receive packets without -associating with an access point. -This disables the internal receive filter and enables the card to -capture packets from networks which it wouldn't normally have access to, -or to scan for access points. -.El -.Pp -The -.Nm -driver can be configured to use -Wired Equivalent Privacy (WEP) or -Wi-Fi Protected Access (WPA-PSK and WPA2-PSK). -WPA is the current encryption standard for wireless networks. -It is strongly recommended that WEP -not be used as the sole mechanism -to secure wireless communication, -due to serious weaknesses in it. +All chips have hardware support for WEP, AES-CCM and TKIP encryption. .Pp The .Nm driver can be configured at runtime with .Xr ifconfig 8 . .Sh FILES -The driver needs at least version 1.0 of the following firmware files, -which are loaded when an interface is brought up: +.Bl -tag -width ".Pa /usr/share/doc/legal/realtek.LICENSE" -compact +.It Pa /usr/share/doc/legal/realtek.LICENSE +.Nm +firmware license +.El .Pp +The driver (if not compiled with +.Cd options RTWN_WITHOUT_UCODE +) may use following firmware files, which are loaded +when an interface is brought up: .Bl -tag -width Ds -offset indent -compact +.It Pa /boot/kernel/rtwn-rtl8188eufw.ko +.It Pa /boot/kernel/rtwn-rtl8192cfwE_B.ko +.It Pa /boot/kernel/rtwn-rtl8192cfwE.ko +.It Pa /boot/kernel/rtwn-rtl8192cfwT.ko .It Pa /boot/kernel/rtwn-rtl8192cfwU.ko -.It Pa /boot/kernel/rtwn-rtl8192cfwU_B.ko +.It Pa /boot/kernel/rtwn-rtl8812aufw.ko +.It Pa /boot/kernel/rtwn-rtl8821aufw.ko .El .Sh EXAMPLES Join an existing BSS network (i.e., connect to an access point): @@ -118,48 +118,124 @@ Join a specific BSS network with 64-bit ifconfig wlan create wlandev rtwn0 ssid my_net \e wepmode on wepkey 0x1234567890 weptxkey 1 up .Ed +.Pp +Create an IBSS network with 128-bit WEP encryption on the channel 4: +.Bd -literal -offset indent +ifconfig wlan create wlandev rtwn0 wlanmode adhoc ssid my_net \e + wepmode on wepkey 0x01020304050607080910111213 weptxkey 1 \e + channel 4 +.Ed +.Pp +Join/create an 802.11b IBSS network with network name +.Dq Li my_net : +.Bd -literal -offset indent +ifconfig wlan0 create wlandev rtwn0 wlanmode adhoc +ifconfig wlan0 inet 192.168.0.22 netmask 0xffffff00 ssid my_net \e + mode 11b +.Ed +.Pp +Create a host-based access point: +.Bd -literal -offset indent +ifconfig wlan0 create wlandev rtwn0 wlanmode hostap +ifconfig wlan0 inet 192.168.0.10 netmask 0xffffff00 ssid my_ap +.Ed +.Sh LOADER TUNABLES +Tunables can be set at the +.Xr loader 8 +prompt before booting the kernel or stored in +.Xr loader.conf 5 . +.Bl -tag -width indent +.It Va dev.rtwn.%d.hwcrypto +This tunable controls how key slots are assigned: +.br +0 - disable h/w crypto support. Features that require access +to frame contents (e.g., TCP/UDP/IP Rx checksum validation) +will not work; +.br +1 - use h/w crypto support for pairwise keys only; +.br +2 - use h/w crypto support for all keys; may not work for +multi-vap configurations. +.br +By default it is set to 1. +.It Va dev.rtwn.%d.ratectl +This tunable switches between rate control implementations: +.br +0 - no rate control; +.br +1 - driver sends 'tx complete' reports to net80211; algorithm +is controlled via net80211; +.br +2 - firmware-based rate control. +.br +By default it is set to 1; however driver may choose another +algorithm in case if it is not implemented +.br +Currently selected algorithm is reported via +.Em Va dev.rtwn.%d.ratectl_selected +read-only OID. +.El .Sh DIAGNOSTICS .Bl -diag -.It "could not read firmware %s" +.It "rtwn%d: could not read efuse byte at address 0x%x" +.It "rtwn%d: %s: cannot read rom, error %d" +There was an error while reading ROM; device attach will be aborted. +This should not happen. +.It "rtwn%d: failed loadfirmware of file %s" For some reason, the driver was unable to read the microcode file from the filesystem. The file might be missing or corrupted. -.It "device timeout" +The driver will disable firmware-dependent features. +.It "rtwn%d: wrong firmware size (%zu)" +.It "rtwn%d: %s: failed to upload firmware %s (error %d)" +.It "rtwn%d: timeout waiting for firmware readiness" +Firmware upload failed; the file might be corrupted. +The driver will disable firmware-dependent features. +This should not happen. +.It "rtwn%d: device timeout" A frame dispatched to the hardware for transmission did not complete in time. The driver will reset the hardware. This should not happen. .El .Sh SEE ALSO -.Xr pci 4 , +.Xr intro 4 , +.Xr netintro 4 , +.Xr rtwn_pci 4 , +.Xr rtwn_usb 4 , .Xr rtwnfw 4 , .Xr wlan 4 , +.Xr wlan_amrr 4 , .Xr wlan_ccmp 4 , .Xr wlan_tkip 4 , .Xr wlan_wep 4 , +.Xr wlan_xauth 4 , +.Xr hostapd 4 , .Xr ifconfig 8 , .Xr wpa_supplicant 8 .Sh HISTORY The +.Cm urtwn +driver first appeared in +.Ox 4.9 +and +.Fx 10.0 ; +the .Nm driver first appeared in .Ox 5.8 . .Sh AUTHORS The .Nm -driver was written by +driver was initially written by .An -nosplit .An Stefan Sperling Aq Mt stsp@openbsd.org and ported by .An Kevin Lo Aq Mt kevlo@freebsd.org . It was based on the -.Xr urtwn 4 +.Cm urtwn driver written by .An Damien Bergamini Aq Mt damien.bergamini@free.fr . -.Sh CAVEATS +.Sh BUGS The .Nm -driver does not support any of the 802.11n capabilities offered by the -adapters. -Additional work is required in -.Xr ieee80211 9 -before those features can be supported. +driver currently does not implement firmware-based rate control. Added: head/share/man/man4/rtwn_pci.4 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/share/man/man4/rtwn_pci.4 Mon Oct 17 20:38:24 2016 (r307529) @@ -0,0 +1,63 @@ +.\"- +.\" Copyright (c) 2011 Adrian Chadd, Xenion Pty Ltd +.\" Copyright (c) 2016 Andriy Voskoboinyk +.\" All rights reserved. +.\"" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer, +.\" without modification. +.\" 2. Redistributions in binary form must reproduce at minimum a disclaimer +.\" similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any +.\" redistribution must be conditioned upon including a substantially +.\" similar Disclaimer requirement for further binary redistribution. +.\" +.\" NO WARRANTY +.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +.\" LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY +.\" AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL +.\" THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, +.\" OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER +.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +.\" THE POSSIBILITY OF SUCH DAMAGES. +.\" +.\" $FreeBSD$ +.\"/ +.Dd September 19, 2016 +.Dt RTWN_PCI 4 +.Os +.Sh NAME +.Nm rtwn_pci +.Nd "Realtek PCI device glue" +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following lines in your +kernel configuration file: +.Bd -ragged -offset indent +.Cd "device rtwn_pci" +.Cd "device pci" +.Cd "device wlan" +.Ed +.Sh DESCRIPTION +The +.Nm +driver supports PCIe wireless network devices based on the Realtek +RTL8188CE chipset. +.Pp +The RTL8188CE is a highly integrated 802.11n adapter that combines a MAC, +a 1T1R capable baseband and an RF in a single chip. +It operates in the 2GHz spectrum only. +.Sh SEE ALSO +.Xr rtwn 4 , +.Xr rtwnfw 4 , +.Xr rtwn_usb 4 , +.Xr pci 4 +.Sh CAVEATS +Most 802.11 capabilities were turned off; some more testing +is required to re-enable them. Added: head/share/man/man4/rtwn_usb.4 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/share/man/man4/rtwn_usb.4 Mon Oct 17 20:38:24 2016 (r307529) @@ -0,0 +1,111 @@ +.\"- +.\" Copyright (c) 2011 Adrian Chadd, Xenion Pty Ltd +.\" Copyright (c) 2016 Andriy Voskoboinyk +.\" All rights reserved. +.\"" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer, +.\" without modification. +.\" 2. Redistributions in binary form must reproduce at minimum a disclaimer +.\" similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any +.\" redistribution must be conditioned upon including a substantially +.\" similar Disclaimer requirement for further binary redistribution. +.\" +.\" NO WARRANTY +.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +.\" LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY +.\" AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL +.\" THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, +.\" OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER +.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +.\" THE POSSIBILITY OF SUCH DAMAGES. +.\" +.\" $FreeBSD$ +.\"/ +.Dd September 19, 2016 +.Dt RTWN_USB 4 +.Os +.Sh NAME +.Nm rtwn_usb +.Nd "Realtek USB device glue" +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following lines in your +kernel configuration file: +.Bd -ragged -offset indent +.Cd "device xhci" +.Cd "device ehci" +.Cd "device uhci" +.Cd "device ohci" +.Cd "device usb" +.Cd "device rtwn_usb" +.Cd "device wlan" +.Ed +.Sh DESCRIPTION +This module provides the USB bus glue needed for the devices supported +by the +.Xr rtwn 4 +driver. +.Sh HARDWARE +The +.Nm +driver supports Realtek RTL8188CU/RTL8188RU/RTL8188EU/RTL8192CU/RTL8812AU/RTL8821AU +based USB wireless network adapters, including: +.Pp +.Bl -column -compact "Belkin F7D1102 Surf Wireless Micro" "Bus" +.It Em Card Ta Em Bus +.It "Alfa AWUS036NHR v2" Ta USB 2.0 +.It "ASUS USB-AC56" Ta USB 3.0 +.It "ASUS USB-N10 NANO" Ta USB 2.0 +.It "Belkin F7D1102 Surf Wireless Micro" Ta USB 2.0 +.It "Buffalo WI-U2-433DM" Ta USB 2.0 +.It "Buffalo WI-U3-866D" Ta USB 3.0 +.It "D-Link DWA-123 rev D1" Ta USB 2.0 +.It "D-Link DWA-125 rev D1" Ta USB 2.0 +.It "D-Link DWA-131" Ta USB 2.0 +.It "D-Link DWA-171 rev A1" Ta USB 2.0 +.It "D-Link DWA-172 rev A1" Ta USB 2.0 +.It "D-Link DWA-180 rev A1" Ta USB 2.0 +.It "D-Link DWA-182 rev C1" Ta USB 3.0 +.It "Edimax EW-7811Un" Ta USB 2.0 +.It "Edimax EW-7811UTC" Ta USB 2.0 +.It "Edimax EW-7822UAC" Ta USB 3.0 +.It "Elecom WDC-150SU2M" Ta USB 2.0 +.It "EnGenius EUB1200AC" Ta USB 3.0 +.It "Hawking HD65U" Ta USB 2.0 +.It "Hercules Wireless N USB Pico" Ta USB 2.0 +.It "I-O Data WN-AC867U" Ta USB 3.0 +.It "Linksys WUSB6300" Ta USB 3.0 +.It "NEC AtermWL900U PA-WL900U" Ta USB 3.0 +.It "Netgear A6100" Ta USB 2.0 +.It "Netgear WNA1000M" Ta USB 2.0 +.It "Planex GW-900D" Ta USB 3.0 +.It "Realtek RTL8192CU" Ta USB 2.0 +.It "Realtek RTL8188CUS" Ta USB 2.0 +.It "Sitecom WLA-7100" Ta USB 3.0 +.It "TP-Link Archer T4U" Ta USB 3.0 +.It "TP-LINK TL-WN723N v3" Ta USB 2.0 +.It "TP-LINK TL-WN725N v2" Ta USB 2.0 +.It "TRENDnet TEW-805UB" Ta USB 3.0 +.It "ZyXEL NWD6605" Ta USB 3.0 +.El +.Sh SEE ALSO +.Xr rtwn 4 , +.Xr rtwnfw 4 , +.Xr rtwn_pci 4 , +.Xr usb 4 +.Sh BUGS +The +.Nm +driver does not support any of the 802.11ac capabilities offered by the +adapters. +Additional work is required in +.Xr ieee80211 9 +before those features can be supported. Modified: head/share/man/man4/rtwnfw.4 ============================================================================== --- head/share/man/man4/rtwnfw.4 Mon Oct 17 19:51:00 2016 (r307528) +++ head/share/man/man4/rtwnfw.4 Mon Oct 17 20:38:24 2016 (r307529) @@ -1,4 +1,5 @@ .\" Copyright (c) 2015 Kevin Lo +.\" Copyright (c) 2016 Andriy Voskoboinyk .\" All rights reserved. *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***