Hi all,

thanks for all your replies. Let me tell my findings just in case
it helps.

* adrian.ch...@gmail.com [mailto:adrian.ch...@gmail.com] wrote:
> The general consensus at work is - BIOSes are buggy and don't
> necessarily reset the PCI bus correctly.
> 
> So either you can do your own PCI bus reset post-boot (and
> re-enumerate all the PCI devices, including initialising their
> BARs) or smack your vendor to fix their BIOSes. I can't really
> make any further suggestions besides that.

I talked with an expert of my unit about "resetting PCI express
cards". The units have a special controller (I^2C) able to power
off and power on the card slots. I was told that this does not
handle the PCI reset line correctly ("leaves it open"), but makes
"a hard cut to the 3 volts" (I hope I repeat it correctly).

For my WPEA-121N cards, such a power cycle in my tests so far
worked around the issue.

I tested ~30 main unit power cycles where I had 4 occurrences of
the issue. No extra steps were needed (Linux 3.2 automatically
detected the correctly after each slot power on, hundreds of
slot power cycles tested). So fine for me.

root@nomad:~# lspci|grep -i ath
01:00.0 Ethernet controller: Atheros Communications Inc. Device abcd (rev 01)
root@nomad:~# i2cset -y 14 0x20 0x0
root@nomad:~# sleep 1
root@nomad:~# i2cset -y 14 0x20 0x1f
root@nomad:~# lspci|grep -i ath
01:00.0 Network controller: Atheros Communications Inc. AR9300 Wireless LAN 
adaptor (rev 01)

I also tried :

root@nomad:~# echo "0" > /sys/bus/pci/slots/1/power
root@nomad:~# echo "1" > /sys/bus/pci/slots/1/power

this makes the device disappearing temporarily but does not have
the desired effect of "fixing" the vendor ID.

Happy Easter!

Regards
Steffen


_______________________________________________
ath9k-devel mailing list
ath9k-devel@lists.ath9k.org
https://lists.ath9k.org/mailman/listinfo/ath9k-devel

Reply via email to