]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Implement the first part of the BB read workaround.
authoradrian <adrian@FreeBSD.org>
Tue, 18 Oct 2011 03:01:41 +0000 (03:01 +0000)
committeradrian <adrian@FreeBSD.org>
Tue, 18 Oct 2011 03:01:41 +0000 (03:01 +0000)
commit3b5040418ab03aa9220c3d7d07dd6b6ab587e521
tree26e74e102e8cdb25bb1cdc527b1da44d3babd8c0
parent9000cf77a50a5af5a2aa2db12323d0f91963afe5
Implement the first part of the BB read workaround.

The AR5008/AR9001 series NICs have a bug where BB register reads
will occasionally be corrupted. This could cause issues with things
such as ANI, which adjust operational parameters based on the
BB radio register reads. This was introduced in the AR5008 chip
and fixed with the first released AR9002 series NIC (AR9280v2.)

A followup commit will implement the acutal WAR when reading
BB registers. I'm still not sure how I'll implement it - whether
it should be done in the osdep layer, or whether it should just
live in the AR5416 HAL. Either way, they can use this capability
bit to determine whether to implement the WAR or not.

Thankyou to various sources inside Atheros who have helped me track
down what this particular issue is.

Obtained from: Atheros
sys/dev/ath/ath_hal/ah.c
sys/dev/ath/ath_hal/ah.h
sys/dev/ath/ath_hal/ah_internal.h
sys/dev/ath/ath_hal/ar5416/ar5416_attach.c
sys/dev/ath/ath_hal/ar9001/ar9130_attach.c
sys/dev/ath/ath_hal/ar9001/ar9160_attach.c