1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-19 10:53:58 +00:00
freebsd/sys/modules
Adrian Chadd cc6dd788c6 Refactor and split out the net80211 software scan engine from the rest
of the scan API.

The eventual aim is to have 'ieee80211_scan.c' have the net80211 and
driver facing scan API to start, finish and continue doing scanning
while 'ieee80211_swscan.c' implements the software scanner that
runs the scan task, handles probe request/reply bits, configures
the VAP off-channel, changes channel and does the scanning bits.

For NICs that do no scanning at all, the existing code is needed.
ath(4) and most of the other NICs (dumb USB ones in particular)
do little to no scan offload - it's all done in software.

Some NICs may do single channel at a time scanning; I haven't really
checked them out in detail.

iwn(4), the upcoming 7260 driver stuff, the new Qualcomm Atheros
11ac chipsets and the Atheros mobile/USB full-offload chips all
have complete scan engines in firmware.  We don't have to drive
any of it at all - the firmware just needs to be told what to scan,
when to scan, how long to scan.  It'll take care of going off
channel, pausing TX/RX appropriately, sending sleep notification
to the AP, sending probe requests and handling probe responses.
It'll do passive/active scan itself.  It's almost completely
transparent to the network stack - all we see are scan notifications
when it finishes scanning each channel and beacons/probe responses
when it does its thing.  Once it's done we get a final notification
that the scan is complete, with some scan results in the message.
The iwn(4) NICs handle doing active scanning too as an option
and will handle waiting appropriately on 5GHz passive channels
before active scanning.

There's some more refactoring, tidying up and lock assertions to
sprinkle around to tidy this whole thing up before I turn swscan.c
into another set of ic methods to override by the driver or
alternate scan module.  So in theory this is all one big no-op
commit.  In theory.

Tested:

