Athp driver



  • i can confirm you that i have 144Mbps on 2,4Ghz channel 11 ht40- mode 11ng, but if i change mode to 11a channel 161 i have only 54Mbps and i'm unable to use/activate 40Mhz width only 20Mhz.
    ifconfig athp0_wlan0 channel 161:ht40- does nothing, no error messages and no 40Mhz


  • Netgate Administrator

    Seems like it would have to be ifconfig athp0_wlan0 channel 161:ht/40- though I can't test that as 161 is not a channel available to me.

    It also seems like maybe ifconfig would need updating for ac options to use it that way... no vht mode.

    54Mbps beats me anyway. ๐Ÿ˜‰

    Selection_627.png


  • Netgate Administrator

    Mmm, maybe not it does appear to have vht vht40 and vht80 enabled:

    [2.5.0-DEVELOPMENT][root@apu.stevew.lan]/root: ifconfig -v athp0_wlan0 
    athp0_wlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
    	ether 04:f0:21:28:af:bd
    	inet6 fe80::6f0:21ff:fe28:afbd%athp0_wlan0 prefixlen 64 scopeid 0xb 
    	inet 192.168.36.1 netmask 0xffffff00 broadcast 192.168.36.255 
    	groups: wlan 
    	ssid AreaACnet channel 48 (5240 MHz 11a ht/40-) bssid 04:f0:21:28:af:bd
    	regdomain ETSI country GB anywhere -ecm authmode OPEN -wps -tsn
    	privacy OFF deftxkey UNDEF powersavemode OFF powersavesleep 100
    	txpower 17 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
    	turboA  ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
    	turboG  ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
    	sturbo  ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
    	11na    ucast NONE    mgmt 12 MCS  mcast 12 MCS  maxretry 6
    	11ng    ucast NONE    mgmt  2 MCS  mcast  2 MCS  maxretry 6
    	half    ucast NONE    mgmt  3 Mb/s mcast  3 Mb/s maxretry 6
    	quarter ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
    	11acg   ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
    	11ac    ucast NONE    mgmt  6 Mb/s mcast  6 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:turboA  rssi    7dBm rate 12 Mb/s
    	roam:turboG  rssi    7dBm rate 12 Mb/s
    	roam:sturbo  rssi    7dBm rate 12 Mb/s
    	roam:11na    rssi    7dBm  MCS  1    
    	roam:11ng    rssi    7dBm  MCS  1    
    	roam:half    rssi    7dBm rate  6 Mb/s
    	roam:quarter rssi    7dBm rate  3 Mb/s
    	roam:11acg   rssi    7dBm rate 64 Mb/s
    	roam:11ac    rssi    7dBm rate 64 Mb/s
    	-pureg protmode OFF ht htcompat ampdu ampdulimit 64k ampdudensity 8
    	amsdu shortgi htprotmode RTSCTS -puren -smps -rifs stbc -ldpctx ldpcrx
    	vht vht40 vht80 -vht80p80 vht160 wme -burst -dwds -hidessid -apbridge
    	dtimperiod 1 doth -dfs inact bintval 100
    	AC_BE cwmin  4 cwmax  6 aifs  3 txopLimit   0 -acm ack
    	      cwmin  4 cwmax 10 aifs  3 txopLimit   0 -acm
    	AC_BK cwmin  4 cwmax 10 aifs  7 txopLimit   0 -acm ack
    	      cwmin  4 cwmax 10 aifs  7 txopLimit   0 -acm
    	AC_VI cwmin  3 cwmax  4 aifs  1 txopLimit  94 -acm ack
    	      cwmin  3 cwmax  4 aifs  2 txopLimit  94 -acm
    	AC_VO cwmin  2 cwmax  3 aifs  1 txopLimit  47 -acm ack
    	      cwmin  2 cwmax  3 aifs  2 txopLimit  47 -acm
    	media: IEEE 802.11 Wireless Ethernet autoselect mode 11na <hostap>
    	status: running
    	nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
    

    My card pulls only the API 5 firmware. Not sure if that's intended...

    [2.5.0-DEVELOPMENT][root@apu.stevew.lan]/root: kldstat
    Id Refs Address                Size Name
     1   22 0xffffffff80200000  3124198 kernel
     2    1 0xffffffff83421000      fe0 cpuctl.ko
     3    1 0xffffffff83422000     2678 intpm.ko
     4    1 0xffffffff83425000      b10 smbus.ko
     5    1 0xffffffff83426000     3110 cryptodev.ko
     6    1 0xffffffff8342a000    8d728 if_athp.ko
     7    1 0xffffffff834b8000      a45 athp_QCA988X_hw2.0_board.bin.ko
     8    1 0xffffffff834b9000    3cb9f athp_QCA988X_hw2.0_firmware-5.bin.ko
    

  • Netgate Administrator

    Hmm, real throughput appears to be ~250Mbps so that 'rate' reported is not what I think it is...



  • [2.5.0-DEVELOPMENT][root@pfSense.localdomain]/root: ifconfig -v athp0_wlan0
    athp0_wlan0: flags=8902<BROADCAST,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
            ether 00:0e:8e:5a:c6:f6
            inet6 fe80::20e:8eff:fe5a:c6f6%athp0_wlan0 prefixlen 64 tentative scopeid 0xa
            groups: wlan
            ssid pfSense-5G channel 48 (5240 MHz 11a) bssid 00:00:00:00:00:00
            regdomain FCC country US anywhere -ecm authmode WPA2/802.11i -wps
            -tsn privacy MIXED deftxkey 2
            AES-CCM 2:128-bit powersavemode OFF powersavesleep 100 txpower 17
            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
            turboA  ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
            turboG  ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
            sturbo  ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
            11na    ucast NONE    mgmt 12 MCS  mcast 12 MCS  maxretry 6
            11ng    ucast NONE    mgmt  2 MCS  mcast  2 MCS  maxretry 6
            half    ucast NONE    mgmt  3 Mb/s mcast  3 Mb/s maxretry 6
            quarter ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
            11acg   ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
            11ac    ucast NONE    mgmt  6 Mb/s mcast  6 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:turboA  rssi    7dBm rate 12 Mb/s
            roam:turboG  rssi    7dBm rate 12 Mb/s
            roam:sturbo  rssi    7dBm rate 12 Mb/s
            roam:11na    rssi    7dBm  MCS  1
            roam:11ng    rssi    7dBm  MCS  1
            roam:half    rssi    7dBm rate  6 Mb/s
            roam:quarter rssi    7dBm rate  3 Mb/s
            roam:11acg   rssi    7dBm rate 64 Mb/s
            roam:11ac    rssi    7dBm rate 64 Mb/s
            -pureg protmode CTS ht htcompat ampdu ampdulimit 64k ampdudensity 8
            amsdu shortgi htprotmode RTSCTS -puren -smps -rifs stbc -ldpctx ldpcrx
            vht vht40 vht80 -vht80p80 -vht160 wme -burst -dwds -hidessid apbridge
            dtimperiod 1 doth -dfs inact bintval 100
            AC_BE cwmin  4 cwmax  6 aifs  3 txopLimit   0 -acm ack
                  cwmin  4 cwmax 10 aifs  3 txopLimit   0 -acm
            AC_BK cwmin  4 cwmax 10 aifs  7 txopLimit   0 -acm ack
                  cwmin  4 cwmax 10 aifs  7 txopLimit   0 -acm
            AC_VI cwmin  3 cwmax  4 aifs  1 txopLimit  94 -acm ack
                  cwmin  3 cwmax  4 aifs  2 txopLimit  94 -acm
            AC_VO cwmin  2 cwmax  3 aifs  1 txopLimit  47 -acm ack
                  cwmin  2 cwmax  3 aifs  2 txopLimit  47 -acm
            media: IEEE 802.11 Wireless Ethernet autoselect mode 11a <hostap>
            status: no carrier
            nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
    
    
    [2.5.0-DEVELOPMENT][root@pfSense.localdomain]/root: ifconfig athp0_wlan0 list regdomain
    :regdomain FCC country US anywhere -ecm
    Channel   1 : 2412      MHz 11b          Channel   9 : 2452      MHz 11g
    Channel   1 : 2412      MHz 11g          Channel   9 : 2452      MHz 11g ht/20
    Channel   1 : 2412      MHz 11g ht/20    Channel   9 : 2452      MHz 11g ht/40-
    Channel   1 : 2412      MHz 11g ht/40+   Channel  10 : 2457      MHz 11b
    Channel   2 : 2417      MHz 11b          Channel  10 : 2457      MHz 11g
    Channel   2 : 2417      MHz 11g          Channel  10 : 2457      MHz 11g ht/20
    Channel   2 : 2417      MHz 11g ht/20    Channel  10 : 2457      MHz 11g ht/40-
    Channel   2 : 2417      MHz 11g ht/40+   Channel  11 : 2462      MHz 11b
    Channel   3 : 2422      MHz 11b          Channel  11 : 2462      MHz 11g
    Channel   3 : 2422      MHz 11g          Channel  11 : 2462      MHz 11g ht/20
    Channel   3 : 2422      MHz 11g ht/20    Channel  11 : 2462      MHz 11g ht/40-
    Channel   3 : 2422      MHz 11g ht/40+   Channel  36 : 5180      MHz 11a
    Channel   4 : 2427      MHz 11b          Channel  36 : 5180      MHz 11a ht/20
    Channel   4 : 2427      MHz 11g          Channel  36 : 5180      MHz 11a ht/40+
    Channel   4 : 2427      MHz 11g ht/20    Channel  40 : 5200      MHz 11a
    Channel   4 : 2427      MHz 11g ht/40+   Channel  40 : 5200      MHz 11a ht/20
    Channel   5 : 2432      MHz 11b          Channel  40 : 5200      MHz 11a ht/40-
    Channel   5 : 2432      MHz 11g          Channel  44 : 5220      MHz 11a
    Channel   5 : 2432      MHz 11g ht/20    Channel  44 : 5220      MHz 11a ht/20
    Channel   5 : 2432      MHz 11g ht/40+   Channel  44 : 5220      MHz 11a ht/40+
    Channel   5 : 2432      MHz 11g ht/40-   Channel  48 : 5240      MHz 11a
    Channel   6 : 2437      MHz 11b          Channel  48 : 5240      MHz 11a ht/20
    Channel   6 : 2437      MHz 11g          Channel  48 : 5240      MHz 11a ht/40-
    Channel   6 : 2437      MHz 11g ht/20    Channel 149 : 5745      MHz 11a
    Channel   6 : 2437      MHz 11g ht/40+   Channel 149 : 5745      MHz 11a ht/20
    Channel   6 : 2437      MHz 11g ht/40-   Channel 149 : 5745      MHz 11a ht/40+
    Channel   7 : 2442      MHz 11b          Channel 153 : 5765      MHz 11a
    Channel   7 : 2442      MHz 11g          Channel 153 : 5765      MHz 11a ht/20
    Channel   7 : 2442      MHz 11g ht/20    Channel 153 : 5765      MHz 11a ht/40-
    Channel   7 : 2442      MHz 11g ht/40+   Channel 157 : 5785      MHz 11a
    Channel   7 : 2442      MHz 11g ht/40-   Channel 157 : 5785      MHz 11a ht/20
    Channel   8 : 2447      MHz 11b          Channel 157 : 5785      MHz 11a ht/40+
    Channel   8 : 2447      MHz 11g          Channel 161 : 5805      MHz 11a
    Channel   8 : 2447      MHz 11g ht/20    Channel 161 : 5805      MHz 11a ht/20
    Channel   8 : 2447      MHz 11g ht/40-   Channel 161 : 5805      MHz 11a ht/40-
    Channel   9 : 2452      MHz 11b          Channel 165 : 5825*     MHz 11a
    
    

    ifconfig athp0_wlan0 channel 48:ht/40-
    ifconfig: SIOCS80211: invalid argument



  • nevermind, i see that you set 11na and i have 11a, after setting to 11na i can configure width to 40Mhz.
    thank you
    the problem for me was hostapd that as soon as i start it, it go back to 11a
    so i changed my script to set mode and channel with ifconfig and start hostapd with only wpa stuff inside config

    /usr/local/etc/rc.d/hostapd-5g.sh

    #/bin/sh
    ifconfig athp0_wlan0 mode 11na
    ifconfig athp0_wlan0 channel 48:ht/40-
    /usr/local/sbin/hostapd -B -P /var/run/hostapd_athp0_wlan0.pid /root/hostapd_athp0_wlan0.conf
    

    and inside /root/hostapd_athp_wlan0.conf

    interface=athp0_wlan0
    logger_syslog=-1
    logger_syslog_level=0
    dump_file=/tmp/hostapd_athp0_wlan0.dump
    ctrl_interface=/var/run/hostapd_wlan0
    ctrl_interface_group=wheel
    ssid=pfSense-5G
    beacon_int=100
    dtim_period=2
    max_num_sta=255
    rts_threshold=2347
    fragm_threshold=2346
    auth_algs=3
    wmm_enabled=1
    wme_enabled=1
    wpa=2
    wpa_key_mgmt=WPA-PSK
    wpa_pairwise=CCMP
    rsn_pairwise=CCMP
    wpa_group_rekey=3600
    wpa_passphrase=somepassword
    
    

    the problem was that i had channel=48:ht/40- before inside hostapd conf and starting it resulted in mode changed to 11a without 40 width
    now i have a 300Mpbs connection on my phone

    Screenshot_20190516-215107_Wi-Fi SweetSpots.jpg


  • Netgate Administrator

    Mmm, yeah it's connecting at 300Mbps at 802.11n. Which is as good as it gets for a 2x2 device. So that's good!

    Room for improvement! ๐Ÿ˜€

    Steve



  • nonSense 12-RELEASE-p4 https://drive.google.com/drive/folders/1fM-Jlmf8BY21kIEGueSxFWmrISZqcDj3
    as before i had to add ALQ and increse #define FIRMWARE_MAX because i had "firmware table full!" followed by kernel panic


  • Netgate Administrator

    Anything else changed in there? Just updated?

    Not really sure what is required to put this into 802.11ac mode. It seems like that would ahve to be set via ifconfig and perhaps that part is missing at this point...

    Steve



  • i just recopiled the pfsense kernel because there was an update on the kernel but nothing to do with wifi in general

    idk where that part is missing on the ath10k driver or kernel

    [2.5.0-DEVELOPMENT][root@pfSense.localdomain]/root: ifconfig athp0_wlan0 mode 11g
    [2.5.0-DEVELOPMENT][root@pfSense.localdomain]/root: ifconfig athp0_wlan0 mode 11a
    [2.5.0-DEVELOPMENT][root@pfSense.localdomain]/root: ifconfig athp0_wlan0 mode 11b
    [2.5.0-DEVELOPMENT][root@pfSense.localdomain]/root: ifconfig athp0_wlan0 mode 11g
    [2.5.0-DEVELOPMENT][root@pfSense.localdomain]/root: ifconfig athp0_wlan0 mode 11na
    [2.5.0-DEVELOPMENT][root@pfSense.localdomain]/root: ifconfig athp0_wlan0 mode 11ac
    ifconfig: SIOCSIFMEDIA (media): Invalid argument
    

    sadly, for sure nothing will come out of it in the next few days



  • https://redmine.pfsense.org/issues/9538

    "ALQ added to all pfSense kernels"

    good news, at least we don't need to recompile nonSense kernel anymore, we just need the modules


  • Netgate Administrator

    Yup, there was some other stuff being added, seemed like a good time. Just using the modules will be waaay easier.

    However I'm not sure the max firmware size increase has been included yet. That has potential to affect far more things so it was being investigated last I heard.

    Steve


  • Netgate Administrator

    @kiokoman said in Athp driver:

    FIRMWARE_MAX

    What value did you end up using for that? Is it possible to allow the firmware to be loaded there by not loading other unused firmwares perhaps?

    Steve



  • yes, i understand that, but i have 2 atheros mini pci express card, 1 for 2.4Ghz that use ath9k that work without problem and one QCA988X for the 5Ghz.
    i set FIRMWARE_MAX to 100 but i put a random value, default was 50 if I remember correctly.


  • Netgate Administrator

    Yes I have two cards in there also. ๐Ÿ˜‰

    But it would be a useful test. I was referring to some of the other stuff like the Broadcom and Chelsio firmwares. I've never tried to check what is loaded there by default though. More research needed!

    Steve



  • i am now on official kernel, after the introduction of ALQ, and that problem did not come out again/i don't need to modify firmware_max anymore.
    also i changed my 4 lan network card from realtek to intel i350-t4. i had too many trouble from realtek.
    so now i don't need to load if_re.ko anymore, maybe that helped.



  • @stephenw10 i'm trying to understand why the athp0 is not recognized as a wireless interface in the gui,
    i track down the problem to this file: /usr/local/www/interfaces_assign.php at line 209 where it say

    if (preg_match($g['wireless_regex'], $_POST['if_add'])) {
    			$config['interfaces'][$newifname]['wireless'] = array();
    			interface_sync_wireless_clones($config['interfaces'][$newifname], false);
    		}
    

    it should save the interface inside a 'wireless' array but it doesn't do it, it save it inside a "enable" array

    i put a print_r($config); inside the php

    [opt5] => Array ( [descr] => WIFI5G [if] => athp0_wlan0 [enable] => [spoofmac] => [ipaddr] => ....
    vs
    [opt3] => Array ( [descr] => WIFI [if] => ath0_wlan0 [wireless] => Array ( [mode] => hostap [standard] =>....

    from what i understand, the 'wireless' tag is readed when you go to configure the interface
    i'm too tired now to go on, i will check further tomorrow, if you have any idea let me know


  • Netgate Administrator

    Yeah I'll have to re-check tomorrow too. I'm pretty sure I found that previously though.... ๐Ÿค”

    Steve



  • found something new inside interfaces_assign.php

    if (preg_match($g['wireless_regex'] =>

    /^(ath|bwi|bwn|ipw|iwi|iwm|iwn|malo|mwl|ral|rsu|rum|run|uath|upgt|ural|urtw|urtwn|wi|wpi|wtap|zyd)[0-9]
    athp does not match preg_match, now i need to find out where this is defined ...

    found it
    /etc/inc/globals.inc
    need to add athp

    "wireless_regex" => "/^(ath|bwi|bwn|ipw|iwi|iwm|iwn|malo|mwl|ral|rsu|rum|run|uath|upgt|ural|urtw|urtwn|wi|wpi|wtap|zyd|athp)[0-9]+/",
    

    after adding it, you need to delete and re-add the interface


  • Netgate Administrator

    Aha, that was it, nice!


Log in to reply