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.
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
If needed, the laptop can be reached on a public IP and I can give an SSH access to test and debug.
I have a similar issue. It worked during the installation of FreeBSD 13.0 (I was able to download and install `nano` to configure my fstab and other things), but stopped working in the first boot. Apparently, `ifconfig wlan0 down`, wait a few seconds, then `ifconfig wlan0 up` should make it work, but it only works on 2GHz despite the card supporting 5GHz as well. Probably same bug as: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256255 (which is where I got the "solution" from).
I have this problem as well on a Dell laptop. Same behavior on 12.3, 12.4, 13.1, 13.2, and today's 14-CURRENT. Everything looks okay on boot but "ifconfig wlan0 list scan" never returns anything and it's unable to join any networks. I also think the MAC address of wlan0 is odd (another commenter had the same): 00:02:03:04:05:06. I have never gotten the wireless to work under FreeBSD, even after the ifconfig up/down workaround suggested elsewhere. The laptop does have an switch to disable the wireless but it is in the enabled position. One other thing I've noticed is that when booting to Windows the Wifi LED above the keyboard lights up partway through the boot (when the driver attaches, perhaps) and stays illuminated, but it never lights up under FreeBSD. I'd love for someone who knows anything about the wireless subsystem to take a look. As another commenter offered I could make the machine remotely reachable, or I'll be happy to drag it to BSDCan next month if anyone who will be there wants to poke at it. #pciconf ath0@pci0:4: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 #dmesg ath0: <Atheros AR946x/AR948x> mem 0xf7000000-0xf707ffff at device 0.0 on pci4 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 802.5 ath0: 2GHz radio: 0x0000; 5GHz radio: 0x0000 #rc.conf create_args_wlan0="country US regdomain FCC" wlans_ath0="wlan0" ifconfig_wlan0="WPA SYNCDHCP" #wpa_supplicant.conf ctrl_interface=/var/run/wpa_supplicant eapol_version=2 ap_scan=1 fast_reauth=1 network={ ssid="SSID_redacted" psk="PSK_redacted" } #ifconfig wlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 ether 00:02:03:04:05:06 groups: wlan ssid "" channel 165 (5825 MHz 11a) regdomain FCC country US 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>
(In reply to John Nielsen from comment #4) The specific laptop model is Dell Latitude E7440.
I have a similar problem with the added twist that WLAN works normally if I suspend the laptop and then wake it back up.
(In reply to Robert Clausecker from comment #6) Robert, can you post the ath0 section from the output of "pciconf -v"? The original reporter, myself and the referenced GhostBSD issue all appear to have Dell (subvendor 0x1028) Wireless 1601/1901 devices with subdevice ID 0x020d. The card does not have any special .driver_data hints in either FreeBSD (https://cgit.freebsd.org/src/tree/sys/dev/ath/if_ath_pci_devlist.h) or Linux (e.g. https://github.com/torvalds/linux/blob/master/drivers/net/wireless/ath/ath9k/pci.c), but the card works fine under Linux. My mostly-uneducated guess is that FreeBSD is missing a workaround or initialization step for the HAL that is present in Linux that leads to the symptoms of a bogus MAC address and nonfunctional scanning.
(In reply to John Nielsen from comment #7) Here's what it says: $ pciconf -lv ath0 ath0@pci0:3:0:0: class=0x028000 rev=0x01 hdr=0x00 vendor=0x168c device=0x002a subvendor=0x103c subdevice=0x3041 vendor = 'Qualcomm Atheros' device = 'AR928X Wireless Network Adapter (PCI-Express)' class = network
(In reply to Robert Clausecker from comment #8) Thanks. That's an AR928X with an HP sub-vendor ID. May not be the same issue.
According to feedback from Adrian and others on freebsd-wireless it seems the EEPROM is not being read correctly for this card under FreeBSD. This is part of the dmesg output from FreeBSD on my laptop: ath0: <Atheros AR946x/AR948x> mem 0xf7a00000-0xf7a7ffff at device 0.0 on pci4 ar9300_flash_map: unimplemented for now Restoring Cal data from DRAM Restoring Cal data from EEPROM Restoring Cal data from Flash Restoring Cal data from Flash Restoring Cal data from OTP ar9300_eeprom_restore_internal[4338] No vaid CAL, calling default template It tries to read all the places and doesn't succeed from any of them. The hard-coded ar9300 default template is where the 00:02:03:04:05:06 MAC address comes from. I was able to boot the same laptop under Linux (where the wireless works as expected) with the ath9k EEPROM debug messages enabled and got the following: [ 0.039398] Kernel command line: BOOT_IMAGE=/arch/boot/x86_64/vmlinuz-linux-jn archisobasedir=arch archisodevice=UUID=2023-06-08-21-40-20-00 ath9k.debug=0x4 [ 17.692752] ath9k 0000:04:00.0: enabling device (0000 -> 0002) [ 17.696711] ath: phy0: Trying EEPROM access at Address 0x03ff [ 17.697238] ath: phy0: Found valid EEPROM data [ 17.697763] ath: phy0: Found block at 3ff: code=3 ref=4 length=794 major=4 minor=6 [ 17.803208] ath: phy0: checksum a5cc a5cc [ 17.803214] ath: phy0: restore eeprom 0: block, reference 4, length 794 It succeeds at reading the EEPROM data on the first attempt and gets all the appropriate information (including a valid MAC address). Hopefully this gets us closer to at least knowing where the problem is. I plan to keep poking at it as I have time.
And things are a little strange for me. The card is correctly recognised on 12.4 boot up and it does can connect to the 5GHz Wi-Fi. But error messages occasionally show up and connecting options do not work in bsdconfig. Refer to my bug report https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256255 for more information. dmesg: ath0: <Atheros AR946x/AR948x> mem 0xff600000-0xff67ffff irq 18 at device 0.0 on pci2 ar9300_flash_map: unimplemented for now Restoring Cal data from DRAM Restoring Cal data from EEPROM Restoring Cal data from Flash Restoring Cal data from Flash Restoring Cal data from OTP ar9300_hw_attach: ar9300_eeprom_attach returned 0 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] 2 RX streams; 2 TX streams ath0: AR9460 mac 640.2 RF5110 phy 4062.13 ath0: 2GHz radio: 0x0000; 5GHz radio: 0x0000
Also in 14-STABLE ath0: <Atheros AR946x/AR948x> mem 0xb3900000-0xb397ffff at device 0.0 on pci3 ar9300_flash_map: unimplemented for now Restoring Cal data from DRAM Restoring Cal data from EEPROM Restoring Cal data from Flash Restoring Cal data from Flash Restoring Cal data from OTP ar9300_hw_attach: ar9300_eeprom_attach returned 0 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] 2 RX streams; 2 TX streams ath0: AR9460 mac 640.2 RF5110 phy 2854.0 ath0: 2GHz radio: 0x0000; 5GHz radio: 0x0000 ath0@pci0:3:0:0: class=0x028000 rev=0x01 hdr=0x00 vendor=0x168c device=0x0034 subvendor=0x105b subdevice=0xe052 vendor = 'Qualcomm Atheros' device = 'AR9462 Wireless Network Adapter' class = network root@acer:/home/mitya # ifconfig wlan0 list active Channel 1 : 2412 MHz 11g ht Channel 52 : 5260* MHz 11a ht Channel 2 : 2417 MHz 11g ht Channel 56 : 5280* MHz 11a ht Channel 3 : 2422 MHz 11g ht Channel 60 : 5300* MHz 11a ht Channel 4 : 2427 MHz 11g ht Channel 64 : 5320* MHz 11a ht Channel 5 : 2432 MHz 11g ht Channel 100 : 5500* MHz 11a ht Channel 6 : 2437 MHz 11g ht Channel 104 : 5520* MHz 11a ht Channel 7 : 2442 MHz 11g ht Channel 108 : 5540* MHz 11a ht Channel 8 : 2447 MHz 11g ht Channel 112 : 5560* MHz 11a ht Channel 9 : 2452 MHz 11g ht Channel 116 : 5580* MHz 11a ht Channel 10 : 2457 MHz 11g ht Channel 120 : 5600* MHz 11a ht Channel 11 : 2462 MHz 11g ht Channel 124 : 5620* MHz 11a ht Channel 12 : 2467* MHz 11g ht Channel 128 : 5640* MHz 11a ht Channel 13 : 2472* MHz 11g ht Channel 132 : 5660* MHz 11a ht Channel 24 : 5120* MHz 11a ht Channel 136 : 5680* MHz 11a ht Channel 28 : 5140* MHz 11a ht Channel 140 : 5700* MHz 11a ht Channel 32 : 5160* MHz 11a ht Channel 149 : 5745* MHz 11a ht Channel 36 : 5180* MHz 11a ht Channel 153 : 5765* MHz 11a ht Channel 40 : 5200* MHz 11a ht Channel 157 : 5785* MHz 11a ht Channel 44 : 5220* MHz 11a ht Channel 161 : 5805* MHz 11a ht Channel 48 : 5240* MHz 11a ht Channel 165 : 5825* MHz 11a ht root@acer:/home/mitya # ifconfig wlan0 list scan root@acer:/home/mitya # ifconfig wlan0 list caps drivercaps=4f8def41<STA,FF,IBSS,PMGT,HOSTAP,AHDEMO,TXPMGT,SHSLOT,SHPREAMBLE,MONITOR,MBSS,WPA1,WPA2,BURST,WME,WDS,TXFRAG> cryptocaps=1f<WEP,TKIP,AES,AES_CCM,TKIPMIC> htcaps=20701ef<LDPC,CHWIDTH40,SHORTGI20,SHORTGI40,TXSTBC> root@acer:/home/mitya #
It seems: https://reviews.freebsd.org/D44328 may help to actually read the EEPROM but then will not act accordingly on all the other conditions which need to be checked. Still worth to test on your cards as a first step to confirm that the problem moves forward.
(In reply to Bjoern A. Zeeb from comment #13) The patch in the review does help for my card. ah_debug messages show it actually reading the EEPROM data and the card gets a legitimate MAC address and correctly identifies the number of MIMO streams, neither of which were happening previously.
.. which NIC in particular is this? The AR9462s' i have are all OTP :(
(In reply to John Nielsen from comment #14) Actually, the card seems to work completely now! I must have forgotten to bring the interface "up" when doing my scan previously. I am able to scan for SSIDs and associate using wpa_supplicant, get a DHCP lease and use the network.
(In reply to Adrian Chadd from comment #16) ath0@pci0:4: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
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=f254aad33dfb5ce18b6b97b7d036b420310e9ed5 commit f254aad33dfb5ce18b6b97b7d036b420310e9ed5 Author: Bjoern A. Zeeb <bz@FreeBSD.org> AuthorDate: 2024-03-12 21:22:36 +0000 Commit: Bjoern A. Zeeb <bz@FreeBSD.org> CommitDate: 2024-03-12 21:56:56 +0000 ath_hal/ar9300: allow JUPITER cards to read eeprom Summary: In ar9300_eeprom_read_word() also allow JUPITER cards read the eeprom instead of returning an error. While this will not help all the 9462, 9485, 9565 OEM cards to work, it will make debugging of the next steps a lot easier. While here fix a typo in the error message if we do not get CAL. PR: 255337 Tested by: John Nielsen (john jnielsen net) Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D44328 sys/contrib/dev/ath/ath_hal/ar9300/ar9300_eeprom.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
MFC after: 3 days (forgot)
A commit in branch stable/14 references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=21b6420f67cff32e69452a7e3822af37659eb4b8 commit 21b6420f67cff32e69452a7e3822af37659eb4b8 Author: Bjoern A. Zeeb <bz@FreeBSD.org> AuthorDate: 2024-03-12 21:22:36 +0000 Commit: Bjoern A. Zeeb <bz@FreeBSD.org> CommitDate: 2024-04-01 23:46:10 +0000 ath_hal/ar9300: allow JUPITER cards to read eeprom In ar9300_eeprom_read_word() also allow JUPITER cards read the eeprom instead of returning an error. While this will not help all the 9462, 9485, 9565 OEM cards to work, it will make debugging of the next steps a lot easier. While here fix a typo in the error message if we do not get CAL. PR: 255337 Tested by: John Nielsen (john jnielsen net) Reviewed by: adrian (cherry picked from commit f254aad33dfb5ce18b6b97b7d036b420310e9ed5) sys/contrib/dev/ath/ath_hal/ar9300/ar9300_eeprom.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
A commit in branch stable/13 references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=465e5f1b8b80bac313e83b4e62d7c532ffb320d6 commit 465e5f1b8b80bac313e83b4e62d7c532ffb320d6 Author: Bjoern A. Zeeb <bz@FreeBSD.org> AuthorDate: 2024-03-12 21:22:36 +0000 Commit: Bjoern A. Zeeb <bz@FreeBSD.org> CommitDate: 2024-04-01 23:52:40 +0000 ath_hal/ar9300: allow JUPITER cards to read eeprom In ar9300_eeprom_read_word() also allow JUPITER cards read the eeprom instead of returning an error. While this will not help all the 9462, 9485, 9565 OEM cards to work, it will make debugging of the next steps a lot easier. While here fix a typo in the error message if we do not get CAL. PR: 255337 Tested by: John Nielsen (john jnielsen net) Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D44328 (cherry picked from commit f254aad33dfb5ce18b6b97b7d036b420310e9ed5) sys/contrib/dev/ath/ath_hal/ar9300/ar9300_eeprom.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
Should you find further hiccups with the EEPROM working now (other side-conditions elsewhere in the HAL/code), please re-open the bug so we can investigate.
Not working with patch ath0@pci0:3:0:0: class=0x028000 rev=0x01 hdr=0x00 vendor=0x168c device=0x0034 subvendor=0x105b subdevice=0xe052 vendor = 'Qualcomm Atheros' device = 'AR9462 Wireless Network Adapter' class = network pcib3: <ACPI PCI-PCI bridge> at device 28.1 on pci0 pcib0: allocated type 3 (0xb3900000-0xb39fffff) for rid 20 of pcib3 pcib3: domain 0 pcib3: secondary bus 3 pcib3: subordinate bus 3 pcib3: memory decode 0xb3900000-0xb39fffff pci3: <ACPI PCI bus> on pcib3 pcib3: allocated bus range (3-3) for rid 0 of pci3 pci3: domain=0, physical bus=3 found-> vendor=0x168c, dev=0x0034, revid=0x01 domain=0, bus=3, slot=0, func=0 class=02-80-00, hdrtype=0x00, mfdev=0 cmdreg=0x0007, statreg=0x0010, cachelnsz=16 (dwords) lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) intpin=a, irq=255 powerspec 2 supports D0 D1 D2 D3 current D0 MSI supports 4 messages, 64 bit, vector masks map[10]: type Memory, range 64, base rxb3900000, size 19, enabled pcib3: allocated memory range (0xb3900000-0xb397ffff) for rid 10 of pci0:3:0:0 ath0: <Atheros AR946x/AR948x> mem 0xb3900000-0xb397ffff at device 0.0 on pci3 pcib3: matched entry for 3.0.INTA pcib3: slot 0 INTA hardwired to IRQ 17 ioapic0: routing intpin 17 (PCI IRQ 17) to lapic 0 vector 58 ar9300_flash_map: unimplemented for now Restoring Cal data from DRAM Restoring Cal data from EEPROM Restoring Cal data from Flash Restoring Cal data from Flash Restoring Cal data from OTP ar9300_hw_attach: ar9300_eeprom_attach returned 0 ath0: RX status length: 48 ath0: RX buffer size: 4096 ath0: TX descriptor length: 128 ath0: TX status length: 36 ath0: TX buffers per descriptor: 4 ath0: ath_edma_setup_rxfifo: type=0, FIFO depth = 16 entries ath0: ath_edma_setup_rxfifo: type=1, FIFO depth = 128 entries ath0: RX timestamp: 32 bits ath0: TX timestamp: 32 bits 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] 2 RX streams; 2 TX streams ath0: 11a rates: 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps ath0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps ath0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps ath0: 2T2R ath0: 11na MCS 20MHz ath0: MCS 0-7: 6.5Mbps - 65Mbps ath0: MCS 8-15: 13Mbps - 130Mbps ath0: 11na MCS 20MHz SGI ath0: MCS 0-7: 7Mbps - 72Mbps ath0: MCS 8-15: 14.5Mbps - 144.5Mbps ath0: 11na MCS 40MHz: ath0: MCS 0-7: 13.5Mbps - 135Mbps ath0: MCS 8-15: 27Mbps - 270Mbps ath0: 11na MCS 40MHz SGI: ath0: MCS 0-7: 15Mbps - 150Mbps ath0: MCS 8-15: 30Mbps - 300Mbps ath0: 11ng MCS 20MHz ath0: MCS 0-7: 6.5Mbps - 65Mbps ath0: MCS 8-15: 13Mbps - 130Mbps ath0: 11ng MCS 20MHz SGI ath0: MCS 0-7: 7Mbps - 72Mbps ath0: MCS 8-15: 14.5Mbps - 144.5Mbps ath0: 11ng MCS 40MHz: ath0: MCS 0-7: 13.5Mbps - 135Mbps ath0: MCS 8-15: 27Mbps - 270Mbps ath0: 11ng MCS 40MHz SGI: ath0: MCS 0-7: 15Mbps - 150Mbps ath0: MCS 8-15: 30Mbps - 300Mbps ath0: AR9460 mac 640.2 RF5110 phy 2822.0 ath0: 2GHz radio: 0x0000; 5GHz radio: 0x0000 ath0: Use hw queue 1 for WME_AC_BE traffic ath0: Use hw queue 0 for WME_AC_BK traffic ath0: Use hw queue 2 for WME_AC_VI traffic ath0: Use hw queue 3 for WME_AC_VO traffic ath0: Use hw queue 8 for CAB traffic ath0: Use hw queue 9 for beacons ath0: using multicast key search
(In reply to Dmitry Lukhtionov from comment #24) And what is not working?
root@acer:/home/mitya # ifconfig wlan0 list active Channel 1 : 2412 MHz 11g ht Channel 60 : 5300* MHz 11a ht Channel 2 : 2417 MHz 11g ht Channel 64 : 5320* MHz 11a ht Channel 3 : 2422 MHz 11g ht Channel 100 : 5500* MHz 11a ht Channel 4 : 2427 MHz 11g ht Channel 104 : 5520* MHz 11a ht Channel 5 : 2432 MHz 11g ht Channel 108 : 5540* MHz 11a ht Channel 6 : 2437 MHz 11g ht Channel 112 : 5560* MHz 11a ht Channel 7 : 2442 MHz 11g ht Channel 116 : 5580* MHz 11a ht Channel 8 : 2447 MHz 11g ht Channel 120 : 5600* MHz 11a ht Channel 9 : 2452 MHz 11g ht Channel 124 : 5620* MHz 11a ht Channel 10 : 2457 MHz 11g ht Channel 128 : 5640* MHz 11a ht Channel 11 : 2462 MHz 11g ht Channel 132 : 5660* MHz 11a ht Channel 12 : 2467* MHz 11g ht Channel 136 : 5680* MHz 11a ht Channel 13 : 2472* MHz 11g ht Channel 140 : 5700* MHz 11a ht Channel 36 : 5180* MHz 11a ht Channel 149 : 5745* MHz 11a ht Channel 40 : 5200* MHz 11a ht Channel 153 : 5765* MHz 11a ht Channel 44 : 5220* MHz 11a ht Channel 157 : 5785* MHz 11a ht Channel 48 : 5240* MHz 11a ht Channel 161 : 5805* MHz 11a ht Channel 52 : 5260* MHz 11a ht Channel 165 : 5825* MHz 11a ht Channel 56 : 5280* MHz 11a ht root@acer:/home/mitya # ifconfig wlan0 list scan root@acer:/home/mitya #
I can put any debug information in thiis code, or anoter ar9300_eeprom_read_word(struct ath_hal *ah, u_int off, u_int16_t *data) { if (AR_SREV_OSPREY(ah) || AR_SREV_POSEIDON(ah) || AR_SREV_JUPITER(ah)) { (void) OS_REG_READ(ah, AR9300_EEPROM_OFFSET + (off << AR9300_EEPROM_S)); if (!ath_hal_wait(ah, AR_HOSTIF_REG(ah, AR_EEPROM_STATUS_DATA), AR_EEPROM_STATUS_DATA_BUSY | AR_EEPROM_STATUS_DATA_PROT_ACCESS, 0)) { return AH_FALSE; } *data = MS(OS_REG_READ(ah, AR_HOSTIF_REG(ah, AR_EEPROM_STATUS_DATA)), AR_EEPROM_STATUS_DATA_VAL); return AH_TRUE; } else { *data = 0; return AH_FALSE; } } Сan you send me a patch that will generate a lot of debugging information?
(In reply to Dmitry Lukhtionov from comment #26) If you have no scan output from the channel list but you have a valid channel list, then it sounds like the antenna config is plain wrong. Do you have a photo of the NIC in question? I'll go see if it needs any specific config.
also, can you just do ifconfig wlan0 ? Let's see what MAC address it has.
root@acer:/home/mitya # ifconfig wlan0 wlan0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=0 ether 68:94:23:7a:41:25 groups: wlan ssid "" channel 1 (2412 MHz 11b) regdomain 108 indoor ecm authmode OPEN privacy OFF txpower 20 bmiss 7 scanvalid 60 wme burst bintval 0 parent interface: ath0 media: IEEE 802.11 Wireless Ethernet autoselect (autoselect) status: no carrier nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
root@acer:/home/mitya # ifconfig -v wlan0 wlan0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=0 ether 68:94:23:7a:41:25 groups: wlan ssid "" channel 1 (2412 MHz 11b) bssid 00:00:00:00:00:00 regdomain 108 country DEBUG indoor ecm authmode OPEN -wps -tsn privacy OFF deftxkey UNDEF powersavemode OFF powersavesleep 100 txpower 20 txpowmax 50.0 -dotd rtsthreshold 2346 fragthreshold 2346 bmiss 7 11a ucast NONE mgmt 6 Mb/s mcast 6 Mb/s maxretry 6 11b ucast NONE mgmt 1 Mb/s mcast 1 Mb/s maxretry 6 11g ucast NONE mgmt 1 Mb/s mcast 1 Mb/s maxretry 6 11na ucast NONE mgmt 6 Mb/s mcast 6 Mb/s maxretry 6 11ng ucast NONE mgmt 1 Mb/s mcast 1 Mb/s maxretry 6 scanvalid 60 -bgscan bgscanintvl 300 bgscanidle 250 roam:11a rssi 7dBm rate 12 Mb/s roam:11b rssi 7dBm rate 1 Mb/s roam:11g rssi 7dBm rate 5 Mb/s roam:11na rssi 7dBm MCS 1 roam:11ng rssi 7dBm MCS 1 -pureg protmode CTS ht htcompat ampdu ampdulimit 64k ampdudensity 8 amsdu shortgi htprotmode RTSCTS -puren -smps -rifs stbc ldpc -uapsd -vht -vht40 -vht80 -vht160 -vht80p80 wme burst -dwds roaming AUTO bintval 0 AC_BE cwmin 0 cwmax 0 aifs 0 txopLimit 0 -acm ack cwmin 0 cwmax 0 aifs 0 txopLimit 0 -acm AC_BK cwmin 0 cwmax 0 aifs 0 txopLimit 0 -acm ack cwmin 0 cwmax 0 aifs 0 txopLimit 0 -acm AC_VI cwmin 0 cwmax 0 aifs 0 txopLimit 0 -acm ack cwmin 0 cwmax 0 aifs 0 txopLimit 0 -acm AC_VO cwmin 0 cwmax 0 aifs 0 txopLimit 0 -acm ack cwmin 0 cwmax 0 aifs 0 txopLimit 0 -acm parent interface: ath0 media: IEEE 802.11 Wireless Ethernet autoselect (autoselect) status: no carrier nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> drivername: wlan0
root@acer:/home/mitya # ifconfig -m wlan0 wlan0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=0 capabilities=0 ether 68:94:23:7a:41:25 groups: wlan ssid "" channel 1 (2412 MHz 11b) regdomain 108 indoor ecm authmode OPEN privacy OFF txpower 20 bmiss 7 scanvalid 60 wme burst bintval 0 parent interface: ath0 media: IEEE 802.11 Wireless Ethernet autoselect (autoselect) status: no carrier supported media: media MCS mode autoselect media MCS mode 11ng media autoselect mode 11ng media MCS mode 11na media autoselect mode 11na media DS/11Mbps mode autoselect media DS/5.5Mbps mode autoselect media DS/2Mbps mode autoselect media DS/1Mbps mode autoselect media OFDM/54Mbps mode autoselect media OFDM/48Mbps mode autoselect media OFDM/36Mbps mode autoselect media OFDM/24Mbps mode autoselect media OFDM/18Mbps mode autoselect media OFDM/12Mbps mode autoselect media OFDM/9Mbps mode autoselect media OFDM/6Mbps mode autoselect media OFDM/54Mbps mode 11g media OFDM/48Mbps mode 11g media OFDM/36Mbps mode 11g media OFDM/24Mbps mode 11g media OFDM/18Mbps mode 11g media OFDM/12Mbps mode 11g media OFDM/9Mbps mode 11g media OFDM/6Mbps mode 11g media DS/11Mbps mode 11g media DS/5.5Mbps mode 11g media DS/2Mbps mode 11g media DS/1Mbps mode 11g media autoselect mode 11g media DS/11Mbps mode 11b media DS/5.5Mbps mode 11b media DS/2Mbps mode 11b media DS/1Mbps mode 11b media autoselect mode 11b media OFDM/54Mbps mode 11a media OFDM/48Mbps mode 11a media OFDM/36Mbps mode 11a media OFDM/24Mbps mode 11a media OFDM/18Mbps mode 11a media OFDM/12Mbps mode 11a media OFDM/9Mbps mode 11a media OFDM/6Mbps mode 11a media autoselect mode 11a media autoselect mode autoselect nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
hi, It sounds like the antenna configuration isn't being fully setup correctly. Please create a new ticket for this and email adrian@freebsd.org about it as this is a different problem than this. I have a feeling you require the bluetooth coexistence configured for your NIC to work. (I'll go look at what sysctl to setup for that.) (The code to enable basic btcoex is in the driver, it's just not enabled by default. I really should go and finish adding that whitelist support.. :-) )
(In reply to Adrian Chadd from comment #33) Well actually the interfaces is no UP in any of the responses so scan will not show anything and it won't work.
(In reply to Bjoern A. Zeeb from comment #34) root@acer:/home/mitya # ifconfig wlan0 up oot@acer:/home/mitya # ifconfig wlan0 wlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=0 ether 68:94:23:7a:41:25 groups: wlan ssid "" channel 9 (2452 MHz 11b) regdomain 108 indoor ecm authmode OPEN privacy OFF txpower 20 bmiss 7 scanvalid 60 wme burst bintval 0 parent interface: ath0 media: IEEE 802.11 Wireless Ethernet autoselect mode 11b status: no carrier nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> root@acer:/home/mitya # ifconfig wlan0 list scan
(In reply to Adrian Chadd from comment #33) I can not find any bluetooth or another stuff in `pciconf` output mitya@acer:/etc# pciconf -l -v hostb0@pci0:0:0:0: class=0x060000 rev=0x09 hdr=0x00 vendor=0x8086 device=0x0154 subvendor=0x1025 subdevice=0x0647 vendor = 'Intel Corporation' device = '3rd Gen Core processor DRAM Controller' class = bridge subclass = HOST-PCI pcib1@pci0:0:1:0: class=0x060400 rev=0x09 hdr=0x01 vendor=0x8086 device=0x0151 subvendor=0x1025 subdevice=0x0647 vendor = 'Intel Corporation' device = 'Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port' class = bridge subclass = PCI-PCI vgapci1@pci0:0:2:0: class=0x030000 rev=0x09 hdr=0x00 vendor=0x8086 device=0x0166 subvendor=0x1025 subdevice=0x0647 vendor = 'Intel Corporation' device = '3rd Gen Core processor Graphics Controller' class = display subclass = VGA xhci0@pci0:0:20:0: class=0x0c0330 rev=0x04 hdr=0x00 vendor=0x8086 device=0x1e31 subvendor=0x1025 subdevice=0x0647 vendor = 'Intel Corporation' device = '7 Series/C210 Series Chipset Family USB xHCI Host Controller' class = serial bus subclass = USB none0@pci0:0:22:0: class=0x078000 rev=0x04 hdr=0x00 vendor=0x8086 device=0x1e3a subvendor=0x1025 subdevice=0x0647 vendor = 'Intel Corporation' device = '7 Series/C216 Chipset Family MEI Controller' class = simple comms ehci0@pci0:0:26:0: class=0x0c0320 rev=0x04 hdr=0x00 vendor=0x8086 device=0x1e2d subvendor=0x1025 subdevice=0x0647 vendor = 'Intel Corporation' device = '7 Series/C216 Chipset Family USB Enhanced Host Controller' class = serial bus subclass = USB hdac0@pci0:0:27:0: class=0x040300 rev=0x04 hdr=0x00 vendor=0x8086 device=0x1e20 subvendor=0x1025 subdevice=0x0647 vendor = 'Intel Corporation' device = '7 Series/C216 Chipset Family High Definition Audio Controller' class = multimedia subclass = HDA pcib2@pci0:0:28:0: class=0x060400 rev=0xc4 hdr=0x01 vendor=0x8086 device=0x1e10 subvendor=0x1025 subdevice=0x0647 vendor = 'Intel Corporation' device = '7 Series/C216 Chipset Family PCI Express Root Port 1' class = bridge subclass = PCI-PCI pcib3@pci0:0:28:1: class=0x060400 rev=0xc4 hdr=0x01 vendor=0x8086 device=0x1e12 subvendor=0x1025 subdevice=0x0647 vendor = 'Intel Corporation' device = '7 Series/C210 Series Chipset Family PCI Express Root Port 2' class = bridge subclass = PCI-PCI ehci1@pci0:0:29:0: class=0x0c0320 rev=0x04 hdr=0x00 vendor=0x8086 device=0x1e26 subvendor=0x1025 subdevice=0x0647 vendor = 'Intel Corporation' device = '7 Series/C216 Chipset Family USB Enhanced Host Controller' class = serial bus subclass = USB isab0@pci0:0:31:0: class=0x060100 rev=0x04 hdr=0x00 vendor=0x8086 device=0x1e57 subvendor=0x1025 subdevice=0x0647 vendor = 'Intel Corporation' device = 'HM77 Express Chipset LPC Controller' class = bridge subclass = PCI-ISA ahci0@pci0:0:31:2: class=0x010601 rev=0x04 hdr=0x00 vendor=0x8086 device=0x1e03 subvendor=0x1025 subdevice=0x0647 vendor = 'Intel Corporation' device = '7 Series Chipset Family 6-port SATA Controller [AHCI mode]' class = mass storage subclass = SATA ichsmb0@pci0:0:31:3: class=0x0c0500 rev=0x04 hdr=0x00 vendor=0x8086 device=0x1e22 subvendor=0x1025 subdevice=0x0647 vendor = 'Intel Corporation' device = '7 Series/C216 Chipset Family SMBus Controller' class = serial bus subclass = SMBus vgapci0@pci0:1:0:0: class=0x030000 rev=0xa1 hdr=0x00 vendor=0x10de device=0x0de9 subvendor=0x1025 subdevice=0x0648 vendor = 'NVIDIA Corporation' device = 'GF108M [GeForce GT 620M/630M/635M/640M LE]' class = display subclass = VGA bge0@pci0:2:0:0: class=0x020000 rev=0x10 hdr=0x00 vendor=0x14e4 device=0x16b5 subvendor=0x1025 subdevice=0x0647 vendor = 'Broadcom Inc. and subsidiaries' device = 'NetLink BCM57785 Gigabit Ethernet PCIe' class = network subclass = ethernet sdhci_pci0@pci0:2:0:1: class=0x080501 rev=0x10 hdr=0x00 vendor=0x14e4 device=0x16bc subvendor=0x1025 subdevice=0x0647 vendor = 'Broadcom Inc. and subsidiaries' device = 'BCM57765/57785 SDXC/MMC Card Reader' class = base peripheral subclass = SD host controller none1@pci0:2:0:2: class=0x088000 rev=0x10 hdr=0x00 vendor=0x14e4 device=0x16be subvendor=0x1025 subdevice=0x0647 vendor = 'Broadcom Inc. and subsidiaries' device = 'BCM57765/57785 MS Card Reader' class = base peripheral none2@pci0:2:0:3: class=0x088000 rev=0x10 hdr=0x00 vendor=0x14e4 device=0x16bf subvendor=0x1025 subdevice=0x0647 vendor = 'Broadcom Inc. and subsidiaries' device = 'BCM57765/57785 xD-Picture Card Reader' class = base peripheral ath0@pci0:3:0:0: class=0x028000 rev=0x01 hdr=0x00 vendor=0x168c device=0x0034 subvendor=0x105b subdevice=0xe052 vendor = 'Qualcomm Atheros' device = 'AR9462 Wireless Network Adapter' class = network
It's a USB device, not a PCI device!