freebsd-dev/sys
Adrian Chadd 973d40776c Bring over the basic spectral scan framework code from Qualcomm Atheros.
This includes the HAL routines to setup, enable/activate/disable spectral
scan and configure the relevant registers.

This still requires driver interaction to enable spectral scan reporting.
Specifically:

* call ah_spectralConfigure() to configure and enable spectral scan;
* .. there's currently no way to disable spectral scan... that will have
  to follow.
* call ah_spectralStart() to force start a spectral report;
* call ah_spectralStop() to force stop an active spectral report.

The spectral scan results appear as PHY errors (type 0x5 on the AR9280,
same as radar) but with the spectral scan bit set (0x10 in the last byte
of the frame) identifying it as a spectral report rather than a radar
FFT report.

Caveats:

* It's likely quite difficult to run spectral _and_ radar at the same
  time.  Enabling spectral scan disables the radar thresholds but
  leaves radar enabled.  Thus, the driver (for now) needs to ensure
  that only one or the other is enabled.

* .. it needs testing on HT40 mode.

Tested:

* AR9280 in STA mode, HT/20 only

TODO:

* Test on AR9285, AR9287;
* Test in both HT20 and HT40 modes;
* .. all the driver glue.

Obtained from:	Qualcomm Atheros
2013-01-02 00:38:01 +00:00
..
amd64 Revert r243960 based on feedback regarding keeping x86 headers unified 2012-12-13 21:27:20 +00:00
arm Overhauled CPSW driver for TI CPSW Ethernet module 2013-01-01 18:55:04 +00:00
boot Add interrupt for PL310 controller 2012-12-31 22:48:54 +00:00
bsm Merge OpenBSM 1.2-alpha2 changes from contrib/openbsm to 2012-12-01 13:46:37 +00:00
cam Make SES driver to not fall out on some errors in Additional Status page. 2012-12-20 19:51:32 +00:00
cddl zfs: solaris doesn't have KM_ZERO, kmem_zalloc should be used instead 2012-12-23 19:58:41 +00:00
compat Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
conf Replace generic ARM11 option with more specific 2012-12-20 04:32:02 +00:00
contrib Allow this file to build on FreeBSD. 2012-11-27 02:03:41 +00:00
crypto Revert previous commit... 2012-10-10 08:36:38 +00:00
ddb Small textdump enhancements. 2012-11-01 04:07:08 +00:00
dev Bring over the basic spectral scan framework code from Qualcomm Atheros. 2013-01-02 00:38:01 +00:00
fs Do not force a writer to the devfs file to drain the buffer writes. 2012-12-23 22:43:27 +00:00
gdb
geom Reset provider-specific fields when resending I/O request in low memory 2012-12-26 20:07:47 +00:00
gnu/fs r16312 is not any longer real since many years (likely since when VFS 2012-11-19 22:43:45 +00:00
i386 Revert r243960 based on feedback regarding keeping x86 headers unified 2012-12-13 21:27:20 +00:00
ia64 Flip the semantic of M_NOWAIT to only require the allocation to not 2012-11-14 20:01:40 +00:00
isa
kern The process_deferred_inactive() function locks the vnodes of the ufs 2013-01-01 16:14:48 +00:00
kgssapi Piete.Brooks at cl.cam.ac.uk reported via email a crash which was 2012-12-18 00:25:48 +00:00
libkern Sync strlcpy with userland version. 2012-11-03 04:29:24 +00:00
mips Merge @219932 from Perforce: 2013-01-01 19:42:06 +00:00
modules Add the btcoex code into the module compilation. 2012-12-03 23:38:08 +00:00
net Add an ability to set net.link.stf.permit_rfc1918 from the loader. 2012-12-27 21:26:08 +00:00
net80211 if_start() is being used here as a way of kick-starting the new queue 2012-12-22 01:17:49 +00:00
netatalk Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
netgraph Use DEVMETHOD_END, as suggested by hselasky@. 2012-12-26 19:14:21 +00:00
netinet Some cleanups. 2012-12-27 08:10:58 +00:00
netinet6 The SIOCSIFFLAGS ioctl handler runs if_up()/if_down() that notify 2012-12-25 13:01:58 +00:00
netipsec Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
netipx Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
netnatm Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
netncp Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
netpfil In netpfil/pf: 2012-12-28 09:19:49 +00:00
netsmb Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
nfs Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
nfsclient Move the NFSv4.1 client patches over from projects/nfsv4.1-client 2012-12-08 22:52:39 +00:00
nfsserver Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
nlm Remove the support for using non-mpsafe filesystem modules. 2012-10-22 17:50:54 +00:00
ofed Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
opencrypto Revert previous commit... 2012-10-10 08:36:38 +00:00
pc98 Reduce diffs against i386. 2012-11-10 13:48:41 +00:00
pci Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
powerpc Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
rpc Add support for backchannels to the kernel RPC. Backchannels 2012-12-08 00:29:16 +00:00
security Four .c files from OpenBSM are used, in modified form, by the kernel to 2012-12-15 15:21:09 +00:00
sparc64 Revert r237842 and switch back to SCHED_ULE. All problems I encountered 2012-12-16 20:54:07 +00:00
sys The process_deferred_inactive() function locks the vnodes of the ufs 2013-01-01 16:14:48 +00:00
teken
tools Fix build on ARM (and probably other platforms) 2012-12-28 06:52:53 +00:00
ufs The process_deferred_inactive() function locks the vnodes of the ufs 2013-01-01 16:14:48 +00:00
vm Comment fix: there is no ub_ptr, instead explain meaning of uz_count 2012-12-21 10:09:45 +00:00
x86 Add bus_space_read_8 and bus_space_write_8 for amd64. 2012-12-13 21:40:11 +00:00
xdr
xen Move the corresponding MTX_SYSINIT() next to their struct mtx declaration 2012-10-26 17:31:35 +00:00
Makefile Run cscope with the -v parameter to make it more user-friendly. 2012-12-02 20:51:24 +00:00