* iwn(4) 5200, STA mode
* ath(4) 6205, STA mode
* ath(4) - various NICs, AP mode
2015-01-06 02:08:45 +00:00
..
3dfx
3dfx_linux
aac
aacraid
accf_data
accf_dns
accf_http
acl_nfs4 Remove unnecessary inclusions of bsd.own.mk. 2014-08-04 22:34:12 +00:00
acl_posix1e Remove unnecessary inclusions of bsd.own.mk. 2014-08-04 22:34:12 +00:00
acpi Remove obsolete Makefile for acpi.ko. 2014-10-02 20:13:52 +00:00
ae
aesni Add some new modes to OpenCrypto. These modes are AES-ICM (can be used 2014-12-12 19:56:36 +00:00
age
agp Re-enable -Werror for these modules. It is already enabled for the same 2014-06-09 20:48:38 +00:00
aha
ahb
ahci Separate out PCI attachment from the main AHCI driver. Move checks of 2014-09-04 22:22:53 +00:00
aic
aic7xxx Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, support 2015-01-03 03:35:18 +00:00
aio
alc
ale
alq Remove unnecessary inclusions of bsd.own.mk. 2014-08-04 22:34:12 +00:00
amdsbwd
amdtemp
amr
an Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
aout
apm
ar71xx
arcmsr
arcnet Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
asmc
ata
ath Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, support 2015-01-03 03:35:18 +00:00
ath_ahb
ath_pci
autofs Bring in the new automounter, similar to what's provided in most other 2014-08-17 09:44:42 +00:00
auxio
bce Remove clean option 2014-09-17 22:26:01 +00:00
bfe
bge
bios Clang's 3.5 integrated assembler now handles these files correctly (it 2015-01-05 12:28:22 +00:00
bktr
bm
bridgestp
bwi
bwn Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, support 2015-01-03 03:35:18 +00:00
bxe Remove clean option 2014-09-17 22:24:51 +00:00
cam Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
canbepm
canbus
cardbus
carp Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
cas
cbb
cc Remove unnecessary inclusions of bsd.own.mk. 2014-08-04 22:34:12 +00:00
cd9660
cd9660_iconv
ce Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, support 2015-01-03 03:35:18 +00:00
cfi
ciss
cm
cmx
coff
coretemp
cp
cpsw
cpuctl
cpufreq
crypto Add some new modes to OpenCrypto. These modes are AES-ICM (can be used 2014-12-12 19:56:36 +00:00
cryptodev Fix make depend in sys/modules 2014-12-19 06:51:01 +00:00
cs
ct
ctau
ctl Add support for VMWare dialect of EXTENDED COPY command, aka VAAI Clone. 2014-07-16 15:57:17 +00:00
cuse Initial import of character device in userspace support for FreeBSD. 2014-05-23 08:46:28 +00:00
cx
cxgb opt_global.h is never needed in SRCS lists. 2014-11-18 17:06:52 +00:00
cxgbe cxgbe(4): major tx rework. 2014-12-31 23:19:16 +00:00
dc
dcons
dcons_crom
de
digi
dpms
dpt Remove dpt_isa.c and commented out references to it. It was never connected 2014-11-13 20:00:54 +00:00
drm The radeon DRI module doesn't really work correctly on powerpc, so don't build 2015-01-03 22:36:18 +00:00
drm2 Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, support 2015-01-03 03:35:18 +00:00
dtrace Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, support 2015-01-03 03:35:18 +00:00
dummynet Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
ed
elink
em Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
en Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
ep Remove dependence on source tree options. Move all kernel module 2014-08-11 14:50:49 +00:00
epic
esp
et
ex
exca
ext2fs
fatm Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
fdc Merge the PC98 fdc(4) driver into the MI driver. While here, replace 2014-09-25 20:40:24 +00:00
fdescfs
fe
filemon
firewire Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
firmware
fuse
fxp
gem
geom Remove comments relevant to 6.x only. 2014-12-20 00:07:53 +00:00
glxiic
glxsb
gpio Inspired by r262522, fix make depend. This fixes the build of gpio modules. 2014-02-27 13:26:41 +00:00
hatm Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
hifn
hme
hpt27xx
hptiop
hptmv
hptnr
hptrr
hwpmc Remove ia64. 2014-07-07 00:27:09 +00:00
hyperv Import HyperV Key-Value Pair (KVP) driver and daemon code by Microsoft, 2014-09-13 02:15:31 +00:00
i2c Move all the power management (SMBus) drivers to their own directory, 2014-09-23 06:31:15 +00:00
ibcore Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, support 2015-01-03 03:35:18 +00:00
ibcs2
ichwd
ida
ie
if_bridge Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
if_disc Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
if_edsc
if_epair
if_gif Let's see if we can fix the NOINET if_gif(4) module build after r276215 2014-12-26 00:01:00 +00:00
if_gre Use automated MK_INET*_SUPPORT code here as well. 2014-11-18 01:39:23 +00:00
if_lagg Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
if_me Overhaul if_gre(4). 2014-11-07 19:13:19 +00:00
if_ndis
if_stf Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
if_tap Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
if_tun Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
if_vlan
if_vxlan Add vxlan interface 2014-10-20 14:42:42 +00:00
igb Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
iir
imgact_binmisc Add Stacey Son's binary activation patches that allow remapping of 2014-04-08 20:10:22 +00:00
io
ip6_mroute_mod Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
ip_mroute_mod Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
ipdivert Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
ipfilter Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, support 2015-01-03 03:35:18 +00:00
ipfw Merge projects/ipfw to HEAD. 2014-10-09 19:32:35 +00:00
ipfw_nat
ipmi
ipoib Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
ips Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, support 2015-01-03 03:35:18 +00:00
ipw
ipwfw
isci
iscsi
iscsi_initiator
isp
ispfw
iwi
iwifw
iwn
iwnfw Add iwn-100 firmware. 2014-08-28 00:05:02 +00:00
ixgb
ixgbe Disable flow-director support until it's been debugged and verified. 2014-09-15 21:09:19 +00:00
ixl Update to the Intel Base driver for the Intel XL710 Ethernet Controller Family 2014-08-22 18:59:19 +00:00
ixlv Update the Intel i40e drivers, ixl version 1.2.8, ixlv version 1.1.18 2014-11-06 23:45:05 +00:00
jme
joy There never was a PC Card joystick attachment that worked. Kill the 2014-11-22 20:31:20 +00:00
kbdmux
kgssapi
kgssapi_krb5
khelp Remove unnecessary inclusions of bsd.own.mk. 2014-08-04 22:34:12 +00:00
krpc Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
ksyms
le
lge
libalias
libiconv
libmbpool
libmchain
linprocfs
linsysfs
linux Retire the '@' symlink. It isn't really needed and causes more 2014-11-06 16:48:37 +00:00
lmc No need to list opt_global.h. No need to force ALTQ here, since that's 2014-11-18 17:06:54 +00:00
lpt
mac_biba
mac_bsdextended
mac_ifoff
mac_lomac
mac_mls
mac_none
mac_partition
mac_portacl
mac_seeotheruids
mac_stub
mac_test
malo
mcd
md
mem
mfi
mii
mlx
mlx4 Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, support 2015-01-03 03:35:18 +00:00
mlx4ib - Update the OFED Linux Emulation layer as a preparation for a 2014-08-27 13:21:53 +00:00
mlxen Hardware driver update from Mellanox Technologies, including: 2014-09-23 12:37:01 +00:00
mly
mmc
mmcsd
mpr Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, support 2015-01-03 03:35:18 +00:00
mps Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, support 2015-01-03 03:35:18 +00:00
mpt
mqueue
mrsas clean removes @ and machine now, so no need to do it again. 2014-11-06 16:48:35 +00:00
msdosfs
msdosfs_iconv
mse
msk
mthca Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
mvs
mwl
mwlfw
mxge
my
nand
nandfs Include opt_ddb.h in the list of SRCS, since we include it. 2014-04-16 19:49:44 +00:00
nandsim
ncr Remove the extra CFLAGS now that the driver has been fixed by jhb. 2014-10-02 18:45:00 +00:00
ncv
ndis
netfpga10g Introduce opt_netfpga.h and allow setting NF10BMAC_64BIT from mips kernel 2014-06-26 17:20:45 +00:00
netgraph Remove dependence on source tree options. Move all kernel module 2014-08-11 14:50:49 +00:00
netmap add missing file 2014-09-25 14:25:38 +00:00
nfe
nfscl Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
nfscommon - For kernel compiled only with KDTRACE_HOOKS and not any lock debugging 2013-11-25 07:38:45 +00:00
nfsd
nfslock
nfslockd Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
nfssvc
nge
nmdm
nsp
ntb
nullfs
nvd
nvme
nvram
nxge Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, support 2015-01-03 03:35:18 +00:00
oce
opensolaris Use SYSDIR to reference to the top of the sys hierarchy. Define SYSDIR 2014-03-06 01:59:13 +00:00
padlock
padlock_rng This is the much-discussed major upgrade to the random(4) device, known to you all as /dev/random. 2014-10-30 21:21:53 +00:00
patm Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
pccard
pcfclock
pcn
pf Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
pflog Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
pfsync Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
plip
pmc
powermac_nvram
ppbus
ppc Remove ia64. 2014-07-07 00:27:09 +00:00
ppi
pps
procfs
proto Add proto(4): A driver for prototyping and diagnostics. 2014-04-28 17:58:40 +00:00
pseudofs
pst
pty
puc
qlxgb There's no need to override the clean target. The clean target works 2014-10-16 20:13:16 +00:00
qlxgbe There's no need to override the clean target. The clean target works 2014-10-16 20:13:16 +00:00
qlxge There's no need to override the clean target. The clean target works 2014-10-16 20:13:16 +00:00
ral
ralfw
random Fix random.ko module. 2014-11-07 20:23:43 +00:00
rc
rc4
rdma
rdrand_rng This is the much-discussed major upgrade to the random(4) device, known to you all as /dev/random. 2014-10-30 21:21:53 +00:00
re
reiserfs
rl Move rl(4) to dev/rl. 2014-09-19 10:32:20 +00:00
rndtest
rp
s3
safe
sbni
scc
scd
scsi_low
sdhci
sdhci_pci
sem
send - For kernel compiled only with KDTRACE_HOOKS and not any lock debugging 2013-11-25 07:38:45 +00:00
sf
sfxge
sge
si Add kernel modules for si(4), wds(4), and wl(4). 2014-08-20 16:09:05 +00:00
siba_bwn
siftr Remove unnecessary inclusions of bsd.own.mk. 2014-08-04 22:34:12 +00:00
siis
sio
sis
sk
smbfs Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
sn
snc Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
snp
sound Retire the '@' symlink. It isn't really needed and causes more 2014-11-06 16:48:37 +00:00
speaker
splash
sppp Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
ste
stg
stge
streams
svr4 These don't belong in the modules directory. 2014-11-06 16:52:51 +00:00
sym
syscons
sysvipc
ti
tl
tmpfs
toecore
tpm
trm Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
tsec Build tsec(4) as a module. 2014-07-26 17:59:25 +00:00
twa
twe
tws
tx
txp
uart PowerPC also needs ofw_bus_if.h when using FDT. 2015-01-03 21:47:32 +00:00
ubsec
ubser
uchcom
ucycom
udf
udf_iconv
ufs Initialize the pbuf counter for directio using SYSINIT, instead of 2014-06-08 10:55:06 +00:00
unionfs
usb The USB LED driver for the Dream Cheeky WebMail Notifier. 2014-09-05 11:25:58 +00:00
utopia
vesa
vge
viawd
virtio Add VirtIO console driver 2014-10-23 04:47:32 +00:00
vkbd
vmm Replace bhyve's minimal RTC emulation with a fully featured one in vmm.ko. 2014-12-30 22:19:34 +00:00
vmware Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
vpo
vr
vte
vx Remove dependence on source tree options. Move all kernel module 2014-08-11 14:50:49 +00:00
vxge
wb
wbwd
wds Add kernel modules for si(4), wds(4), and wl(4). 2014-08-20 16:09:05 +00:00
wi
wl Add kernel modules for si(4), wds(4), and wl(4). 2014-08-20 16:09:05 +00:00
wlan Refactor and split out the net80211 software scan engine from the rest 2015-01-06 02:08:45 +00:00
wlan_acl Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
wlan_amrr Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
wlan_ccmp Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
wlan_rssadapt Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
wlan_tkip Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
wlan_wep Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
wlan_xauth Move most of the 15 variations on generating opt_inet.h and 2014-08-04 22:37:02 +00:00
wpi
wpifw
wtap
x86bios
xe
xl
zfs Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, support 2015-01-03 03:35:18 +00:00
zlib
Makefile Garbage collect the asr driver. Hardware for it has not been produced in 2015-01-02 05:34:14 +00:00
Makefile.inc