Bug 255337

Summary: ath(4): Atheros AR9462 identified correctly but does not function
Product: Base System Reporter: gmarco
Component: wirelessAssignee: freebsd-wireless (Nobody) <wireless>
Status: Open ---    
Severity: Affects Some People CC: wireless
Priority: --- Keywords: needs-qa
Version: 13.0-RELEASE   
Hardware: amd64   
OS: Any   

Description gmarco 2021-04-22 23:08:32 UTC
I have tried to install a fresh 13.0-RELEASE on a DELL Precision m4800.

The wifi card is a AR9462 Wireless Network Adapter that should be well supported since FreeBSD 10-RELEASE.

During boot the card is identified correctly: 

root@m4800:/home/gmarco # grep ath /var/run/dmesg.boot
ath0: <Atheros AR946x/AR948x> mem 0xf5000000-0xf507ffff at device 0.0 on pci5
ath0: [HT] enabling HT modes
ath0: [HT] enabling short-GI in 20MHz mode
ath0: [HT] 1 stream STBC receive enabled
ath0: [HT] 1 stream STBC transmit enabled
ath0: [HT] LDPC transmit/receive enabled
ath0: [HT] 3 RX streams; 3 TX streams
ath0: AR9460 mac 640.2 RF5110 phy 124.0
ath0: 2GHz radio: 0x0000; 5GHz radio: 0x0000
ath0: <Atheros AR946x/AR948x> mem 0xf5a00000-0xf5a7ffff at device 0.0 on pci5
ath0: [HT] enabling HT modes
ath0: [HT] enabling short-GI in 20MHz mode
ath0: [HT] 1 stream STBC receive enabled
ath0: [HT] 1 stream STBC transmit enabled
ath0: [HT] LDPC transmit/receive enabled
ath0: [HT] 3 RX streams; 3 TX streams
ath0: AR9460 mac 640.2 RF5110 phy 0.0
ath0: 2GHz radio: 0x0000; 5GHz radio: 0x0000



root@m4800:/home/gmarco # pciconf -vl | grep -4 ath
...
ath0@pci0:5:0:0:        class=0x028000 rev=0x01 hdr=0x00 vendor=0x168c device=0x0034 subvendor=0x1028 subdevice=0x020d
    vendor     = 'Qualcomm Atheros'
    device     = 'AR9462 Wireless Network Adapter'
    class      = network


The driver is ath0:
root@m4800:/home/gmarco # sysctl -a|fgrep antenna
dev.ath.0.rxantenna: 1
dev.ath.0.txantenna: 0


I have in /etc/rc.conf:
wlans_ath0="wlan0"
ifconfig_wlan0="WPA SYNCDHCP"
create_args_wlan0="country IT"

A simple /etc/wpa_supplicant.conf like:
ctrl_interface=/var/run/wpa_supplicant
ap_scan=1
eapol_version=1

network={
  ssid="sweetguest"
  psk="mypsk"
}

After a reboot the card is in this way:
root@m4800:/home/gmarco # ifconfig wlan0
wlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        ether 00:02:03:04:05:06
        groups: wlan
        ssid "" channel 140 (5700 MHz 11a)
        regdomain ETSI country IT ecm authmode WPA1+WPA2/802.11i
        privacy MIXED deftxkey UNDEF txpower 23 bmiss 7 mcastrate 6 mgmtrate 6
        scanvalid 60 wme burst roaming MANUAL bintval 0
        parent interface: ath0
        media: IEEE 802.11 Wireless Ethernet autoselect (autoselect)
        status: no carrier
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>

The "country IT" correctly set the card with /etc/regdomain.xml parameters.

NO IP is assigned and the card is deaf and dumb infact it is unable to find the near wifi networks:
root@m4800:/home/gmarco # ifconfig wlan0 up scan
root@m4800:/home/gmarco # 

In the messages I found:
Apr 22 13:51:24 m4800 kernel: ar9300_flash_map: unimplemented for now
Apr 22 13:51:24 m4800 kernel: ar9300_eeprom_restore_internal[4323] No vaid CAL, calling default template
Apr 22 13:51:24 m4800 kernel: ar9300_hw_attach: ar9300_eeprom_attach returned 0

The MAC address is a bit strange too (?).

It seems the card is unable to transmit:
sysctl dev.ath.0.stats | fgrep -v :\ 0
dev.ath.0.stats.ast_tx_intr: 386
dev.ath.0.stats.ast_tx_raw: 306
dev.ath.0.stats.ast_tx_xretries: 123


I have tried to run the wpa_supplicant in debug mode:

root@m4800:/home/gmarco # wpa_supplicant -Dbsd -iwlan0 -dd -c/etc/wpa_supplicant.conf
wpa_supplicant v2.9
Successfully initialized wpa_supplicant
Initializing interface 'wlan0' conf '/etc/wpa_supplicant.conf' driver 'bsd' ctrl_interface 'N/A' bridge 'N/A'
Configuration file '/etc/wpa_supplicant.conf' -> '/etc/wpa_supplicant.conf'
Reading configuration file '/etc/wpa_supplicant.conf'
Line: 1 - start of a new network block
ssid - hexdump_ascii(len=10):
     73 77 65 65 74 67 75 65 73 74                     sweetguest
PSK (ASCII passphrase) - hexdump_ascii(len=10): [REMOVED]
PSK (from passphrase) - hexdump(len=32): [REMOVED]
Priority group 0
   id=0 ssid='sweetguest'
