<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/modules/ath, branch release/9.3.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=release%2F9.3.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=release%2F9.3.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2013-01-14T19:51:26Z</updated>
<entry>
<title>MFC r244628:</title>
<updated>2013-01-14T19:51:26Z</updated>
<author>
<name>Dimitry Andric</name>
<email>dim@FreeBSD.org</email>
</author>
<published>2013-01-14T19:51:26Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=68f81165da4bd6f7ecb80552b847508a0986e864'/>
<id>urn:sha1:68f81165da4bd6f7ecb80552b847508a0986e864</id>
<content type='text'>
  Upgrade our copy of llvm/clang to 3.2 release.

  Release notes for llvm:
  http://llvm.org/releases/3.2/docs/ReleaseNotes.html

  Release notes for clang:
  http://llvm.org/releases/3.2/tools/clang/docs/ReleaseNotes.html
</content>
</entry>
<entry>
<title>MFC r228783:</title>
<updated>2012-01-02T13:01:57Z</updated>
<author>
<name>Dimitry Andric</name>
<email>dim@FreeBSD.org</email>
</author>
<published>2012-01-02T13:01:57Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2db0de12ad99add19804906b899f379cb00ef423'/>
<id>urn:sha1:2db0de12ad99add19804906b899f379cb00ef423</id>
<content type='text'>
  When building with clang, disable -Wshift-count-negative and
  -Wshift-count-overflow for sys/dev/ath/ath_hal/ah_regdomain.c, as it
  gets multiple instances of the following warnings:

  In file included from sys/dev/ath/ath_hal/ah_regdomain.c:99:
  sys/dev/ath/ath_hal/ah_regdomain/ah_rd_domains.h:69:15: warning: shift count is negative [-Wshift-count-negative]
           .chan11a               = BM4(F1_4950_4980,
                                    ^~~~~~~~~~~~~~~~~
  sys/dev/ath/ath_hal/ah_regdomain/ah_rd_domains.h:41:4: note: expanded from:
            W1(_fa) | W1(_fb) | W1(_fc) | W1(_fd) }
            ^
  sys/dev/ath/ath_hal/ah_regdomain/ah_rd_domains.h:34:45: note: expanded from:
          (((_a) &gt; 63 &amp;&amp; (_a) &lt; 128 ? (((uint64_t) 1)&lt;&lt;((_a)-64)) : (uint64_t) 0))
                                                     ^ ~~~~~~~~~

  and:

  In file included from sys/dev/ath/ath_hal/ah_regdomain.c:99:
  sys/dev/ath/ath_hal/ah_regdomain/ah_rd_domains.h:629:15: error: shift count &gt;= width of type [-Werror,-Wshift-count-overflow]
           .chan11a               = BM4(W2_5260_5320,
                                    ^~~~~~~~~~~~~~~~~
  sys/dev/ath/ath_hal/ah_regdomain/ah_rd_domains.h:40:34: note: expanded from:
          { W0(_fa) | W0(_fb) | W0(_fc) | W0(_fd),                        \
                                          ^
  sys/dev/ath/ath_hal/ah_regdomain/ah_rd_domains.h:32:44: note: expanded from:
          (((_a) &gt;= 0 &amp;&amp; (_a) &lt; 64 ? (((uint64_t) 1)&lt;&lt;(_a)) : (uint64_t) 0))
                                                    ^ ~~~~

  Both warnings are false positives, caused by LLVM PR 10030.  For global
  initializations, clang fails to detect that the branch of the ternary
  operator causing the warning is dead.

MFC r228793:

  Amend r228783 by also disabling -Wshift-count-negative
  -Wshift-count-overflow warnings for the ath module.

MFC r228818:

  Disable various warnings for the ath module in a more fine-grained way:
  only add the option for the specific .c files that need them, like via
  sys/conf/files.
</content>
</entry>
<entry>
<title>Flesh out the radar detection related operations for the ath driver.</title>
<updated>2011-06-01T20:09:49Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2011-06-01T20:09:49Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=48237774e473e5661bd475ac802c585039240cce'/>
<id>urn:sha1:48237774e473e5661bd475ac802c585039240cce</id>
<content type='text'>
This is in no way a complete DFS/radar detection implementation!
It merely creates an abstracted interface which allows for future
development of the DFS radar detection code.

Note: Net80211 already handles the bulk of the DFS machinery,
all we need to do here is figure out that a radar event has occured
and inform it as such. It then drives the DFS state engine for us.

The "null" DFS radar detection module is included by default;
it doesn't require a device line.

This commit:

* Adds a simple abstracted layer for radar detection state -
  sys/dev/ath/ath_dfs/;
* Implements a null DFS module which doesn't do anything;
  (ie, implements the exact behaviour at the moment);
* Adds hooks to the ath driver to process received radar events
  and gives the DFS module a chance to determine whether
  a radar has been detected.

Obtained from:	Atheros
</content>
</entry>
<entry>
<title>Introduce AR9287 support to the FreeBSD HAL.</title>
<updated>2011-05-26T20:31:08Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2011-05-26T20:31:08Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=94c389c61b5f4aa88c2fade72ddb3ea2fb17d451'/>
<id>urn:sha1:94c389c61b5f4aa88c2fade72ddb3ea2fb17d451</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Introduce AR9130 (HOWL) WMAC support to the FreeBSD HAL.</title>
<updated>2011-04-28T12:47:40Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2011-04-28T12:47:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=9f25ad52ce9d07266d17de8d11251974a2893ac4'/>
<id>urn:sha1:9f25ad52ce9d07266d17de8d11251974a2893ac4</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>Bring over the antenna diversity logic support for Kite.</title>
<updated>2011-04-13T11:32:15Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2011-04-13T11:32:15Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=77823fbc2cce283fa5cac04cf3089c9430f518e2'/>
<id>urn:sha1:77823fbc2cce283fa5cac04cf3089c9430f518e2</id>
<content type='text'>
Again, this is just the code ported from ath9k and included in the build,
it isn't yet enabled.
</content>
</entry>
<entry>
<title>Add the initial AR9285 PHY glue for supporting antenna diversity.</title>
<updated>2011-04-13T02:40:45Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2011-04-13T02:40:45Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=1c554472de6339df5547055976d0f36457cad3a3'/>
<id>urn:sha1:1c554472de6339df5547055976d0f36457cad3a3</id>
<content type='text'>
This code isn't currently used anywhere; it's just linked into the build.
</content>
</entry>
<entry>
<title>Break out the ath PCI logic into a separate device/module.</title>
<updated>2011-03-31T08:07:13Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2011-03-31T08:07:13Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=dba9c8597747c6c9bf3d2ec68f7eb90552878dc7'/>
<id>urn:sha1:dba9c8597747c6c9bf3d2ec68f7eb90552878dc7</id>
<content type='text'>
Introduce the AHB glue for Atheros embedded systems. Right now it's
hard-coded for the AR9130 chip whose support isn't yet in this HAL;
it'll be added in a subsequent commit.

Kernel configuration files now need both 'ath' and 'ath_pci' devices; both
modules need to be loaded for the ath device to work.
</content>
</entry>
<entry>
<title>Port over the AR9285 PA calibration and initial calibration code from</title>
<updated>2011-03-11T11:58:54Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2011-03-11T11:58:54Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=586b0ae5aa5108477d587a17ca47c9c972c8ce1e'/>
<id>urn:sha1:586b0ae5aa5108477d587a17ca47c9c972c8ce1e</id>
<content type='text'>
Linux ath9k.

The ath9k ar9002_hw_init_cal() isn't entirely clear about what
is supposed to be called for what chipsets, so I'm ignoring the
rest of it and just porting the AR9285 init cal path as-is and
leaving the rest alone. Subsequent commits may also tidy up the
Merlin (AR9285) and other chipset support.

Obtained from:	Linux ath9k
</content>
</entry>
<entry>
<title>Implement open-loop TX power control (OLC) for Merlin (AR9280) and</title>
<updated>2011-03-08T06:59:59Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2011-03-08T06:59:59Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=48c1d3647992fd026ba9851357e381b32c9deb56'/>
<id>urn:sha1:48c1d3647992fd026ba9851357e381b32c9deb56</id>
<content type='text'>
generally tidy up the TX power programming code.

Enforce that the TX power offset for Merlin is -5 dBm, rather than
any other value programmable in the EEPROM. This requires some
further code to be ported over from ath9k, so until that is done
and tested, fail to attach NICs whose TX power offset isn't -5
dBm.

This improves both legacy and HT transmission on my merlin board.
It allows for stable MCS TX up to MCS15.

Specifics:

* Refactor out a bunch of the TX power calibration code -
  setting/obtaining the power detector / gain boundaries,
  programming the PDADC
* Take the -5 dBm TX power offset into account on Merlin -
  "0" in the per-rate TX power register means -5 dBm, not
  0 dBm
* When doing OLC
* Enforce min (0) and max (AR5416_MAX_RATE_POWER) when fiddling
  with the TX power, to avoid the TX power values from wrapping
  when low.
* Implement the 1 dBm cck power offset when doing OLC
* Implement temperature compensation for 2.4ghz mode when doing OLC
* Implement an AR9280 specific TX power calibration routine which
  includes the OLC twiddles, leaving the earlier chipset path
  (AR5416, AR9160) alone

Whilst here, use these refactored routines for the AR9285 TX power
calibration/programming code and enforce correct overflow/underflow
handling when fiddling with TX power values.

Obtained from:	linux ath9k
</content>
</entry>
</feed>
