adrian a4f08be08e 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
..
2010-08-23 06:13:29 +00:00
2011-04-15 18:34:27 +00:00
2010-07-23 11:00:46 +00:00
2008-05-19 01:53:47 +00:00
2011-01-06 21:04:00 +00:00
2011-01-06 21:04:00 +00:00
2010-08-23 06:13:29 +00:00
2008-04-07 11:26:13 +00:00
2010-08-23 06:13:29 +00:00
2011-04-02 09:46:09 +00:00
2010-08-23 06:13:29 +00:00
2010-08-23 06:13:29 +00:00
2010-10-13 14:44:38 +00:00
2010-08-23 06:13:29 +00:00
2010-08-23 06:13:29 +00:00
2009-06-05 18:44:36 +00:00
2010-09-16 09:29:48 +00:00
2010-08-23 06:13:29 +00:00
2010-08-23 06:13:29 +00:00
2010-08-23 06:13:29 +00:00
2010-08-23 06:13:29 +00:00
2010-08-23 06:13:29 +00:00
2009-03-26 19:15:31 +00:00
2008-05-22 21:53:15 +00:00
2010-11-26 22:46:32 +00:00
2008-05-27 01:54:45 +00:00
2010-08-23 06:13:29 +00:00
2010-08-23 06:13:29 +00:00
2010-08-23 06:13:29 +00:00
2010-08-23 06:13:29 +00:00
2010-08-23 06:13:29 +00:00
2010-08-23 06:13:29 +00:00
2010-08-23 06:13:29 +00:00
2009-08-23 20:26:09 +00:00
2008-05-05 20:19:33 +00:00
2010-09-13 02:05:42 +00:00
2010-08-15 15:33:01 +00:00
2010-08-19 11:31:03 +00:00
2010-08-23 06:13:29 +00:00
2008-08-07 20:51:51 +00:00
2008-11-05 15:04:03 +00:00
2010-09-13 02:05:42 +00:00
2010-08-23 06:13:29 +00:00
2010-08-23 06:13:29 +00:00
2010-10-13 14:44:38 +00:00
2010-08-13 04:00:35 +00:00
2010-08-23 06:13:29 +00:00
2011-03-20 21:05:09 +00:00
2011-02-26 17:22:11 +00:00
2010-08-23 06:13:29 +00:00