AR9330 hornet board stops beaconing after a few days (0xdeadbeef)
Subsystems (2)
Hello ath9k fellows,
I'm using a pretty new AR9330 rev1/hornet based AP at home. After some days (5 days this time), it suddenly stops beaconing. dmesg shows nothing, hostapd is still running, but what I can see is:
cat /sys/kernel/debug/ieee80211/phy0/ath9k/regdump 0x000000 0xdeadbeef0x000004 0xdeadbeef0x000008 0xdeadbeef0x00000c 0xdeadbeef0x000010 0xdeadbeef0x000014 0xdeadbeef
[...]0x001ff4 0xdeadbeef0x001ff8 0xdeadbeef0x001ffc 0xdeadbeef0x002000 0xbadc0ffe0x002004 0xbadc0ffe0x002008 0xbadc0ffe0x00200c 0xbadc0ffe0x002010 0xbadc0ffe
[...]0x003ff0 0xbadc0ffe0x003ff4 0xbadc0ffe0x003ff8 0xbadc0ffe0x003ffc 0xbadc0ffe0x004000 0x000000000x004004 0x0102420b0x004008 0x000000000x00400c 0x00000000
[...] (some more sane looking registers here, and then zeros) 0x004ef8 0x000000000x004efc 0x000000000x004f00 0xdeadbeef0x004f04 0xdeadbeef0x004f08 0xdeadbeef
[...] (and the rest is mostly deadbeef)
Also /sys/kernel/debug/ieee80211/phy0/ath9k/dma shows a lot of deadbeef.
I'm using OpenWRT r31729, a single AP bridged with Ethernet. It is normal home usage, i.e. a few laptops and android phones doing not so much traffic. The box stops working out of the blue after a few days without any outside event (at least none I'm aware of). Sometimes this problem does not occur for 2 weeks, sometimes after 12 hours, I couldn't find an easy way to reproduce it yet. As said, the box is perfectly reachable via SSH, no errors in syslog or anywhere else. Also an ifconfig wlan0 down and up seems to fix the problem.
I'll try a new firmware with more debugging turned on, but have any of you seen this problem? Any input would be very much appreciated. I have a complete /sys/kernel/debug log from a working and a non-working system, along with more info (brctl, ip config, etc) which I'd love to share with anyone interested
- it's too much to post on a public ml.
Thank you very much
Cheers,
Simon
Hello,
just to bump again - isn't there anyone who can give us some hint or clue regarding these 0xdeadbeef entries in the registers? Couldn't find a connection to other reports deadbeef on the mailing list so far.
Thanks!
Simon
Quoted 58 lines · Simon Wunderlich
Hello ath9k fellows,
I'm using a pretty new AR9330 rev1/hornet based AP at home. After some days (5 days this time), it suddenly stops beaconing. dmesg shows nothing, hostapd is still running, but what I can see is:
cat
/sys/kernel/debug/ieee80211/phy0/ath9k/regdump0x0000000xdeadbeef0x0000040xdeadbeef0x0000080xdeadbeef0x00000c0xdeadbeef0x0000100xdeadbeef0x0000140xdeadbeef
[...]0x001ff40xdeadbeef0x001ff80xdeadbeef0x001ffc0xdeadbeef0x0020000xbadc0ffe0x0020040xbadc0ffe0x0020080xbadc0ffe0x00200c0xbadc0ffe0x0020100xbadc0ffe
[...]0x003ff00xbadc0ffe0x003ff40xbadc0ffe0x003ff80xbadc0ffe0x003ffc0xbadc0ffe0x0040000x000000000x0040040x0102420b0x0040080x000000000x00400c0x00000000
[...] (some more sane looking registers here, and then zeros)0x004ef80x000000000x004efc0x000000000x004f000xdeadbeef0x004f040xdeadbeef0x004f080xdeadbeef
[...] (and the rest is mostly deadbeef)Also
/sys/kernel/debug/ieee80211/phy0/ath9k/dmashows a lot of deadbeef.I'm using OpenWRT r31729, a single AP bridged with Ethernet. It is normal home usage, i.e. a few laptops and android phones doing not so much traffic. The box stops working out of the blue after a few days without any outside event (at least none I'm aware of). Sometimes this problem does not occur for 2 weeks, sometimes after 12 hours, I couldn't find an easy way to reproduce it yet. As said, the box is perfectly reachable via SSH, no errors in syslog or anywhere else. Also an ifconfig wlan0 down and up seems to fix the problem.
I'll try a new firmware with more debugging turned on, but have any of you seen this problem? Any input would be very much appreciated. I have a complete
/sys/kernel/debuglog from a working and a non-working system, along with more info (brctl, ip config, etc) which I'd love to share with anyone interested
- it's too much to post on a public ml.Thank you very much
Cheers,
Simon
Hi Simon,
Quoted 5 lines · Simon Wunderlich
Hello,
just to bump again - isn't there anyone who can give us some hint or clue regarding these
0xdeadbeefentries in the registers? Couldn't find a connection to other reports deadbeef on the mailing list so far.
based on the suggestion from Felix Bitterli he says the deadbeef is due to clocks
of MAC/baseband is off. Adrian says dumping RTC registers might provide some clue
today evening i would just take a look at some h/w specific changes that were still yet to be in ath9k.
Quoted 74 lines
Thanks!
SimonQuoted 55 lines · Simon Wunderlich
Hello ath9k fellows,
I'm using a pretty new AR9330 rev1/hornet based AP at home. After some days (5 days this time), it suddenly stops beaconing. dmesg shows nothing, hostapd is still running, but what I can see is:
cat
/sys/kernel/debug/ieee80211/phy0/ath9k/regdump0x0000000xdeadbeef0x0000040xdeadbeef0x0000080xdeadbeef0x00000c0xdeadbeef0x0000100xdeadbeef0x0000140xdeadbeef
[...]0x001ff40xdeadbeef0x001ff80xdeadbeef0x001ffc0xdeadbeef0x0020000xbadc0ffe0x0020040xbadc0ffe0x0020080xbadc0ffe0x00200c0xbadc0ffe0x0020100xbadc0ffe
[...]0x003ff00xbadc0ffe0x003ff40xbadc0ffe0x003ff80xbadc0ffe0x003ffc0xbadc0ffe0x0040000x000000000x0040040x0102420b0x0040080x000000000x00400c0x00000000
[...] (some more sane looking registers here, and then zeros)0x004ef80x000000000x004efc0x000000000x004f000xdeadbeef0x004f040xdeadbeef0x004f080xdeadbeef
[...] (and the rest is mostly deadbeef)Also
/sys/kernel/debug/ieee80211/phy0/ath9k/dmashows a lot of deadbeef.I'm using OpenWRT r31729, a single AP bridged with Ethernet. It is normal home usage, i.e. a few laptops and android phones doing not so much traffic. The box stops working out of the blue after a few days without any outside event (at least none I'm aware of). Sometimes this problem does not occur for 2 weeks, sometimes after 12 hours, I couldn't find an easy way to reproduce it yet. As said, the box is perfectly reachable via SSH, no errors in syslog or anywhere else. Also an ifconfig wlan0 down and up seems to fix the problem.
I'll try a new firmware with more debugging turned on, but have any of you seen this problem? Any input would be very much appreciated. I have a complete
/sys/kernel/debuglog from a working and a non-working system, along with more info (brctl, ip config, etc) which I'd love to share with anyone interested
- it's too much to post on a public ml.Quoted 3 lines
Thank you very much
Cheers,
Simon-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)iEYEARECAAYFAlAxYvQACgkQrzg/fFk7axaPhACfaTuTkdyx9J/Q4z4EQBf/3sfi O/oAn0c8YFa8FPzayVApD2qX78OBz8AT
=3WcZ
-----END PGP SIGNATURE-----
Signature · 2 lines
thanks, shafi
Yeah. The deadbeef means "something's turned off."
I'd start with the SoC reset register and see if the MAC/WMAC bits are correctly set. Ie, that something hasn't gone and reset the wireless bits behind your back.
You could try hacking up a work around that does a full MAC/WMAC reset when you reset the driver.
Ie, when ath9k does a full reset, actually _do_ a full reset by resetting the mac/wmac via the SoC lines.
It could also be the RTC state. Maybe it's found its way into network sleep (ie, the force wake bits aren't set right.) Or something PLL related isn't programmed correctly. Dumping the RTC registers would be helpful.
Thanks,
Adrian
Hello Adrian,
thanks for your comments!
Quoted 5 lines · Adrian Chadd
Yeah. The deadbeef means "something's turned off."
I'd start with the SoC reset register and see if the MAC/WMAC bits are correctly set. Ie, that something hasn't gone and reset the wireless bits behind your back.
Sure, but which register would that be? How can I find out? Is it included in regdump of ath9k debugfs?
Quoted 6 lines
You could try hacking up a work around that does a full MAC/WMAC reset when you reset the driver.
Ie, when ath9k does a full reset, actually _do_ a full reset by resetting the mac/wmac via the SoC lines.
So far, I could resolve the situation by doing ifconfig wlan0 down ; ifconfig wlan0 up. But I don't know if this problem will be triggered much faster in "more hostile" environments (wherever this comes from).
Quoted 5 lines
It could also be the RTC state. Maybe it's found its way into network sleep (ie, the force wake bits aren't set right.) Or something PLL related isn't programmed correctly. Dumping the RTC registers would be helpful.
I'm not sure which registers you mean exactly, but I have looked through the regdump, compared to ath9k's reg.h and annotated it a bit (see below). As I lack the Chip Specification, maybe some QCA/Atheros dev can help me on that?
BTW, I've uploaded the full dumps in case anyone is interested [1]. node200 is the broken one, node201 is working at that moment (for comparison).
Thanks,
Simon
[1] http://packetmixer.de/ar9330_deadbeef/
#### Some PLL stuff:
#define AR_CH0_BB_DPLL1 0x161800x016180 0x08400000
#define AR_CH0_BB_DPLL2 0x161840x016184 0x18e90f00
#define AR_CH0_BB_DPLL3 0x161880x016188 0x00800000
#define AR_CH0_DDR_DPLL2 0x162440x016244 0x18e82f01
#define AR_CH0_DDR_DPLL3 0x162480x016248 0x008024d00x01624c 0xfc4d78b0
#### RTC Registers, annotated:
0x007000 0x000000020x007004 0x000000000x007008 0x000000000x00700c 0x000000010x007010 0x000000220x007014 0x0000142c0x007018 0x000005000x00701c 0x000000010x007020 0x000000000x007024 0x000000000x007028 0x000000000x00702c 0x000000000x007030 0x00000002
#define AR_RTC_KEEP_AWAKE 0x70340x007034 0x000000020x007038 0x000002f80x00703c 0x00e04a3d
#define AR_RTC_RESET ((AR_SREV_9100(ah)) ? (AR_RTC_BASE + 0x0040) : 0x7040
#define AR_RTC_RESET_EN (0x00000001)0x007040 0x00000001
#define AR_RTC_STATUS ((AR_SREV_9100(ah)) ? (AR_RTC_BASE + 0x0044) : 0x7044) #define AR_RTC_STATUS_M ((AR_SREV_9100(ah)) ? 0x0000003f : 0x0000000f)
#define AR_RTC_PM_STATUS_M 0x0000000f #define AR_RTC_STATUS_SHUTDOWN 0x00000001 #define AR_RTC_STATUS_ON 0x00000002 #define AR_RTC_STATUS_SLEEP 0x00000004 #define AR_RTC_STATUS_WAKEUP 0x00000008
0x007044 0x00000002
--> so RTC Status is "on"?
#define AR_RTC_SLEEP_CLK ((AR_SREV_9100(ah)) ? (AR_RTC_BASE + 0x0048) : 0x7048)
#define AR_RTC_FORCE_DERIVED_CLK 0x2
#define AR_RTC_FORCE_SWREG_PRD 0x00000004
0x007048 0x00000002
#define AR_RTC_FORCE_WAKE ((AR_SREV_9100(ah)) ? (AR_RTC_BASE + 0x004c) : 0x704c)
#define AR_RTC_FORCE_WAKE_EN 0x00000001
#define AR_RTC_FORCE_WAKE_ON_INT 0x000000020x00704c 0x00000003
--> both on, looks good?
#define AR_RTC_INTR_CAUSE ((AR_SREV_9100(ah)) ? (AR_RTC_BASE + 0x0050) : 0x7050) 0x007050 0x00000000
#define AR_RTC_INTR_ENABLE ((AR_SREV_9100(ah)) ? (AR_RTC_BASE + 0x0054) : 0x7054) 0x007054 0x00000000
#define AR_RTC_INTR_MASK ((AR_SREV_9100(ah)) ? (AR_RTC_BASE + 0x0058) : 0x7058) 0x007058 0x00000000
2012.08.23. 11:28 keltezéssel, Simon Wunderlich írta:
Quoted 5 lines
Hello Adrian,
thanks for your comments!
On Wed, Aug 22, 2012 at 11:57:04AM -0700, Adrian Chadd wrote:
Quoted 8 lines
Quoted 5 lines
Yeah. The deadbeef means "something's turned off."
I'd start with the SoC reset register and see if the MAC/WMAC bits are correctly set. Ie, that something hasn't gone and reset the wireless bits behind your back.
Sure, but which register would that be? How can I find out? Is it included in regdump of ath9k debugfs?
It is the AR933X_RESET_REG_RESET_MODULE register (0x1806001c), and the reset of the WMAC chip is controlled by the AR933X_RESET_WMAC bit. You can find the definitions in arch/mips/include/asm/mach-ath79/ar71xx_regs.h.
The platform device registration code pulls the WMAC chip out of reset before registering the device. See the 'ar933x_wmac_setup' function in 'arch/mips/ath79/dev-wmac.c'. Then only the ath9k driver controls the hardware reset line indirectly via ah->external_reset.
However, I doubt that the 0xdeadbeef values are caused by this. If the AR933X_RESET_WMAC bit is set in the reset register, the WMAC chip is not accessible at all. If the AR933X_RESET_WMAC bit is set and the driver tries to access the WMAC registers, the board locks up completely, or reboots itself. At least I have experienced this earlier.
-Gabor
If that's right, it's more likely the MAC/PHY is just asleep.
adrian
Quoted 10 lines · Mohammed Shafi
Hi Simon,
Quoted 5 lines · Simon Wunderlich
Hello,
just to bump again - isn't there anyone who can give us some hint or clue regarding these
0xdeadbeefentries in the registers? Couldn't find a connection to other reports deadbeef on the mailing list so far.
Quoted 7 lines
based on the suggestion from Felix Bitterli he says the deadbeef is due to clocks
of MAC/baseband is off. Adrian says dumping RTC registers might provide some cluetoday evening i would just take a look at some h/w specific changes that were still yet to be in ath9k.
sorry, i am unable to figure out any commits that seems to fix the symptoms like this. i will dig through or ask some one internally. please check with the logs sudo modprobe -v ath9k debug=0x8601 with beacon stuck debug enabled
Quoted 82 lines
Quoted 68 lines
Thanks!
SimonQuoted 55 lines · Simon Wunderlich
Hello ath9k fellows,
I'm using a pretty new AR9330 rev1/hornet based AP at home. After some days (5 days this time), it suddenly stops beaconing. dmesg shows nothing, hostapd is still running, but what I can see is:
cat
/sys/kernel/debug/ieee80211/phy0/ath9k/regdump0x0000000xdeadbeef0x0000040xdeadbeef0x0000080xdeadbeef0x00000c0xdeadbeef0x0000100xdeadbeef0x0000140xdeadbeef
[...]0x001ff40xdeadbeef0x001ff80xdeadbeef0x001ffc0xdeadbeef0x0020000xbadc0ffe0x0020040xbadc0ffe0x0020080xbadc0ffe0x00200c0xbadc0ffe0x0020100xbadc0ffe
[...]0x003ff00xbadc0ffe0x003ff40xbadc0ffe0x003ff80xbadc0ffe0x003ffc0xbadc0ffe0x0040000x000000000x0040040x0102420b0x0040080x000000000x00400c0x00000000
[...] (some more sane looking registers here, and then zeros)0x004ef80x000000000x004efc0x000000000x004f000xdeadbeef0x004f040xdeadbeef0x004f080xdeadbeef
[...] (and the rest is mostly deadbeef)Also
/sys/kernel/debug/ieee80211/phy0/ath9k/dmashows a lot of deadbeef.I'm using OpenWRT r31729, a single AP bridged with Ethernet. It is normal home usage, i.e. a few laptops and android phones doing not so much traffic. The box stops working out of the blue after a few days without any outside event (at least none I'm aware of). Sometimes this problem does not occur for 2 weeks, sometimes after 12 hours, I couldn't find an easy way to reproduce it yet. As said, the box is perfectly reachable via SSH, no errors in syslog or anywhere else. Also an ifconfig wlan0 down and up seems to fix the problem.
I'll try a new firmware with more debugging turned on, but have any of you seen this problem? Any input would be very much appreciated. I have a complete
/sys/kernel/debuglog from a working and a non-working system, along with more info (brctl, ip config, etc) which I'd love to share with anyone interested
- it's too much to post on a public ml.Quoted 3 lines
Thank you very much
Cheers,
SimonQuoted 8 lines
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)iEYEARECAAYFAlAxYvQACgkQrzg/fFk7axaPhACfaTuTkdyx9J/Q4z4EQBf/3sfi O/oAn0c8YFa8FPzayVApD2qX78OBz8AT
=3WcZ
-----END PGP SIGNATURE-------
thanks,
shafi
Signature · 2 lines
thanks, shafi
Quoted 9 lines · On Thursday 23 August 2012 20:29:47 Mohammed Shafi wrote:
Quoted 9 lines
Quoted 3 lines
just to bump again - isn't there anyone who can give us some hint or clue regarding these
0xdeadbeefentries in the registers? Couldn't find a connection to other reports deadbeef on the mailing list so far.based on the suggestion from Felix Bitterli he says the deadbeef is due to clocks
of MAC/baseband is off. Adrian says dumping RTC registers might provide some clue
Quoted 7 lines
Quoted 2 lines
today evening i would just take a look at some h/w specific changes that were still yet to be in ath9k.
sorry, i am unable to figure out any commits that seems to fix the symptoms like this. i will dig through or ask some one internally. please check with the logs sudo modprobe -v ath9k debug=0x8601 with beacon stuck debug enabled
We have currently the debug running with 0xFFC2D (so also with BS detection enabled) since a while. Unfortunately, it takes some days until the problem appears and we don't know how to force it to happen immediately.
Kind regards,
Sven
Quoted 19 lines · On Thursday 23 August 2012 17:19:45 Sven Eckelmann wrote:
Quoted 9 lines · On Thursday 23 August 2012 20:29:47 Mohammed Shafi wrote:
Quoted 9 lines
Quoted 3 lines
just to bump again - isn't there anyone who can give us some hint or clue regarding these
0xdeadbeefentries in the registers? Couldn't find a connection to other reports deadbeef on the mailing list so far.based on the suggestion from Felix Bitterli he says the deadbeef is due to clocks
of MAC/baseband is off. Adrian says dumping RTC registers might provide some clueQuoted 8 lines
Quoted 2 lines
today evening i would just take a look at some h/w specific changes that were still yet to be in ath9k.
sorry, i am unable to figure out any commits that seems to fix the symptoms
like this. i will dig through or ask some one internally. please check with the logs sudo modprobe -v ath9k debug=0x8601 with beacon stuck debug enabled
Quoted 3 lines
We have currently the debug running with
0xFFC2D(so also with BS detection enabled) since a while. Unfortunately, it takes some days until the problem appears and we don't know how to force it to happen immediately.
Ah, sorry. Just noticed that you also wanted to have ATH_DBG_CONFIG enabled. Therefore, I changed it to 0xFFE2D right now.
Kind regards,
Sven
Hey guys,
now, finally after approx. 9 days the problem hit us again, this time with debug enabled.
The symptoms are the same as described before. I'm pasting part of the syslog of routers 200 and 201 where the calibrating output changes - this is the only thing I could find which was really different from before.
Unfortunately I can't take anything useful out of the logs - to me, it looks like the 'NF calibrated' output changes out of the blue. I can provide full log files to anyone interested.
Debug level was:
# cat /sys/kernel/debug/ieee80211/phy0/ath9k/debug 0x000ffe2d
Any ideas? The routers are still on and reachable in this errorneous state, so I can check for more things. :)
Thanks,
Simon
=== router 200 ===
root@OpenWrt:/sys/kernel/debug/ieee80211/phy0/ath9k# head regdump 0x000000 0xdeadbeef 0x000004 0xdeadbeef 0x000008 0xdeadbeef 0x00000c 0xdeadbeef 0x000010 0xdeadbeef 0x000014 0xdeadbeef 0x000018 0xdeadbeef 0x00001c 0xdeadbeef 0x000020 0xdeadbeef 0x000024 0xdeadbeef
Aug 31 15:48:56 192.168.10.200 kernel: [706236.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:49:01 192.168.10.200 kernel: [706236.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:49:25 192.168.10.200 kernel: [706266.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:49:31 192.168.10.200 kernel: [706266.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:49:55 192.168.10.200 kernel: [706296.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:50:01 192.168.10.200 kernel: [706296.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:51:22 192.168.10.200 kernel: [706309.810000] ath: phy0: Resetting Cal 1 state for channel 2462 Aug 31 15:51:27 192.168.10.200 kernel: [706309.910000] ath: phy0: starting IQ Mismatch Calibration Aug 31 15:51:32 192.168.10.200 kernel: [706326.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:51:37 192.168.10.200 kernel: [706326.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:51:42 192.168.10.200 kernel: [706327.810000] ath: phy0: 0: Chn 0 pmi=0x0389beb7;pmq=0x03853165;iqcm=0x0015ca84; Aug 31 15:51:47 192.168.10.200 kernel: [706327.810000] ath: phy0: Starting IQ Cal and Correction for Chain 0 Aug 31 15:51:52 192.168.10.200 kernel: [706327.810000] ath: phy0: Original: Chn 0 iq_corr_meas = 0x0015ca84 Aug 31 15:51:57 192.168.10.200 kernel: [706327.810000] ath: phy0: Chn 0 pwr_meas_i = 0x0389beb7 Aug 31 15:52:02 192.168.10.200 kernel: [706327.810000] ath: phy0: Chn 0 pwr_meas_q = 0x03853165 Aug 31 15:52:07 192.168.10.200 kernel: [706327.810000] ath: phy0: iqCorrNeg is 0x00000000 Aug 31 15:52:12 192.168.10.200 kernel: [706327.810000] ath: phy0: Chn 0 iCoff = 0x00000006 Aug 31 15:52:17 192.168.10.200 kernel: [706327.810000] ath: phy0: Chn 0 qCoff = 0x00000000 Aug 31 15:52:22 192.168.10.200 kernel: [706327.810000] ath: phy0: Chn 0 : iCoff = 0x7a qCoff = 0x0 Aug 31 15:52:28 192.168.10.200 kernel: [706327.810000] ath: phy0: Register offset (0x98dc) before update = 0x20007e01 Aug 31 15:52:33 192.168.10.200 kernel: [706327.810000] ath: phy0: Register offset (0x98dc) QI COFF (bitfields 0x00003f80) after update = 0x20007d00 Aug 31 15:52:48 192.168.10.200 kernel: [706356.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:52:53 192.168.10.200 kernel: [706356.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:53:08 192.168.10.200 kernel: [706386.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:53:13 192.168.10.200 kernel: [706386.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:53:28 192.168.10.200 kernel: [706416.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 15:53:33 192.168.10.200 kernel: [706416.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:53:49 192.168.10.200 kernel: [706446.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:53:54 192.168.10.200 kernel: [706446.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:54:09 192.168.10.200 kernel: [706476.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:54:14 192.168.10.200 kernel: [706476.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:54:29 192.168.10.200 kernel: [706506.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:54:34 192.168.10.200 kernel: [706506.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:54:50 192.168.10.200 kernel: [706536.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:54:55 192.168.10.200 kernel: [706536.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:55:10 192.168.10.200 kernel: [706566.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:55:15 192.168.10.200 kernel: [706566.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:55:30 192.168.10.200 kernel: [706596.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 15:55:35 192.168.10.200 kernel: [706596.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:55:50 192.168.10.200 kernel: [706626.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:55:55 192.168.10.200 kernel: [706626.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:56:11 192.168.10.200 kernel: [706656.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:56:16 192.168.10.200 kernel: [706656.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:56:31 192.168.10.200 kernel: [706686.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:56:36 192.168.10.200 kernel: [706686.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:56:56 192.168.10.200 kernel: [706716.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 15:57:01 192.168.10.200 kernel: [706716.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:57:26 192.168.10.200 kernel: [706746.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 15:57:31 192.168.10.200 kernel: [706746.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:57:56 192.168.10.200 kernel: [706776.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 15:58:01 192.168.10.200 kernel: [706776.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:58:26 192.168.10.200 kernel: [706806.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:58:31 192.168.10.200 kernel: [706806.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:58:46 192.168.10.200 kernel: [706824.240000] ath: phy0: Set HW Key Aug 31 15:58:51 192.168.10.200 kernel: [706824.240000] ath: phy0: Set HW Key Aug 31 15:58:56 192.168.10.200 kernel: [706836.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 15:59:01 192.168.10.200 kernel: [706836.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:59:26 192.168.10.200 kernel: [706866.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:59:31 192.168.10.200 kernel: [706866.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:59:46 192.168.10.200 kernel: [706884.160000] ath: phy0: missed 1 consecutive beacons Aug 31 15:59:51 192.168.10.200 kernel: [706884.250000] ath: phy0: resume beacon xmit after 1 misses Aug 31 15:59:56 192.168.10.200 kernel: [706896.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:00:01 192.168.10.200 kernel: [706896.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:00:20 192.168.10.200 kernel: [706920.710000] ath: phy0: missed 1 consecutive beacons Aug 31 16:00:25 192.168.10.200 kernel: [706920.800000] ath: phy0: resume beacon xmit after 1 misses Aug 31 16:00:30 192.168.10.200 kernel: [706926.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:00:36 192.168.10.200 kernel: [706926.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 16:00:56 192.168.10.200 kernel: [706956.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:01:01 192.168.10.200 kernel: [706956.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:01:26 192.168.10.200 kernel: [706986.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 16:01:31 192.168.10.200 kernel: [706986.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:01:55 192.168.10.200 kernel: [707015.330000] ath: phy0: missed 1 consecutive beacons Aug 31 16:02:00 192.168.10.200 kernel: [707015.420000] ath: phy0: resume beacon xmit after 1 misses Aug 31 16:02:05 192.168.10.200 kernel: [707016.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 16:02:10 192.168.10.200 kernel: [707016.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:02:35 192.168.10.200 kernel: [707046.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 16:02:41 192.168.10.200 kernel: [707046.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:02:56 192.168.10.200 kernel: [707076.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:03:01 192.168.10.200 kernel: [707076.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 16:03:26 192.168.10.200 kernel: [707106.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:03:31 192.168.10.200 kernel: [707106.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 16:03:56 192.168.10.200 kernel: [707136.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 16:04:01 192.168.10.200 kernel: [707136.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:04:26 192.168.10.200 kernel: [707166.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:04:31 192.168.10.200 kernel: [707166.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 16:04:56 192.168.10.200 kernel: [707196.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:05:01 192.168.10.200 kernel: [707196.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 16:05:26 192.168.10.200 kernel: [707226.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 16:05:31 192.168.10.200 kernel: [707226.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:05:56 192.168.10.200 kernel: [707256.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:06:01 192.168.10.200 kernel: [707256.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:06:26 192.168.10.200 kernel: [707286.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:06:31 192.168.10.200 kernel: [707286.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:06:56 192.168.10.200 kernel: [707316.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:07:01 192.168.10.200 kernel: [707316.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:07:26 192.168.10.200 kernel: [707346.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 16:07:31 192.168.10.200 kernel: [707346.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:07:56 192.168.10.200 kernel: [707376.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:08:01 192.168.10.200 kernel: [707376.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 16:08:26 192.168.10.200 kernel: [707406.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:08:31 192.168.10.200 kernel: [707406.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 16:08:57 192.168.10.200 kernel: [707424.240000] ath: phy0: Set HW Key Aug 31 16:09:02 192.168.10.200 kernel: [707424.240000] ath: phy0: Set HW Key Aug 31 16:09:07 192.168.10.200 kernel: [707436.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:09:12 192.168.10.200 kernel: [707436.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:09:17 192.168.10.200 kernel: [707436.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:09:22 192.168.10.200 kernel: [707436.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:09:37 192.168.10.200 kernel: [707466.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:09:42 192.168.10.200 kernel: [707466.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:09:47 192.168.10.200 kernel: [707466.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:09:52 192.168.10.200 kernel: [707466.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:10:08 192.168.10.200 kernel: [707496.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:10:13 192.168.10.200 kernel: [707496.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:10:18 192.168.10.200 kernel: [707496.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:10:23 192.168.10.200 kernel: [707496.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:10:48 192.168.10.200 kernel: [707526.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:10:53 192.168.10.200 kernel: [707526.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:10:58 192.168.10.200 kernel: [707526.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:11:03 192.168.10.200 kernel: [707526.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:11:08 192.168.10.200 kernel: [707527.810000] ath: phy0: Resetting Cal 1 state for channel 2462 Aug 31 16:11:13 192.168.10.200 kernel: [707527.910000] ath: phy0: starting IQ Mismatch Calibration Aug 31 16:11:19 192.168.10.200 kernel: [707528.010000] ath: phy0: 0: Chn 0 pmi=0x00000000;pmq=0x00000000;iqcm=0x00000000; Aug 31 16:11:24 192.168.10.200 kernel: [707528.010000] ath: phy0: Starting IQ Cal and Correction for Chain 0 Aug 31 16:11:29 192.168.10.200 kernel: [707528.010000] ath: phy0: Original: Chn 0 iq_corr_meas = 0x00000000 Aug 31 16:11:34 192.168.10.200 kernel: [707528.010000] ath: phy0: Chn 0 pwr_meas_i = 0x00000000 Aug 31 16:11:39 192.168.10.200 kernel: [707528.010000] ath: phy0: Chn 0 pwr_meas_q = 0x00000000 Aug 31 16:11:44 192.168.10.200 kernel: [707528.010000] ath: phy0: iqCorrNeg is 0x00000000 Aug 31 16:11:49 192.168.10.200 kernel: [707528.010000] ath: phy0: IQ Cal and Correction (offset 0x98dc) enabled (bit position 0x00004000). New Value 0x20007d00 Aug 31 16:13:00 192.168.10.200 kernel: [707556.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:13:05 192.168.10.200 kernel: [707556.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:13:10 192.168.10.200 kernel: [707556.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:13:15 192.168.10.200 kernel: [707556.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:13:30 192.168.10.200 kernel: [707586.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:13:35 192.168.10.200 kernel: [707586.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:13:40 192.168.10.200 kernel: [707586.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:13:46 192.168.10.200 kernel: [707586.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:14:01 192.168.10.200 kernel: [707616.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:14:06 192.168.10.200 kernel: [707616.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:14:11 192.168.10.200 kernel: [707616.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:14:16 192.168.10.200 kernel: [707616.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:14:31 192.168.10.200 kernel: [707646.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:14:36 192.168.10.200 kernel: [707646.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:14:41 192.168.10.200 kernel: [707646.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:14:46 192.168.10.200 kernel: [707646.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:15:02 192.168.10.200 kernel: [707676.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:15:07 192.168.10.200 kernel: [707676.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:15:12 192.168.10.200 kernel: [707676.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:15:17 192.168.10.200 kernel: [707676.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:15:32 192.168.10.200 kernel: [707706.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:15:37 192.168.10.200 kernel: [707706.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:15:42 192.168.10.200 kernel: [707706.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:15:47 192.168.10.200 kernel: [707706.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:16:02 192.168.10.200 kernel: [707736.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:16:07 192.168.10.200 kernel: [707736.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:16:13 192.168.10.200 kernel: [707736.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:16:18 192.168.10.200 kernel: [707736.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:16:33 192.168.10.200 kernel: [707766.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:16:38 192.168.10.200 kernel: [707766.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:16:43 192.168.10.200 kernel: [707766.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:16:48 192.168.10.200 kernel: [707766.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:17:03 192.168.10.200 kernel: [707796.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:17:08 192.168.10.200 kernel: [707796.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:17:13 192.168.10.200 kernel: [707796.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:17:18 192.168.10.200 kernel: [707796.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:17:34 192.168.10.200 kernel: [707826.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:17:39 192.168.10.200 kernel: [707826.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:17:44 192.168.10.200 kernel: [707826.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:17:49 192.168.10.200 kernel: [707826.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:18:04 192.168.10.200 kernel: [707856.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:18:09 192.168.10.200 kernel: [707856.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:18:14 192.168.10.200 kernel: [707856.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:18:19 192.168.10.200 kernel: [707856.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:18:34 192.168.10.200 kernel: [707886.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:18:39 192.168.10.200 kernel: [707886.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:18:45 192.168.10.200 kernel: [707886.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:18:50 192.168.10.200 kernel: [707886.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:19:05 192.168.10.200 kernel: [707916.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:19:10 192.168.10.200 kernel: [707916.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:19:15 192.168.10.200 kernel: [707916.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:19:20 192.168.10.200 kernel: [707916.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:19:45 192.168.10.200 kernel: [707946.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:19:50 192.168.10.200 kernel: [707946.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:19:55 192.168.10.200 kernel: [707946.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:20:01 192.168.10.200 kernel: [707946.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:20:26 192.168.10.200 kernel: [707976.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:20:31 192.168.10.200 kernel: [707976.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:20:36 192.168.10.200 kernel: [707976.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:20:41 192.168.10.200 kernel: [707976.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:20:56 192.168.10.200 kernel: [708006.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:21:01 192.168.10.200 kernel: [708006.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:21:06 192.168.10.200 kernel: [708006.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:21:11 192.168.10.200 kernel: [708006.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:21:27 192.168.10.200 kernel: [708024.250000] ath: phy0: Set HW Key Aug 31 16:21:32 192.168.10.200 kernel: [708024.250000] ath: phy0: Set HW Key Aug 31 16:21:37 192.168.10.200 kernel: [708036.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:21:42 192.168.10.200 kernel: [708036.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:21:47 192.168.10.200 kernel: [708036.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:21:52 192.168.10.200 kernel: [708036.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:22:17 192.168.10.200 kernel: [708066.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:22:22 192.168.10.200 kernel: [708066.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:22:27 192.168.10.200 kernel: [708066.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:22:33 192.168.10.200 kernel: [708066.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:22:58 192.168.10.200 kernel: [708096.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:23:03 192.168.10.200 kernel: [708096.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:23:08 192.168.10.200 kernel: [708096.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:23:13 192.168.10.200 kernel: [708096.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:23:28 192.168.10.200 kernel: [708126.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:23:33 192.168.10.200 kernel: [708126.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:23:38 192.168.10.200 kernel: [708126.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:23:43 192.168.10.200 kernel: [708126.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:23:59 192.168.10.200 kernel: [708156.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:24:04 192.168.10.200 kernel: [708156.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:24:09 192.168.10.200 kernel: [708156.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:24:14 192.168.10.200 kernel: [708156.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:24:29 192.168.10.200 kernel: [708186.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:24:34 192.168.10.200 kernel: [708186.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:24:39 192.168.10.200 kernel: [708186.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:24:44 192.168.10.200 kernel: [708186.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:24:59 192.168.10.200 kernel: [708216.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:25:05 192.168.10.200 kernel: [708216.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:25:10 192.168.10.200 kernel: [708216.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:25:15 192.168.10.200 kernel: [708216.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:25:30 192.168.10.200 kernel: [708246.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:25:35 192.168.10.200 kernel: [708246.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:25:40 192.168.10.200 kernel: [708246.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:25:45 192.168.10.200 kernel: [708246.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:26:00 192.168.10.200 kernel: [708276.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:26:05 192.168.10.200 kernel: [708276.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:26:10 192.168.10.200 kernel: [708276.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:26:16 192.168.10.200 kernel: [708276.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:26:31 192.168.10.200 kernel: [708306.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:26:36 192.168.10.200 kernel: [708306.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:26:41 192.168.10.200 kernel: [708306.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:26:46 192.168.10.200 kernel: [708306.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:27:01 192.168.10.200 kernel: [708336.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:27:06 192.168.10.200 kernel: [708336.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:27:11 192.168.10.200 kernel: [708336.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:27:16 192.168.10.200 kernel: [708336.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:27:31 192.168.10.200 kernel: [708366.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:27:37 192.168.10.200 kernel: [708366.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:27:42 192.168.10.200 kernel: [708366.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:27:47 192.168.10.200 kernel: [708366.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:28:02 192.168.10.200 kernel: [708396.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:28:07 192.168.10.200 kernel: [708396.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:28:12 192.168.10.200 kernel: [708396.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:28:17 192.168.10.200 kernel: [708396.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:28:32 192.168.10.200 kernel: [708426.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:28:37 192.168.10.200 kernel: [708426.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:28:42 192.168.10.200 kernel: [708426.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:28:47 192.168.10.200 kernel: [708426.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:29:03 192.168.10.200 kernel: [708456.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:29:08 192.168.10.200 kernel: [708456.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:29:13 192.168.10.200 kernel: [708456.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:29:18 192.168.10.200 kernel: [708456.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:29:33 192.168.10.200 kernel: [708486.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:29:38 192.168.10.200 kernel: [708486.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:29:43 192.168.10.200 kernel: [708486.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:29:48 192.168.10.200 kernel: [708486.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:30:03 192.168.10.200 kernel: [708516.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:30:09 192.168.10.200 kernel: [708516.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:30:14 192.168.10.200 kernel: [708516.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:30:19 192.168.10.200 kernel: [708516.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:30:44 192.168.10.200 kernel: [708546.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:30:49 192.168.10.200 kernel: [708546.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:30:54 192.168.10.200 kernel: [708546.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:30:59 192.168.10.200 kernel: [708546.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:31:14 192.168.10.200 kernel: [708576.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:31:19 192.168.10.200 kernel: [708576.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:31:25 192.168.10.200 kernel: [708576.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:31:30 192.168.10.200 kernel: [708576.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:31:45 192.168.10.200 kernel: [708606.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:31:50 192.168.10.200 kernel: [708606.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:31:55 192.168.10.200 kernel: [708606.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:32:00 192.168.10.200 kernel: [708606.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:32:15 192.168.10.200 kernel: [708624.250000] ath: phy0: Set HW Key Aug 31 16:32:20 192.168.10.200 kernel: [708624.250000] ath: phy0: Set HW Key Aug 31 16:32:25 192.168.10.200 kernel: [708636.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:32:30 192.168.10.200 kernel: [708636.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:32:35 192.168.10.200 kernel: [708636.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:32:41 192.168.10.200 kernel: [708636.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:32:56 192.168.10.200 kernel: [708666.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:33:01 192.168.10.200 kernel: [708666.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:33:06 192.168.10.200 kernel: [708666.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:33:11 192.168.10.200 kernel: [708666.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:33:26 192.168.10.200 kernel: [708696.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:33:31 192.168.10.200 kernel: [708696.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:33:36 192.168.10.200 kernel: [708696.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:33:41 192.168.10.200 kernel: [708696.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:33:57 192.168.10.200 kernel: [708726.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:34:02 192.168.10.200 kernel: [708726.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:34:07 192.168.10.200 kernel: [708726.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:34:12 192.168.10.200 kernel: [708726.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:34:17 192.168.10.200 kernel: [708728.010000] ath: phy0: Resetting Cal 1 state for channel 2462 Aug 31 16:34:22 192.168.10.200 kernel: [708728.110000] ath: phy0: starting IQ Mismatch Calibration Aug 31 16:34:27 192.168.10.200 kernel: [708728.210000] ath: phy0: 0: Chn 0 pmi=0x00000000;pmq=0x00000000;iqcm=0x00000000; Aug 31 16:34:32 192.168.10.200 kernel: [708728.210000] ath: phy0: Starting IQ Cal and Correction for Chain 0 Aug 31 16:34:37 192.168.10.200 kernel: [708728.210000] ath: phy0: Original: Chn 0 iq_corr_meas = 0x00000000 Aug 31 16:34:42 192.168.10.200 kernel: [708728.210000] ath: phy0: Chn 0 pwr_meas_i = 0x00000000 Aug 31 16:34:47 192.168.10.200 kernel: [708728.210000] ath: phy0: Chn 0 pwr_meas_q = 0x00000000 Aug 31 16:34:52 192.168.10.200 kernel: [708728.210000] ath: phy0: iqCorrNeg is 0x00000000 Aug 31 16:34:57 192.168.10.200 kernel: [708728.210000] ath: phy0: IQ Cal and Correction (offset 0x98dc) enabled (bit position 0x00004000). New Value 0x20007d00 [...] Sep 2 21:52:46 192.168.10.200 kernel: [899346.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Sep 2 21:52:51 192.168.10.200 kernel: [899346.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Sep 2 21:53:06 192.168.10.200 kernel: [899376.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Sep 2 21:53:11 192.168.10.200 kernel: [899376.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Sep 2 21:53:16 192.168.10.200 kernel: [899376.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Sep 2 21:53:21 192.168.10.200 kernel: [899376.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Sep 2 21:53:37 192.168.10.200 kernel: [899406.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Sep 2 21:53:42 192.168.10.200 kernel: [899406.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Sep 2 21:53:47 192.168.10.200 kernel: [899406.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Sep 2 21:53:52 192.168.10.200 kernel: [899406.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Sep 2 21:53:57 192.168.10.200 kernel: [899426.250000] ath: phy0: Set HW Key Sep 2 21:54:02 192.168.10.200 kernel: [899426.260000] ath: phy0: Set HW Key Sep 2 21:54:17 192.168.10.200 kernel: [899436.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Sep 2 21:54:22 192.168.10.200 kernel: [899436.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Sep 2 21:54:37 192.168.10.200 kernel: [899466.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Sep 2 21:54:43 192.168.10.200 kernel: [899466.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Sep 2 21:54:48 192.168.10.200 kernel: [899466.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Sep 2 21:54:53 192.168.10.200 kernel: [899466.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX
=== router 201 ===
root@OpenWrt:/sys/kernel/debug/ieee80211/phy0/ath9k# head regdump 0x000000 0xdeadbeef 0x000004 0xdeadbeef 0x000008 0xdeadbeef 0x00000c 0xdeadbeef 0x000010 0xdeadbeef 0x000014 0xdeadbeef 0x000018 0xdeadbeef 0x00001c 0xdeadbeef 0x000020 0xdeadbeef 0x000024 0xdeadbeef
root@OpenWrt:/sys/kernel/debug/ieee80211/phy0/ath9k# uptime 10:20:54 up 10 days, 10:20, load average: 0.18, 0.19, 0.21
# dmesg [...] [900132.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900162.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900162.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900192.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900192.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900197.470000] ath: phy0: missed 1 consecutive beacons [900197.560000] ath: phy0: resume beacon xmit after 1 misses [900222.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900222.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900252.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900252.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900275.910000] ath: phy0: missed 1 consecutive beacons [900276.000000] ath: phy0: resume beacon xmit after 1 misses [900282.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900282.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900303.560000] ath: phy0: missed 1 consecutive beacons [900303.650000] ath: phy0: resume beacon xmit after 1 misses [900312.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900312.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900342.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900342.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900372.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900372.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900402.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900402.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900432.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900432.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900462.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900462.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900492.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900492.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900522.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900522.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900552.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -103 [900552.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900582.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900582.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900582.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900582.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900612.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900612.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900612.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900612.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900625.220000] ath: phy0: Set HW Key [900625.220000] ath: phy0: Set HW Key [900642.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900642.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900642.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900642.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900672.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900672.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900672.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900672.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900702.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900702.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900702.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900702.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900732.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900732.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900732.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900732.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900762.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900762.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900762.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900762.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900792.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900792.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900792.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900792.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900822.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900822.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900822.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900822.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900852.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900852.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900852.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900852.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900882.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900882.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900882.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900882.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900912.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900912.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900912.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900912.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900942.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900942.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900942.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900942.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900969.460000] ath: phy0: Resetting Cal 1 state for channel 2462 [900969.560000] ath: phy0: starting IQ Mismatch Calibration [900969.660000] ath: phy0: 0: Chn 0 pmi=0x00000000;pmq=0x00000000;iqcm=0x00000000; [900969.660000] ath: phy0: Starting IQ Cal and Correction for Chain 0 [900969.660000] ath: phy0: Original: Chn 0 iq_corr_meas = 0x00000000 [900969.660000] ath: phy0: Chn 0 pwr_meas_i = 0x00000000 [900969.660000] ath: phy0: Chn 0 pwr_meas_q = 0x00000000 [900969.660000] ath: phy0: iqCorrNeg is 0x00000000 [900969.660000] ath: phy0: IQ Cal and Correction (offset 0x98dc) enabled (bit position 0x00004000). New Value 0x20007f7b [900972.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900972.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900972.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900972.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [901002.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [901002.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [901002.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [901002.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [901032.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [901032.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [901032.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [901032.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [901062.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [901062.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [901062.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [901062.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [901092.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [901092.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [901092.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [901092.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [901122.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [901122.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [901122.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [901122.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [901152.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [901152.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [901152.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [901152.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX
Quoted 375 lines · Simon Wunderlich
Hey guys,
now, finally after approx. 9 days the problem hit us again, this time with debug enabled.
The symptoms are the same as described before. I'm pasting part of the syslog of routers 200 and 201 where the calibrating output changes - this is the only thing I could find which was really different from before.
Unfortunately I can't take anything useful out of the logs - to me, it looks like the 'NF calibrated' output changes out of the blue. I can provide full log files to anyone interested.
Debug level was:
# cat /sys/kernel/debug/ieee80211/phy0/ath9k/debug 0x000ffe2dAny ideas? The routers are still on and reachable in this errorneous state, so I can check for more things. :)
Thanks,
Simon=== router 200 ===
root at OpenWrt:/sys/kernel/debug/ieee80211/phy0/ath9k# head regdump0x0000000xdeadbeef0x0000040xdeadbeef0x0000080xdeadbeef0x00000c0xdeadbeef0x0000100xdeadbeef0x0000140xdeadbeef0x0000180xdeadbeef0x00001c0xdeadbeef0x0000200xdeadbeef0x0000240xdeadbeefAug 31 15:48:56 192.168.10.200 kernel: [706236.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:49:01 192.168.10.200 kernel: [706236.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:49:25 192.168.10.200 kernel: [706266.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:49:31 192.168.10.200 kernel: [706266.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:49:55 192.168.10.200 kernel: [706296.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:50:01 192.168.10.200 kernel: [706296.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:51:22 192.168.10.200 kernel: [706309.810000] ath: phy0: Resetting Cal 1 state for channel 2462 Aug 31 15:51:27 192.168.10.200 kernel: [706309.910000] ath: phy0: starting IQ Mismatch Calibration Aug 31 15:51:32 192.168.10.200 kernel: [706326.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:51:37 192.168.10.200 kernel: [706326.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:51:42 192.168.10.200 kernel: [706327.810000] ath: phy0: 0: Chn 0 pmi=0x0389beb7;pmq=0x03853165;iqcm=0x0015ca84; Aug 31 15:51:47 192.168.10.200 kernel: [706327.810000] ath: phy0: Starting IQ Cal and Correction for Chain 0 Aug 31 15:51:52 192.168.10.200 kernel: [706327.810000] ath: phy0: Original: Chn 0 iq_corr_meas = 0x0015ca84 Aug 31 15:51:57 192.168.10.200 kernel: [706327.810000] ath: phy0: Chn 0 pwr_meas_i = 0x0389beb7 Aug 31 15:52:02 192.168.10.200 kernel: [706327.810000] ath: phy0: Chn 0 pwr_meas_q = 0x03853165 Aug 31 15:52:07 192.168.10.200 kernel: [706327.810000] ath: phy0: iqCorrNeg is 0x00000000 Aug 31 15:52:12 192.168.10.200 kernel: [706327.810000] ath: phy0: Chn 0 iCoff = 0x00000006 Aug 31 15:52:17 192.168.10.200 kernel: [706327.810000] ath: phy0: Chn 0 qCoff = 0x00000000 Aug 31 15:52:22 192.168.10.200 kernel: [706327.810000] ath: phy0: Chn 0 : iCoff = 0x7a qCoff = 0x0 Aug 31 15:52:28 192.168.10.200 kernel: [706327.810000] ath: phy0: Register offset (0x98dc) before update = 0x20007e01 Aug 31 15:52:33 192.168.10.200 kernel: [706327.810000] ath: phy0: Register offset (0x98dc) QI COFF (bitfields 0x00003f80) after update = 0x20007d00 Aug 31 15:52:48 192.168.10.200 kernel: [706356.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:52:53 192.168.10.200 kernel: [706356.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:53:08 192.168.10.200 kernel: [706386.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:53:13 192.168.10.200 kernel: [706386.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:53:28 192.168.10.200 kernel: [706416.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 15:53:33 192.168.10.200 kernel: [706416.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:53:49 192.168.10.200 kernel: [706446.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:53:54 192.168.10.200 kernel: [706446.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:54:09 192.168.10.200 kernel: [706476.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:54:14 192.168.10.200 kernel: [706476.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:54:29 192.168.10.200 kernel: [706506.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:54:34 192.168.10.200 kernel: [706506.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:54:50 192.168.10.200 kernel: [706536.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:54:55 192.168.10.200 kernel: [706536.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:55:10 192.168.10.200 kernel: [706566.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:55:15 192.168.10.200 kernel: [706566.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:55:30 192.168.10.200 kernel: [706596.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 15:55:35 192.168.10.200 kernel: [706596.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:55:50 192.168.10.200 kernel: [706626.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:55:55 192.168.10.200 kernel: [706626.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:56:11 192.168.10.200 kernel: [706656.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:56:16 192.168.10.200 kernel: [706656.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:56:31 192.168.10.200 kernel: [706686.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:56:36 192.168.10.200 kernel: [706686.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:56:56 192.168.10.200 kernel: [706716.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 15:57:01 192.168.10.200 kernel: [706716.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:57:26 192.168.10.200 kernel: [706746.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 15:57:31 192.168.10.200 kernel: [706746.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:57:56 192.168.10.200 kernel: [706776.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 15:58:01 192.168.10.200 kernel: [706776.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 15:58:26 192.168.10.200 kernel: [706806.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:58:31 192.168.10.200 kernel: [706806.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:58:46 192.168.10.200 kernel: [706824.240000] ath: phy0: Set HW Key Aug 31 15:58:51 192.168.10.200 kernel: [706824.240000] ath: phy0: Set HW Key Aug 31 15:58:56 192.168.10.200 kernel: [706836.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 15:59:01 192.168.10.200 kernel: [706836.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:59:26 192.168.10.200 kernel: [706866.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 15:59:31 192.168.10.200 kernel: [706866.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 15:59:46 192.168.10.200 kernel: [706884.160000] ath: phy0: missed 1 consecutive beacons Aug 31 15:59:51 192.168.10.200 kernel: [706884.250000] ath: phy0: resume beacon xmit after 1 misses Aug 31 15:59:56 192.168.10.200 kernel: [706896.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:00:01 192.168.10.200 kernel: [706896.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:00:20 192.168.10.200 kernel: [706920.710000] ath: phy0: missed 1 consecutive beacons Aug 31 16:00:25 192.168.10.200 kernel: [706920.800000] ath: phy0: resume beacon xmit after 1 misses Aug 31 16:00:30 192.168.10.200 kernel: [706926.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:00:36 192.168.10.200 kernel: [706926.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 16:00:56 192.168.10.200 kernel: [706956.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:01:01 192.168.10.200 kernel: [706956.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:01:26 192.168.10.200 kernel: [706986.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 16:01:31 192.168.10.200 kernel: [706986.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:01:55 192.168.10.200 kernel: [707015.330000] ath: phy0: missed 1 consecutive beacons Aug 31 16:02:00 192.168.10.200 kernel: [707015.420000] ath: phy0: resume beacon xmit after 1 misses Aug 31 16:02:05 192.168.10.200 kernel: [707016.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 16:02:10 192.168.10.200 kernel: [707016.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:02:35 192.168.10.200 kernel: [707046.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 16:02:41 192.168.10.200 kernel: [707046.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:02:56 192.168.10.200 kernel: [707076.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:03:01 192.168.10.200 kernel: [707076.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 16:03:26 192.168.10.200 kernel: [707106.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:03:31 192.168.10.200 kernel: [707106.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 16:03:56 192.168.10.200 kernel: [707136.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 16:04:01 192.168.10.200 kernel: [707136.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:04:26 192.168.10.200 kernel: [707166.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:04:31 192.168.10.200 kernel: [707166.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 16:04:56 192.168.10.200 kernel: [707196.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:05:01 192.168.10.200 kernel: [707196.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 16:05:26 192.168.10.200 kernel: [707226.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 16:05:31 192.168.10.200 kernel: [707226.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:05:56 192.168.10.200 kernel: [707256.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:06:01 192.168.10.200 kernel: [707256.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:06:26 192.168.10.200 kernel: [707286.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:06:31 192.168.10.200 kernel: [707286.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:06:56 192.168.10.200 kernel: [707316.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:07:01 192.168.10.200 kernel: [707316.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:07:26 192.168.10.200 kernel: [707346.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 Aug 31 16:07:31 192.168.10.200 kernel: [707346.110000] ath: phy0: NF calibrated [ext] [chain 0] is -104 Aug 31 16:07:56 192.168.10.200 kernel: [707376.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:08:01 192.168.10.200 kernel: [707376.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 16:08:26 192.168.10.200 kernel: [707406.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -105 Aug 31 16:08:31 192.168.10.200 kernel: [707406.110000] ath: phy0: NF calibrated [ext] [chain 0] is -105 Aug 31 16:08:57 192.168.10.200 kernel: [707424.240000] ath: phy0: Set HW Key Aug 31 16:09:02 192.168.10.200 kernel: [707424.240000] ath: phy0: Set HW Key Aug 31 16:09:07 192.168.10.200 kernel: [707436.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:09:12 192.168.10.200 kernel: [707436.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:09:17 192.168.10.200 kernel: [707436.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:09:22 192.168.10.200 kernel: [707436.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:09:37 192.168.10.200 kernel: [707466.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:09:42 192.168.10.200 kernel: [707466.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:09:47 192.168.10.200 kernel: [707466.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:09:52 192.168.10.200 kernel: [707466.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:10:08 192.168.10.200 kernel: [707496.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:10:13 192.168.10.200 kernel: [707496.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:10:18 192.168.10.200 kernel: [707496.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:10:23 192.168.10.200 kernel: [707496.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:10:48 192.168.10.200 kernel: [707526.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:10:53 192.168.10.200 kernel: [707526.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:10:58 192.168.10.200 kernel: [707526.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:11:03 192.168.10.200 kernel: [707526.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:11:08 192.168.10.200 kernel: [707527.810000] ath: phy0: Resetting Cal 1 state for channel 2462 Aug 31 16:11:13 192.168.10.200 kernel: [707527.910000] ath: phy0: starting IQ Mismatch Calibration Aug 31 16:11:19 192.168.10.200 kernel: [707528.010000] ath: phy0: 0: Chn 0 pmi=0x00000000;pmq=0x00000000;iqcm=0x00000000; Aug 31 16:11:24 192.168.10.200 kernel: [707528.010000] ath: phy0: Starting IQ Cal and Correction for Chain 0 Aug 31 16:11:29 192.168.10.200 kernel: [707528.010000] ath: phy0: Original: Chn 0 iq_corr_meas = 0x00000000 Aug 31 16:11:34 192.168.10.200 kernel: [707528.010000] ath: phy0: Chn 0 pwr_meas_i = 0x00000000 Aug 31 16:11:39 192.168.10.200 kernel: [707528.010000] ath: phy0: Chn 0 pwr_meas_q = 0x00000000 Aug 31 16:11:44 192.168.10.200 kernel: [707528.010000] ath: phy0: iqCorrNeg is 0x00000000 Aug 31 16:11:49 192.168.10.200 kernel: [707528.010000] ath: phy0: IQ Cal and Correction (offset 0x98dc) enabled (bit position 0x00004000). New Value 0x20007d00 Aug 31 16:13:00 192.168.10.200 kernel: [707556.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:13:05 192.168.10.200 kernel: [707556.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:13:10 192.168.10.200 kernel: [707556.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:13:15 192.168.10.200 kernel: [707556.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:13:30 192.168.10.200 kernel: [707586.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:13:35 192.168.10.200 kernel: [707586.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:13:40 192.168.10.200 kernel: [707586.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:13:46 192.168.10.200 kernel: [707586.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:14:01 192.168.10.200 kernel: [707616.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:14:06 192.168.10.200 kernel: [707616.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:14:11 192.168.10.200 kernel: [707616.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:14:16 192.168.10.200 kernel: [707616.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:14:31 192.168.10.200 kernel: [707646.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:14:36 192.168.10.200 kernel: [707646.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:14:41 192.168.10.200 kernel: [707646.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:14:46 192.168.10.200 kernel: [707646.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:15:02 192.168.10.200 kernel: [707676.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:15:07 192.168.10.200 kernel: [707676.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:15:12 192.168.10.200 kernel: [707676.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:15:17 192.168.10.200 kernel: [707676.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:15:32 192.168.10.200 kernel: [707706.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:15:37 192.168.10.200 kernel: [707706.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:15:42 192.168.10.200 kernel: [707706.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:15:47 192.168.10.200 kernel: [707706.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:16:02 192.168.10.200 kernel: [707736.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:16:07 192.168.10.200 kernel: [707736.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:16:13 192.168.10.200 kernel: [707736.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:16:18 192.168.10.200 kernel: [707736.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:16:33 192.168.10.200 kernel: [707766.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:16:38 192.168.10.200 kernel: [707766.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:16:43 192.168.10.200 kernel: [707766.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:16:48 192.168.10.200 kernel: [707766.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:17:03 192.168.10.200 kernel: [707796.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:17:08 192.168.10.200 kernel: [707796.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:17:13 192.168.10.200 kernel: [707796.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:17:18 192.168.10.200 kernel: [707796.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:17:34 192.168.10.200 kernel: [707826.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:17:39 192.168.10.200 kernel: [707826.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:17:44 192.168.10.200 kernel: [707826.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:17:49 192.168.10.200 kernel: [707826.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:18:04 192.168.10.200 kernel: [707856.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:18:09 192.168.10.200 kernel: [707856.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:18:14 192.168.10.200 kernel: [707856.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:18:19 192.168.10.200 kernel: [707856.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:18:34 192.168.10.200 kernel: [707886.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:18:39 192.168.10.200 kernel: [707886.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:18:45 192.168.10.200 kernel: [707886.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:18:50 192.168.10.200 kernel: [707886.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:19:05 192.168.10.200 kernel: [707916.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:19:10 192.168.10.200 kernel: [707916.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:19:15 192.168.10.200 kernel: [707916.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:19:20 192.168.10.200 kernel: [707916.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:19:45 192.168.10.200 kernel: [707946.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:19:50 192.168.10.200 kernel: [707946.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:19:55 192.168.10.200 kernel: [707946.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:20:01 192.168.10.200 kernel: [707946.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:20:26 192.168.10.200 kernel: [707976.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:20:31 192.168.10.200 kernel: [707976.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:20:36 192.168.10.200 kernel: [707976.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:20:41 192.168.10.200 kernel: [707976.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:20:56 192.168.10.200 kernel: [708006.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:21:01 192.168.10.200 kernel: [708006.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:21:06 192.168.10.200 kernel: [708006.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:21:11 192.168.10.200 kernel: [708006.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:21:27 192.168.10.200 kernel: [708024.250000] ath: phy0: Set HW Key Aug 31 16:21:32 192.168.10.200 kernel: [708024.250000] ath: phy0: Set HW Key Aug 31 16:21:37 192.168.10.200 kernel: [708036.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:21:42 192.168.10.200 kernel: [708036.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:21:47 192.168.10.200 kernel: [708036.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:21:52 192.168.10.200 kernel: [708036.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:22:17 192.168.10.200 kernel: [708066.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:22:22 192.168.10.200 kernel: [708066.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:22:27 192.168.10.200 kernel: [708066.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:22:33 192.168.10.200 kernel: [708066.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:22:58 192.168.10.200 kernel: [708096.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:23:03 192.168.10.200 kernel: [708096.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:23:08 192.168.10.200 kernel: [708096.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:23:13 192.168.10.200 kernel: [708096.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:23:28 192.168.10.200 kernel: [708126.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:23:33 192.168.10.200 kernel: [708126.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:23:38 192.168.10.200 kernel: [708126.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:23:43 192.168.10.200 kernel: [708126.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:23:59 192.168.10.200 kernel: [708156.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:24:04 192.168.10.200 kernel: [708156.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:24:09 192.168.10.200 kernel: [708156.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:24:14 192.168.10.200 kernel: [708156.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:24:29 192.168.10.200 kernel: [708186.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:24:34 192.168.10.200 kernel: [708186.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:24:39 192.168.10.200 kernel: [708186.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:24:44 192.168.10.200 kernel: [708186.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:24:59 192.168.10.200 kernel: [708216.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:25:05 192.168.10.200 kernel: [708216.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:25:10 192.168.10.200 kernel: [708216.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:25:15 192.168.10.200 kernel: [708216.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:25:30 192.168.10.200 kernel: [708246.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:25:35 192.168.10.200 kernel: [708246.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:25:40 192.168.10.200 kernel: [708246.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:25:45 192.168.10.200 kernel: [708246.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:26:00 192.168.10.200 kernel: [708276.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:26:05 192.168.10.200 kernel: [708276.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:26:10 192.168.10.200 kernel: [708276.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:26:16 192.168.10.200 kernel: [708276.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:26:31 192.168.10.200 kernel: [708306.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:26:36 192.168.10.200 kernel: [708306.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:26:41 192.168.10.200 kernel: [708306.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:26:46 192.168.10.200 kernel: [708306.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:27:01 192.168.10.200 kernel: [708336.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:27:06 192.168.10.200 kernel: [708336.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:27:11 192.168.10.200 kernel: [708336.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:27:16 192.168.10.200 kernel: [708336.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:27:31 192.168.10.200 kernel: [708366.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:27:37 192.168.10.200 kernel: [708366.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:27:42 192.168.10.200 kernel: [708366.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:27:47 192.168.10.200 kernel: [708366.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:28:02 192.168.10.200 kernel: [708396.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:28:07 192.168.10.200 kernel: [708396.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:28:12 192.168.10.200 kernel: [708396.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:28:17 192.168.10.200 kernel: [708396.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:28:32 192.168.10.200 kernel: [708426.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:28:37 192.168.10.200 kernel: [708426.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:28:42 192.168.10.200 kernel: [708426.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:28:47 192.168.10.200 kernel: [708426.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:29:03 192.168.10.200 kernel: [708456.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:29:08 192.168.10.200 kernel: [708456.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:29:13 192.168.10.200 kernel: [708456.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:29:18 192.168.10.200 kernel: [708456.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:29:33 192.168.10.200 kernel: [708486.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:29:38 192.168.10.200 kernel: [708486.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:29:43 192.168.10.200 kernel: [708486.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:29:48 192.168.10.200 kernel: [708486.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:30:03 192.168.10.200 kernel: [708516.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:30:09 192.168.10.200 kernel: [708516.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:30:14 192.168.10.200 kernel: [708516.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:30:19 192.168.10.200 kernel: [708516.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:30:44 192.168.10.200 kernel: [708546.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:30:49 192.168.10.200 kernel: [708546.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:30:54 192.168.10.200 kernel: [708546.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:30:59 192.168.10.200 kernel: [708546.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:31:14 192.168.10.200 kernel: [708576.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:31:19 192.168.10.200 kernel: [708576.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:31:25 192.168.10.200 kernel: [708576.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:31:30 192.168.10.200 kernel: [708576.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:31:45 192.168.10.200 kernel: [708606.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:31:50 192.168.10.200 kernel: [708606.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:31:55 192.168.10.200 kernel: [708606.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:32:00 192.168.10.200 kernel: [708606.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:32:15 192.168.10.200 kernel: [708624.250000] ath: phy0: Set HW Key Aug 31 16:32:20 192.168.10.200 kernel: [708624.250000] ath: phy0: Set HW Key Aug 31 16:32:25 192.168.10.200 kernel: [708636.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:32:30 192.168.10.200 kernel: [708636.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:32:35 192.168.10.200 kernel: [708636.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:32:41 192.168.10.200 kernel: [708636.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:32:56 192.168.10.200 kernel: [708666.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:33:01 192.168.10.200 kernel: [708666.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:33:06 192.168.10.200 kernel: [708666.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:33:11 192.168.10.200 kernel: [708666.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:33:26 192.168.10.200 kernel: [708696.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:33:31 192.168.10.200 kernel: [708696.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:33:36 192.168.10.200 kernel: [708696.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:33:41 192.168.10.200 kernel: [708696.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:33:57 192.168.10.200 kernel: [708726.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Aug 31 16:34:02 192.168.10.200 kernel: [708726.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Aug 31 16:34:07 192.168.10.200 kernel: [708726.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Aug 31 16:34:12 192.168.10.200 kernel: [708726.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Aug 31 16:34:17 192.168.10.200 kernel: [708728.010000] ath: phy0: Resetting Cal 1 state for channel 2462 Aug 31 16:34:22 192.168.10.200 kernel: [708728.110000] ath: phy0: starting IQ Mismatch Calibration Aug 31 16:34:27 192.168.10.200 kernel: [708728.210000] ath: phy0: 0: Chn 0 pmi=0x00000000;pmq=0x00000000;iqcm=0x00000000; Aug 31 16:34:32 192.168.10.200 kernel: [708728.210000] ath: phy0: Starting IQ Cal and Correction for Chain 0 Aug 31 16:34:37 192.168.10.200 kernel: [708728.210000] ath: phy0: Original: Chn 0 iq_corr_meas = 0x00000000 Aug 31 16:34:42 192.168.10.200 kernel: [708728.210000] ath: phy0: Chn 0 pwr_meas_i = 0x00000000 Aug 31 16:34:47 192.168.10.200 kernel: [708728.210000] ath: phy0: Chn 0 pwr_meas_q = 0x00000000 Aug 31 16:34:52 192.168.10.200 kernel: [708728.210000] ath: phy0: iqCorrNeg is 0x00000000 Aug 31 16:34:57 192.168.10.200 kernel: [708728.210000] ath: phy0: IQ Cal and Correction (offset 0x98dc) enabled (bit position 0x00004000). New Value 0x20007d00 [...] Sep 2 21:52:46 192.168.10.200 kernel: [899346.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Sep 2 21:52:51 192.168.10.200 kernel: [899346.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Sep 2 21:53:06 192.168.10.200 kernel: [899376.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Sep 2 21:53:11 192.168.10.200 kernel: [899376.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Sep 2 21:53:16 192.168.10.200 kernel: [899376.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Sep 2 21:53:21 192.168.10.200 kernel: [899376.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Sep 2 21:53:37 192.168.10.200 kernel: [899406.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Sep 2 21:53:42 192.168.10.200 kernel: [899406.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Sep 2 21:53:47 192.168.10.200 kernel: [899406.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Sep 2 21:53:52 192.168.10.200 kernel: [899406.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX Sep 2 21:53:57 192.168.10.200 kernel: [899426.250000] ath: phy0: Set HW Key Sep 2 21:54:02 192.168.10.200 kernel: [899426.260000] ath: phy0: Set HW Key Sep 2 21:54:17 192.168.10.200 kernel: [899436.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Sep 2 21:54:22 192.168.10.200 kernel: [899436.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Sep 2 21:54:37 192.168.10.200 kernel: [899466.110000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 Sep 2 21:54:43 192.168.10.200 kernel: [899466.110000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX Sep 2 21:54:48 192.168.10.200 kernel: [899466.110000] ath: phy0: NF calibrated [ext] [chain 0] is -45 Sep 2 21:54:53 192.168.10.200 kernel: [899466.110000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX=== router 201 ===
root at OpenWrt:/sys/kernel/debug/ieee80211/phy0/ath9k# head regdump0x0000000xdeadbeef0x0000040xdeadbeef0x0000080xdeadbeef0x00000c0xdeadbeef0x0000100xdeadbeef0x0000140xdeadbeef0x0000180xdeadbeef0x00001c0xdeadbeef0x0000200xdeadbeef0x0000240xdeadbeefroot at OpenWrt:/sys/kernel/debug/ieee80211/phy0/ath9k# uptime
10:20:54 up 10 days, 10:20, load average: 0.18, 0.19, 0.21
Quoted 14 lines
# dmesg [...] [900132.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900162.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900162.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900192.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900192.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900197.470000] ath: phy0: missed 1 consecutive beacons [900197.560000] ath: phy0: resume beacon xmit after 1 misses [900222.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900222.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900252.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900252.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900275.910000] ath: phy0: missed 1 consecutive beacons
seems we are getting beacon stuck, though its not sufficient for triggering chip reset (or) atleast start noise floor calibration. Is this is in a congested environment ? we can dump cycle counters . I think we need to have a WAR of chip reset if the cycle counters (busy is too high) inspite the MAC hang signature . let me try too to figure out that WAR is already available (or) we got to enable it.
Quoted 124 lines
[900276.000000] ath: phy0: resume beacon xmit after 1 misses [900282.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900282.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900303.560000] ath: phy0: missed 1 consecutive beacons [900303.650000] ath: phy0: resume beacon xmit after 1 misses [900312.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900312.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900342.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900342.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900372.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900372.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900402.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900402.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900432.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900432.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900462.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900462.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900492.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900492.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900522.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900522.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900552.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -103 [900552.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900582.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900582.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900582.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900582.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900612.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900612.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900612.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900612.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900625.220000] ath: phy0: Set HW Key [900625.220000] ath: phy0: Set HW Key [900642.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900642.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900642.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900642.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900672.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900672.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900672.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900672.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900702.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900702.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900702.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900702.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900732.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900732.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900732.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900732.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900762.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900762.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900762.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900762.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900792.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900792.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900792.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900792.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900822.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900822.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900822.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900822.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900852.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900852.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900852.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900852.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900882.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900882.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900882.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900882.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900912.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900912.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900912.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900912.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900942.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900942.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900942.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900942.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [900969.460000] ath: phy0: Resetting Cal 1 state for channel 2462 [900969.560000] ath: phy0: starting IQ Mismatch Calibration [900969.660000] ath: phy0: 0: Chn 0 pmi=0x00000000;pmq=0x00000000;iqcm=0x00000000; [900969.660000] ath: phy0: Starting IQ Cal and Correction for Chain 0 [900969.660000] ath: phy0: Original: Chn 0 iq_corr_meas = 0x00000000 [900969.660000] ath: phy0: Chn 0 pwr_meas_i = 0x00000000 [900969.660000] ath: phy0: Chn 0 pwr_meas_q = 0x00000000 [900969.660000] ath: phy0: iqCorrNeg is 0x00000000 [900969.660000] ath: phy0: IQ Cal and Correction (offset 0x98dc) enabled (bit position 0x00004000). New Value 0x20007f7b [900972.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [900972.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [900972.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [900972.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [901002.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [901002.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [901002.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [901002.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [901032.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [901032.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [901032.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [901032.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [901062.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [901062.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [901062.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [901062.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [901092.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [901092.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [901092.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [901092.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [901122.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [901122.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [901122.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [901122.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX [901152.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -45 [901152.160000] ath: phy0: NF[0] (-45) > MAX (-95), correcting to MAX [901152.160000] ath: phy0: NF calibrated [ext] [chain 0] is -45 [901152.160000] ath: phy0: NF[3] (-45) > MAX (-95), correcting to MAX-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)iEYEARECAAYFAlBDuv4ACgkQrzg/fFk7axZH5wCcCPfepF11qXP0ELPLnf+R1L57 v0AAoJ2xlpt6vKhbWO7hbHWzkMiJR8W6
=DRhA
-----END PGP SIGNATURE-----
Signature · 2 lines
thanks, shafi
Quoted 15 lines · On Monday 03 September 2012 19:23:26 Mohammed Shafi wrote:
Quoted 6 lines
# dmesg [...] [900132.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900162.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900162.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900192.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104Quoted 8 lines
[900192.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900197.470000] ath: phy0: missed 1 consecutive beacons [900197.560000] ath: phy0: resume beacon xmit after 1 misses [900222.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900222.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900252.160000] ath: phy0: NF calibrated [ctl] [chain 0] is -104 [900252.160000] ath: phy0: NF calibrated [ext] [chain 0] is -104 [900275.910000] ath: phy0: missed 1 consecutive beacons
Quoted 6 lines
seems we are getting beacon stuck, though its not sufficient for triggering chip reset (or) atleast start noise floor calibration. Is this is in a congested environment ? we can dump cycle counters . I think we need to have a WAR of chip reset if the cycle counters (busy is too high) inspite the MAC hang signature . let me try too to figure out that WAR is already available (or) we got to enable it.
The test environment is not really "congested". It is not in a city and you don't have many access points in range. Only 2/3 clients are using these two test access points. I don't know whether there are other things using the channel range also used by the access points.
Kind regards,
Sven
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
Url : http://lists.ath9k.org/pipermail/ath9k-devel/attachments/20120903/e0fdd5fd/attachment.pgp
Shafi,
Quoted 6 lines · Mohammed Shafi
seems we are getting beacon stuck, though its not sufficient for triggering chip reset (or) atleast start noise floor calibration. Is this is in a congested environment ? we can dump cycle counters . I think we need to have a WAR of chip reset if the cycle counters (busy is too high) inspite the MAC hang signature . let me try too to figure out that WAR is already available (or) we got to enable it.
I'm living at a small village, and one or two neighbors may have access points too, but that's it - this should be far from beeing busy. We mostly use these APs for surfing with smart phones, this is also far from congesting them. ;)
TBH I don't really understand what you are talking about regarding WAR, etc, can you please explain? What can we do to analyse the problem better?
Thanks,
Simon
Hi Simon/Sven,
Quoted 7 lines
I'm living at a small village, and one or two neighbors may have access points too, but that's it - this should be far from beeing busy. We mostly use these APs for surfing with smart phones, this is also far from congesting them. ;)
TBH I don't really understand what you are talking about regarding WAR, etc, can you please explain? What can we do to analyse the problem better?
work arounds(WAR) for beacon stuck in congested environment, there may be quite a few that may not be not yet ported for ath9k, but as your environment is not a congested, then the issue can be something different. Have not got much information/change list from the query posted internally.
Quoted 12 lines
Thanks,
Simon-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)iEYEARECAAYFAlBGNm8ACgkQrzg/fFk7axbuNwCg626AvtDTWoeaSrVGjB92XN+7 5tEAnAjEXI04gSS102VwlSKQqBHEPFyG
=9pIv
-----END PGP SIGNATURE-----
Signature · 2 lines
thanks, shafi
I don't think it's a stuck beacon WAR issue here; 0xdeadbeef really does read like the MAC has gone to sleep.
Where's the complete register dump hiding?
Adrian
Quoted 35 lines · Mohammed Shafi
Hi Simon/Sven,
Quoted 7 lines
I'm living at a small village, and one or two neighbors may have access points too, but that's it - this should be far from beeing busy. We mostly use these APs for surfing with smart phones, this is also far from congesting them. ;)
TBH I don't really understand what you are talking about regarding WAR, etc, can you please explain? What can we do to analyse the problem better?
work arounds(WAR) for beacon stuck in congested environment, there may be quite a few that may not be not yet ported for ath9k, but as your environment is not a congested, then the issue can be something different. Have not got much information/change list from the query posted internally.
Quoted 4 lines
Thanks,
SimonQuoted 8 lines
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)iEYEARECAAYFAlBGNm8ACgkQrzg/fFk7axbuNwCg626AvtDTWoeaSrVGjB92XN+7 5tEAnAjEXI04gSS102VwlSKQqBHEPFyG
=9pIv
-----END PGP SIGNATURE-------
thanks,
shafi
Quoted 4 lines · On Wednesday 05 September 2012 07:08:47 Adrian Chadd wrote:
I don't think it's a stuck beacon WAR issue here;
0xdeadbeefreally does read like the MAC has gone to sleep.Where's the complete register dump hiding?
It was not sent to the public mailing lists due to the size. You will receive the dump mentioned in the first mail in some minutes.
Kind regards,
Sven
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
Url : http://lists.ath9k.org/pipermail/ath9k-devel/attachments/20120905/e9d3186a/attachment.pgp
ath9k fellows,
as it seems no one could find the cause for this problem so far. I'd therefore like to create a workaround by checking one/some registers for 0xdeadbeef and reset the chip if this is found.
Can anyone recommend a register which should never go 0xdeadbeef in a normal case?
From what i've seen, AR_CFG (0x0014) might be a good choice. My regdumps say:
bad regdump: 0x000014 0xdeadbeef good regdump: 0x000014 0x0008010a
Unfortunately I don't have documentation to find out if this register can ever go deadbeef in a normal case. :)
What do you think? (of course, a proper solution is still appreciated ...)
Cheers,
Simon
Quoted 11 lines · Sven Eckelmann
Quoted 4 lines · On Wednesday 05 September 2012 07:08:47 Adrian Chadd wrote:
I don't think it's a stuck beacon WAR issue here;
0xdeadbeefreally does read like the MAC has gone to sleep.Where's the complete register dump hiding?
It was not sent to the public mailing lists due to the size. You will receive the dump mentioned in the first mail in some minutes.
Kind regards,
Sven
It'll only go into that mode if that core is off for some reason.
So sure, do that and try to turn the radio off/on :-)
adrian
Quoted 45 lines · Simon Wunderlich
ath9k fellows,
as it seems no one could find the cause for this problem so far. I'd therefore like to create a workaround by checking one/some registers for
0xdeadbeefand reset the chip if this is found.Can anyone recommend a register which should never go
0xdeadbeefin a normal case?From what i've seen,
AR_CFG(0x0014) might be a good choice. My regdumps say:bad regdump: 0x000014 0xdeadbeef good regdump: 0x000014 0x0008010aUnfortunately I don't have documentation to find out if this register can ever go deadbeef in a normal case. :)
What do you think? (of course, a proper solution is still appreciated ...)
Cheers,
SimonQuoted 11 lines · Sven Eckelmann
Quoted 4 lines · On Wednesday 05 September 2012 07:08:47 Adrian Chadd wrote:
I don't think it's a stuck beacon WAR issue here;
0xdeadbeefreally does read like the MAC has gone to sleep.Where's the complete register dump hiding?
It was not sent to the public mailing lists due to the size. You will receive the dump mentioned in the first mail in some minutes.
Kind regards,
Sven-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)iEYEARECAAYFAlBSDwwACgkQrzg/fFk7axaCLQCg27g4pk6seTqcix0RFoeoglZm +fkAoJnqhGv77388XjzRPdhSM/V3yNYl
=BYI7
-----END PGP SIGNATURE-----
Quoted 10 lines · Simon Wunderlich
ath9k fellows,
as it seems no one could find the cause for this problem so far. I'd therefore like to create a workaround by checking one/some registers for
0xdeadbeefand reset the chip if this is found.Can anyone recommend a register which should never go
0xdeadbeefin a normal case?From what i've seen,
AR_CFG(0x0014) might be a good choice. My regdumps say:
Quoted 7 lines
bad regdump: 0x000014 0xdeadbeef good regdump: 0x000014 0x0008010aUnfortunately I don't have documentation to find out if this register can ever go deadbeef in a normal case. :)
What do you think? (of course, a proper solution is still appreciated ...)
If ah->power_mode == ATH9K_PM_AWAKE, then no regularly used register may return 0xdeadbeef. You can use a combination of the register and the power mode as an indicator.
- Felix
RFC 1/1 ath9k: Work around complete stuck of hw
AR9330 and most likely other chips like AR9285 seem to get stuck completely after they worked a long period of time in special environments. It is currently unknown which parameters causes this problem.
Symptom of these stuck is the exposure of 0xdeadbeef through different hardware registers. An interface down/up change seems to help the hardware to recover from the problem.
A workaround is to periodically test register AR_CFG for 0xdeadbeef and force an reset when 0xdeadbeef would be unexpected.
---
This check is currently tested. This takes quite a long time and maybe someone with more knowledge of atheros devices can check whether this one is completely and utterly wrong.
The type RESET_TYPE_FATAL_INT was chosen in this test to allow us to see whether this condition was already true by reading from /sys/kernel/debug/ieee80211/phy0/ath9k/reset
drivers/net/wireless/ath/ath9k/link.c | 10 ++++++++++ 1 file changed, 10 insertions(+)
drivers/net/wireless/ath/ath9k/link.c +10 -0
@@ -69,10 +69,20 @@ void ath_hw_check(struct work_struct *work)int busy;u8 is_alive, nbeacon =1 ;enum ath_reset_type type; +u32 reg;ath9k_ps_wakeup (sc); is_alive =ath9k_hw_check_alive (sc->sc_ah); +/* check for stucked MAC */ + reg =REG_READ (sc->sc_ah,AR_CFG ); +if (reg ==0xdeadbeef && sc->sc_ah->power_mode ==ATH9K_PM_AWAKE ) { +ath_dbg (common,RESET , +"Hang is detected. Schedule chip reset\n" ); + type =RESET_TYPE_FATAL_INT ; + goto sched_reset; + } +if (is_alive && !AR_SREV_9300 (sc->sc_ah)) goto out;else if (!is_alive &&AR_SREV_9300 (sc->sc_ah)) {
Signature · 1 line
1.7.10.4
RFC 1/1 ath9k: Work around complete stuck of hw
Quoted 13 lines · Sven Eckelmann
AR9330 and most likely other chips like AR9285 seem to get stuck completely after they worked a long period of time in special environments. It is currently unknown which parameters causes this problem.
Symptom of these stuck is the exposure of
0xdeadbeefthrough different hardware registers. An interface down/up change seems to help the hardware to recover from the problem.A workaround is to periodically test register
AR_CFGfor0xdeadbeefand force an reset when0xdeadbeefwould be unexpected.Signed-off-by Sven Eckelmann <[email protected]>Signed-off-by Simon Wunderlich <[email protected]>
Quoted 8 lines
---
This check is currently tested. This takes quite a long time and maybe someone with more knowledge of atheros devices can check whether this one is completely and utterly wrong.The type
RESET_TYPE_FATAL_INTwas chosen in this test to allow us to see whether this condition was already true by reading from/sys/kernel/debug/ieee80211/phy0/ath9k/reset
Your debug patch should not be silent when it resets the hw. We need to make sure that this bug gets fixed properly. If my patch below does not fix it, then at least add a WARN_ON to ensure that we don't just hide the bug and move on.
Somebody on the openwrt-devel list pointed out that there is some code missing in the ar933x wmac reset function. Please try this patch (apply it to your kernel tree):
---
arch/mips/ath79/dev-wmac.c +18 -1
@@ -67,10 +67,27 @@ static void __init ar913x_wmac_setup(voistatic int ar933x_wmac_reset (void ) { +int retries =20 ; +ath79_device_reset_set (AR933X_RESET_WMAC );ath79_device_reset_clear (AR933X_RESET_WMAC ); -return 0 ; +while (1 ) { +u32 bootstrap; + + bootstrap =ath79_reset_rr (AR933X_RESET_REG_BOOTSTRAP ); +if ((bootstrap &AR933X_BOOTSTRAP_EEPBUSY ) ==0 ) +return 0 ; + +if (retries-- ==0 ) +break ; + +udelay (10000 ); + retries++; + } + +pr_err ("ar93xx: WMAC reset timed out" ); +return -ETIMEDOUT ; }static int ar933x_r1_get_wmac_revision (void )
[ath9k-devel] [RFC] ath9k: Work around complete stuck of hw
On Friday 14 September 2012 13:33:31 Felix Fietkau wrote:
[..]
Quoted 5 lines
Quoted 5 lines
---
This check is currently tested. This takes quite a long time and maybe someone with more knowledge of atheros devices can check whether this one is completely and utterly wrong.
Quoted 8 lines
Quoted 3 lines
The type
RESET_TYPE_FATAL_INTwas chosen in this test to allow us to see whether this condition was already true by reading from/sys/kernel/debug/ieee80211/phy0/ath9k/resetYour debug patch should not be silent when it resets the hw. We need to make sure that this bug gets fixed properly. If my patch below does not fix it, then at least add a
WARN_ONto ensure that we don't just hide the bug and move on.
It is not silent for me and is not a patch that should be applied to the upstream kernel. Just wanted to ask whether this is the right place and approach
Quoted 3 lines
Somebody on the openwrt-devel list pointed out that there is some code missing in the ar933x wmac reset function. Please try this patch (apply it to your kernel tree):
Neither mine nor your patch has an effect. One node is now again dead after ~8 1/2 days. It looks like the check isn't done (correctly). I will investigate this further tomorrow.
Kind regards,
Sven
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
Url : http://lists.ath9k.org/pipermail/ath9k-devel/attachments/20120923/b05c2508/attachment.pgp
Quoted 3 lines · Simon Wunderlich
just to bump again - isn't there anyone who can give us some hint or clue regarding these
0xdeadbeefentries in the registers? Couldn't find a connection to other reports deadbeef on the mailing list so far.
it doesnt make sense to debug such an old firmware (r31729). first upgrade to trunk (~r38885), then report again. bye, bastian
Quoted 1 line · On Wednesday 20 November 2013 21:57:38 Bastian Bittorf wrote:
* Simon Wunderlich <[email protected]> [19.09.2012
11:25]:
Quoted 6 lines
Quoted 3 lines
just to bump again - isn't there anyone who can give us some hint or clue regarding these
0xdeadbeefentries in the registers? Couldn't find a connection to other reports deadbeef on the mailing list so far.it doesnt make sense to debug such an old firmware (r31729). first upgrade to trunk (~r38885), then report again. bye, bastian
Doesn't make a lot of sense to reply to such an old thread.
Kind regards,
Sven