History log of /freebsd/sys/dev/ath/if_ath.c (Results 401 – 425 of 1045)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# de138ec7 24-Jun-2011 Attilio Rao <attilio@FreeBSD.org>

MFC


# 37931a35 23-Jun-2011 Adrian Chadd <adrian@FreeBSD.org>

Break out most of the HAL related tweaks into a per-HAL instance,
rather than global variables.

This specifically allows for debugging to be enabled per-NIC, rather
than globally.

Since the ath dri

Break out most of the HAL related tweaks into a per-HAL instance,
rather than global variables.

This specifically allows for debugging to be enabled per-NIC, rather
than globally.

Since the ath driver doesn't know about AH_DEBUG, and to keep the ABI
consistent regardless of whether AH_DEBUG is enabled or not, enable the
debug parameter always but only conditionally compile in the debug
methods if needed.

The ALQ support is currently still global pending some brainstorming.

Submitted by: ssgriffonuser@gmail.com
Reviewed by: adrian, bschmidt

show more ...


# 81c02539 06-Jun-2011 Attilio Rao <attilio@FreeBSD.org>

MFC


# 373815ef 05-Jun-2011 Adrian Chadd <adrian@FreeBSD.org>

Add a missing call to sync the DMAed buffer before the radar event data is extracted.


# 3bce356e 05-Jun-2011 Attilio Rao <attilio@FreeBSD.org>

MFC


# 7e5eb44d 04-Jun-2011 Adrian Chadd <adrian@FreeBSD.org>

A few changes to make radar detection implementable in a hal_dfs/
module.

* If sc->sc_dodfs is set to 1 by the ath_dfs_radar_enable(),
set the relevant rx filter bit to begin receiving radar PHY

A few changes to make radar detection implementable in a hal_dfs/
module.

* If sc->sc_dodfs is set to 1 by the ath_dfs_radar_enable(),
set the relevant rx filter bit to begin receiving radar PHY
errors. The HAL code already knows how to set the relevant
error mask register to enable radar events.

* Add a missing call to ath_dfs_radar_enable() after ath_hal_reset()

* change ath_dfs_process_phyerr() to take a const char *buf for now,
rather than a descriptor. This way it can get access to the packet
buffer contents.

show more ...


# 3bf1ec3a 02-Jun-2011 Attilio Rao <attilio@FreeBSD.org>

MFC


# 48237774 01-Jun-2011 Adrian Chadd <adrian@FreeBSD.org>

Flesh out the radar detection related operations for the ath driver.

This is in no way a complete DFS/radar detection implementation!
It merely creates an abstracted interface which allows for futur

Flesh out the radar detection related operations for the ath driver.

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

show more ...


# 5b6ea0b5 31-May-2011 Attilio Rao <attilio@FreeBSD.org>

MFC


# 9be25f4a 30-May-2011 Adrian Chadd <adrian@FreeBSD.org>

Set default A-MPDU density/size.


# c7df91af 29-May-2011 Attilio Rao <attilio@FreeBSD.org>

MFC


# 76355edb 29-May-2011 Adrian Chadd <adrian@FreeBSD.org>

Teach if_ath about devices which have short-GI in 20MHz channel modes.

This has been disabled until now because there hasn't been any supported
device which has this feature. Since the AR9287 is the

Teach if_ath about devices which have short-GI in 20MHz channel modes.

This has been disabled until now because there hasn't been any supported
device which has this feature. Since the AR9287 is the first device to
support it, and since now the HAL has functional AR9287+11n support,
flip this on.

show more ...


# 87c3644c 24-May-2011 Peter Grehan <grehan@FreeBSD.org>

IFC @ r222256


# 7e7a34e5 16-May-2011 Attilio Rao <attilio@FreeBSD.org>

MFC


# e9d1191f 15-May-2011 Adrian Chadd <adrian@FreeBSD.org>

* Add some more TX descriptor error counters; this'll be helpful when
implementing TX aggregation
* Whilst I'm there, comment some RX error counters


# 739e31f6 13-May-2011 Attilio Rao <attilio@FreeBSD.org>

MFC


# dce0bcca 12-May-2011 Adrian Chadd <adrian@FreeBSD.org>

Now that the devices with functioning ps-poll hardware support have
been enumerated (merlin and later), flick this on.


# e57539af 29-Apr-2011 Adrian Chadd <adrian@FreeBSD.org>

Cosmetic changes to fit 80 character screen width.