wpa_driver_bsd_capa: drivercaps=0x4f8def41,cryptocaps=0x0000001f
Add interface wlan0 to a new radio N/A
wlan0: Failed to attach pkt_type filter
wlan0: Own MAC address: 00:02:03:04:05:06
bsd_set_key: alg=0 addr=0x0 key_idx=0 set_tx=0 seq_len=0 key_len=0
bsd_del_key: key_idx=0
bsd_set_key: alg=0 addr=0x0 key_idx=1 set_tx=0 seq_len=0 key_len=0
bsd_del_key: key_idx=1
bsd_set_key: alg=0 addr=0x0 key_idx=2 set_tx=0 seq_len=0 key_len=0
bsd_del_key: key_idx=2
bsd_set_key: alg=0 addr=0x0 key_idx=3 set_tx=0 seq_len=0 key_len=0
bsd_del_key: key_idx=3
bsd_set_key: alg=0 addr=0x0 key_idx=4 set_tx=0 seq_len=0 key_len=0
bsd_del_key: key_idx=4
ioctl[SIOCS80211, op=20, val=0, arg_len=7]: Invalid argument
bsd_set_key: alg=0 addr=0x0 key_idx=5 set_tx=0 seq_len=0 key_len=0
bsd_del_key: key_idx=5
ioctl[SIOCS80211, op=20, val=0, arg_len=7]: Invalid argument
wpa_driver_bsd_set_countermeasures: enabled=0
wlan0: RSN: flushing PMKID list in the driver
wlan0: Setting scan request: 0.100000 sec
wlan0: WPS: UUID based on MAC address: adc6ea59-dd05-5fc9-87b4-a4bb58fad59e
ENGINE: Loading builtin engines
ENGINE: Loading builtin engines
EAPOL: SUPP_PAE entering state DISCONNECTED
EAPOL: Supplicant port status: Unauthorized
EAPOL: KEY_RX entering state NO_KEY_RECEIVE
EAPOL: SUPP_BE entering state INITIALIZE
EAP: EAP entering state DISABLED
wlan0: Added interface wlan0
wlan0: State: DISCONNECTED -> DISCONNECTED
wlan0: State: DISCONNECTED -> SCANNING
wlan0: Starting AP scan for wildcard SSID
wlan0: Add radio work 'scan'@0x800e103e0
wlan0: First radio work item in the queue - schedule start immediately
wlan0: Starting radio work 'scan'@0x800e103e0 after 0.000003 second wait
wpa_driver_bsd_set_wpa: enabled=1
wpa_driver_bsd_set_wpa_internal: wpa=3 privacy=1
RTM_IFINFO: Interface 'wlan0' UP
wlan0: Event INTERFACE_ENABLED (25) received
wlan0: Interface was enabled
EAPOL: disable timer tick
wlan0: Event SCAN_RESULTS (3) received
Received 0 bytes of scan results (0 BSSes)
wlan0: BSS: Start scan result update 1
BSS: last_scan_res_used=0/0
wlan0: New scan results available (own=0 ext=0)
wlan0: Radio work 'scan'@0x800e103e0 done in 7.632735 seconds
wlan0: radio_work_free('scan'@0x800e103e0): num_active_works --> 0
wlan0: No suitable network found
wlan0: Setting scan request: 5.000000 sec
wlan0: Starting AP scan for wildcard SSID
wlan0: Add radio work 'scan'@0x800e103e0
wlan0: First radio work item in the queue - schedule start immediately
wlan0: Starting radio work 'scan'@0x800e103e0 after 0.000005 second wait
wpa_driver_bsd_set_wpa: enabled=1
wpa_driver_bsd_set_wpa_internal: wpa=3 privacy=1
wlan0: Event SCAN_RESULTS (3) received
Received 0 bytes of scan results (0 BSSes)
wlan0: BSS: Start scan result update 2
BSS: last_scan_res_used=0/0
wlan0: New scan results available (own=0 ext=0)
wlan0: Radio work 'scan'@0x800e103e0 done in 7.642331 seconds
wlan0: radio_work_free('scan'@0x800e103e0): num_active_works --> 0
wlan0: No suitable network found
wlan0: Setting scan request: 5.000000 sec
wlan0: Starting AP scan for wildcard SSID
wlan0: Add radio work 'scan'@0x800e103e0
wlan0: First radio work item in the queue - schedule start immediately
wlan0: Starting radio work 'scan'@0x800e103e0 after 0.000004 second wait
wpa_driver_bsd_set_wpa: enabled=1
wpa_driver_bsd_set_wpa_internal: wpa=3 privacy=1
blablabla .....

But I am not good enough to understand if there is a problem here :)


The card works quite nicely in WIN10 and UBUNTU.

Thanks for any info/tips/ideas.
Comment 1 gmarco 2021-04-23 04:05:50 UTC
It does not affect only me. 

I have found at least another person that has the same problem in the GhostBBSD community.

I have tested also with latest GhostBSD 13.0-STABLE based.

In GhostBSD the WiFI configurations are more automatic and forgiving but the results in this case are the same. The driver is not working.

You can check also here the thread:
https://forums.ghostbsd.org/viewtopic.php?f=64&t=1925
Comment 2 gmarco 2021-04-23 05:58:51 UTC
If needed, the laptop can be reached on a public IP and I can give an SSH access to test and debug.