On Thu, May 18, 2017 at 02:40:49AM +0200, Stefan Sperling wrote:
> 
> AR9380 devices are currently not supported by our athn(4).
> There is code for them in the driver, but this code does not work yet.
> 
> This diff makes monitor mode work with an AR9380 device I have lying around.
> 
> athn0 at pci1 dev 0 function 0 "Atheros AR9300" rev 0x01: apic 2 int 16
> athn0: AR9380 rev 3 (3T3R), ROM rev 0, address xx:xx:xx:xx:xx:xx
> 
> This means it can now receive packets (transmit is still broken).
> The fixes are:
> 1) The Rx done bit is in word 11 of the Rx descriptor, not in word 1.
> 2) The card sends an RXEOL interrupt when it receives a packet.
> 3) Rx enable bits in the config registers differ from older devices
>    (the common code in athn.c looks at these bits).
> 
> I have cross-checked these changes with Linux ath9k.
> 
> To test this diff, PCI_PRODUCT_ATHEROS_AR9300 must also be added
> to the PCI device list in if_athn_pci.c (not included here since
> I doubt anyone will bother at this point).
> 
> ok?

Can't receive packets with my AR9382 card.

Tested with:
ifconfig athn0 mediaopt monitor up
tcpdump -n -i athn0 -y IEEE802_11_RADIO -vv

Here are hardware info:
# dmesg |grep athn0
athn0 at pci2 dev 0 function 0 "Atheros AR9300" rev 0x01: apic 1 int 17
athn0: AR9380 rev 3 (2T2R), ROM rev 0, address 00:0e:8e:75:16:9a

# pkg_info |grep athn
athn-firmware-1.1p1 firmware binary images for athn(4) driver

Reply via email to