# 6f5fe81e 23-Apr-2011 Adrian Chadd <adrian@FreeBSD.org>

Fix a corner-case of interrupt handling which resulted in potentially
spurious (and fatal) interrupt errors.

One user reported seeing this:

Apr 22 18:04:24 ceres kernel: ar5416GetPendingInterrupts:

Fix a corner-case of interrupt handling which resulted in potentially
spurious (and fatal) interrupt errors.

One user reported seeing this:

Apr 22 18:04:24 ceres kernel: ar5416GetPendingInterrupts: fatal error,
ISR_RAC 0x0 SYNC_CAUSE 0x2000

SYNC_CAUSE of 0x2000 is AR_INTR_SYNC_LOCAL_TIMEOUT which is a bus timeout;
this shouldn't cause HAL_INT_FATAL to be set.

After checking out ath9k, ath9k_ar9002_hw_get_isr() clears (*masked)
before continuing, regardless of whether any bits in the ISR registers
are set. So if AR_INTR_SYNC_CAUSE is set to something that isn't
treated as fatal, and AR_ISR isn't read or is read and is 0, then
(*masked) wouldn't be cleared. Thus any of the existing bits set
that were passed in would be preserved in the output.

The caller in if_ath - ath_intr() - wasn't setting the masked value
to 0 before calling ath_hal_getisr(), so anything that was present
in that uninitialised variable would be preserved in the case above
of AR_ISR=0, AR_INTR_SYNC_CAUSE != 0; and if the HAL_INT_FATAL bit
was set, a fatal condition would be interpreted and the chip was
reset.

This patch does the following:

* ath_intr() - set masked to 0 before calling ath_hal_getisr();
* ar5416GetPendingInterrupts() - clear (*masked) before processing
continues; so if the interrupt source is AR_INTR_SYNC_CAUSE
and it isn't fatal, the hardware isn't reset via returning
HAL_INT_FATAL.

This doesn't fix any underlying errors which trigger
AR_INTR_SYNC_LOCAL_TIMEOUT - which is a bus timeout of some
sort - so that likely should be further investigated.

show more ...


# 3788ebed 18-Apr-2011 Adrian Chadd <adrian@FreeBSD.org>

For now, only enable GTT. CST is firing very frequently during local tests;
I'll figure out what's going on before re-enabling this as it does add
to the interrupt load.


# 5594f5c0 18-Apr-2011 Adrian Chadd <adrian@FreeBSD.org>

Add TX carrier sense timeout statistics.


# d0a0ebc6 18-Apr-2011 Adrian Chadd <adrian@FreeBSD.org>

Rework the Global TX timeout handling to look more like ath9k.

It correctly now sets the AR_IMR BCNMISC register, along with
the GTT register in AR_IMR_S2.


# 6ad02dba 18-Apr-2011 Adrian Chadd <adrian@FreeBSD.org>

Add global TX timeout handling.

The global TX timeout counter increments whenever a frame is ready
to be transmitted and the medium is busy.


# 235ab70e 13-Apr-2011 Adrian Chadd <adrian@FreeBSD.org>

Add in the AR9285 (Kite) diversity to if_ath, enabling TX/RX antenna
diversity.

This is bit dirty and likely should be revised at a later date,
with an eye to unifying/tidying up the whole diversity

Add in the AR9285 (Kite) diversity to if_ath, enabling TX/RX antenna
diversity.

This is bit dirty and likely should be revised at a later date,
with an eye to unifying/tidying up the whole diversity setup
and allowing developers to do "tricky stuff" as they desire.
For now, this works.

show more ...


# 8a2a6bee 04-Apr-2011 Adrian Chadd <adrian@FreeBSD.org>

Add a HAL capability bit for supporting self-linked RX descriptors and disable it for the 11n chipsets.

From the ath9k source:

==

11N: we can no longer afford to self link the last descriptor.
MAC

Add a HAL capability bit for supporting self-linked RX descriptors and disable it for the 11n chipsets.

From the ath9k source:

==

11N: we can no longer afford to self link the last descriptor.
MAC acknowledges BA status as long as it copies frames to host
buffer (or rx fifo). This can incorrectly acknowledge packets
to a sender if last desc is self-linked.

==

Since this is useful for pre-AR5416 chips that communicate PHY errors
via error frames rather than by on-chip counters, leave the support
in there, but disable it for AR5416 and later.

show more ...


1...<<11121314151617181920>>...42