freebsd-dev/sys
Adrian Chadd 9f25ad52ce Introduce AR9130 (HOWL) WMAC support to the FreeBSD HAL.
The AR9130 is an AR9160/AR5416 family WMAC which is glued directly
to the AR913x SoC peripheral bus (APB) rather than via a PCI/PCIe
bridge.

The specifics:

* A new build option is required to use the AR9130 - AH_SUPPORT_AR9130.
  This is needed due to the different location the RTC registers live
  with this chip; hopefully this will be undone in the future.
  This does currently mean that enabling this option will break non-AR9130
  builds, so don't enable it unless you're specifically building an image
  for the AR913x SoC.

* Add the new probe, attach, EEPROM and PLL methods specific to Howl.

* Add a work-around to ah_eeprom_v14.c which disables some of the checks
  for endian-ness and magic in the EEPROM image if an eepromdata block
  is provided. This'll be fixed at a later stage by porting the ath9k
  probe code and making sure it doesn't break in other setups (which
  my previous attempt at this did.)

* Sprinkle Howl modifications throughput the interrupt path - it doesn't
  implement the SYNC interrupt registers, so ignore those.

* Sprinkle Howl chip powerup/down throughout the reset path; the RTC methods
  were

* Sprinkle some other Howl workarounds in the reset path.

* Hard-code an alternative setup for the AR_CFG register for Howl, that
  sets up things suitable for Big-Endian MIPS (which is the only platform
  this chip is glued to.)

This has been tested on the AR913x based TP-Link WR-1043nd mode, in
legacy, HT/20 and HT/40 modes.

Caveats:

* 2ghz has only been tested. I've not seen any 5ghz radios glued to this
  chipset so I can't test it.

* AR5416_INTERRUPT_MITIGATION is not supported on the AR9130. At least,
  it isn't implemented in ath9k. Please don't enable this.

* This hasn't been tested in MBSS mode or in RX/TX block-aggregation mode.
2011-04-28 12:47:40 +00:00
..
amd64 This patch changes head so that the default NFS client is now the new 2011-04-27 17:51:51 +00:00
arm - Add shim to simplify migration to the CAM-based ATA. For each new adaX 2011-04-26 17:01:49 +00:00
boot Remove all object files during 'make clean'. 2011-04-21 14:17:36 +00:00
bsm Add ECAPMODE, "Not permitted in capability mode", a new kernel errno 2011-03-01 13:14:28 +00:00
cam - Add shim to simplify migration to the CAM-based ATA. For each new adaX 2011-04-26 17:01:49 +00:00
cddl Fix copy-paste bug. 2011-04-27 04:03:04 +00:00
compat Regen. 2011-04-18 16:32:47 +00:00
conf Introduce AR9130 (HOWL) WMAC support to the FreeBSD HAL. 2011-04-28 12:47:40 +00:00
contrib Make pf compile without INET support by adding #ifdef INETs and 2011-04-27 19:34:01 +00:00
crypto Fix a bug in the result of manual assembly. 2011-03-02 14:56:58 +00:00
ddb - Add the possibility to reuse the already last used timeout when patting 2011-04-27 16:43:03 +00:00
dev Introduce AR9130 (HOWL) WMAC support to the FreeBSD HAL. 2011-04-28 12:47:40 +00:00
fs Fix module names and dependencies so the NFS clients will 2011-04-27 20:42:30 +00:00
gdb Modify kdb_trap() so that it re-calls the dbbe_trap function as long as 2011-02-18 22:25:11 +00:00
geom Implement relaxed comparision for hardcoded provider names to make it 2011-04-27 00:10:26 +00:00
gnu Fix typos - remove duplicate "the". 2011-02-21 09:01:34 +00:00
i386 This patch changes head so that the default NFS client is now the new 2011-04-27 17:51:51 +00:00
ia64 This patch changes head so that the default NFS client is now the new 2011-04-27 17:51:51 +00:00
isa - Enable an extra debugging bootverbose printf when probing ISA PNP cards 2011-03-29 12:38:13 +00:00
kern If the 4BSD scheduler tries to schedule a thread that has been pinned or 2011-04-26 20:34:30 +00:00
kgssapi
libkern Fix typos - remove duplicate "is". 2011-02-23 09:22:33 +00:00
mips Add the IP2 DDR flush handlers. 2011-04-28 11:13:26 +00:00
modules Introduce AR9130 (HOWL) WMAC support to the FreeBSD HAL. 2011-04-28 12:47:40 +00:00
net Make various (pseudo) interfaces compile without INET in the kernel 2011-04-27 19:30:44 +00:00
net80211 We need in.h for both INET and INET6, as according to RFC 3493 it 2011-04-25 16:37:47 +00:00
netatalk
netgraph LibAliasInit() should allocate memory with M_WAITOK flag. Modify it 2011-04-18 20:07:08 +00:00
netinet MfP4 CH=192029: 2011-04-27 19:36:35 +00:00
netinet6 Make IPsec compile without INET adding appropriate #ifdef checks. 2011-04-27 19:28:42 +00:00
netipsec Make IPsec compile without INET adding appropriate #ifdef checks. 2011-04-27 19:28:42 +00:00
netipx
netnatm
netncp
netsmb
nfs Fix the experimental NFS client so that it does not bogusly 2011-04-25 22:22:51 +00:00
nfsclient Fix module names and dependencies so the NFS clients will 2011-04-27 20:42:30 +00:00
nfsserver Add some FEATURE macros for various features (AUDIT/CAM/IPC/KTR/MAC/NFS/NTP/ 2011-02-25 10:11:01 +00:00
nlm sysctl(9) cleanup checkpoint: amd64 GENERIC builds cleanly. 2011-01-12 19:54:19 +00:00
ofed - Catch up to falloc() changes. 2011-04-26 07:30:52 +00:00
opencrypto After the r219999 is merged to stable/8, rename fallocf(9) to falloc(9) 2011-04-01 13:28:34 +00:00
pc98 This patch changes head so that the default NFS client is now the new 2011-04-27 17:51:51 +00:00
pci Do a sweep of the tree replacing calls to pci_find_extcap() with calls to 2011-03-23 13:10:15 +00:00
powerpc This patch changes head so that the default NFS client is now the new 2011-04-27 17:51:51 +00:00
rpc This patch is believed to fix a problem in the kernel rpc for 2011-04-27 18:19:26 +00:00
security - Add a FEATURE for capsicum (security_capabilities). 2011-03-04 09:03:54 +00:00
sparc64 This patch changes head so that the default NFS client is now the new 2011-04-27 17:51:51 +00:00
sun4v This patch changes head so that the default NFS client is now the new 2011-04-27 17:51:51 +00:00
sys - Add the possibility to reuse the already last used timeout when patting 2011-04-27 16:43:03 +00:00
teken
tools GNU awk does not output escaped newlines in multi-line printc statements. This 2011-03-31 21:33:33 +00:00
ufs VFS sometimes is unable to inactivate a vnode when vnode use count 2011-04-24 10:47:56 +00:00
vm Reap old SPL comments. 2011-04-26 22:18:53 +00:00
x86 Use ACPI-supplied CPU frequencies instead of estimated ones as we are about 2011-04-27 00:32:35 +00:00
xdr
xen Fix a few more SYSCTL_PROC() that were missing a CTLFLAG type specifier. 2011-01-19 00:57:58 +00:00
Makefile