it looks anything started hostapd before (directly after install)…i booted again and looked via “ps ax” and saw a hostapd process…killed it, started my again, and i got AP enabled
looks like it is now started by systemd…
root@bpi-r64:~# systemctl status hostapd -l
hostapd.service - Advanced IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP Authe
nt
Loaded: loaded (/lib/systemd/system/hostapd.service; enabled; vendor preset:
Active: inactive (dead) since Fri 2019-11-22 17:40:52 UTC; 7min ago
Process: 239 ExecStart=/usr/sbin/hostapd -B -P /run/hostapd.pid -B $DAEMON_OPT
Main PID: 250 (code=exited, status=0/SUCCESS)
....
root@bpi-r64:~# grep CONF /lib/systemd/system/hostapd.service
Environment=DAEMON_CONF=/etc/hostapd/hostapd.conf
ExecStart=/usr/sbin/hostapd -B -P /run/hostapd.pid -B $DAEMON_OPTS ${DAEMON_CONF}
but it uses same config, i’ve created
since i have not yet an antenna connected i don’t see the AP on my phone…but i see some frame events running through the log
which codebase do you use? you have to use very recent version of openwrt because you need 5.4 backport patches…thats why i did not get it compiled on 4.19…5.4 seems to work…got some antennas/cables last days but have not found yet time to connect and test if ap accept connections…only see that wifi-device is created and i can start hostapd on it
ok, i do not know openwrt very well…i guess the version you use have not latest backports (this commit has date 3 Months ago…5.4-rc1 is ~ 10 weeks old)
btw. i had successfully connect to r64 using this driver in debian (after connecting a antenna to one of the 4 wifi-ports)…only a quick test (5.4-r64-main/pcie)
Yes, I have success build mt7622 module with latest openwrt source code. The latest openwrt use 4.19.86 kernel.
I will try to build openwrt latest source into omr.
Thank you!
@nagi, mt7622 wifi speed up to 288mbps? I have build openwrt (4.19.86 kernel) with your mt7622 module, and the wifi speed only upload 44mbps, download 68mbps.
And mt7622 wifi only support 2.4G, not support 5.8G.
I tested it to get internet via Wifi (client mode!) for BPI-R64, but failed.
Is it possible to fix that?
I dont have /dev/rfkill, by the way, maybe that is the root cause.
The same command at my computer x86 works (I get connection via Wifi).
root@bpi-r64:~# wpa_supplicant -i wlan0 -c <(wpa_passphrase catbo passphrase)
Successfully initialized wpa_supplicant
rfkill: Cannot open RFKILL control device
wlan0: SME: Trying to authenticate with cc:2d:21:14:60:81 (SSID='catbo' freq=2437 MHz)
nl80211: Failed to open /proc/sys/net/ipv6/conf/wlan0/drop_unicast_in_l2_multicast: No such file or directory
nl80211: Failed to set IPv6 unicast in multicast filter
wlan0: SME: Trying to authenticate with cc:2d:21:14:60:81 (SSID='catbo' freq=2437 MHz)
nl80211: Failed to open /proc/sys/net/ipv6/conf/wlan0/drop_unicast_in_l2_multicast: No such file or directory
nl80211: Failed to set IPv6 unicast in multicast filter
wlan0: SME: Trying to authenticate with cc:2d:21:14:60:81 (SSID='catbo' freq=2437 MHz)
nl80211: Failed to open /proc/sys/net/ipv6/conf/wlan0/drop_unicast_in_l2_multicast: No such file or directory
nl80211: Failed to set IPv6 unicast in multicast filter
wlan0: SME: Trying to authenticate with cc:2d:21:14:60:81 (SSID='catbo' freq=2437 MHz)
wlan0: CTRL-EVENT-SSID-TEMP-DISABLED id=0 ssid="catbo" auth_failures=1 duration=10 reason=CONN_FAILED
nl80211: Failed to open /proc/sys/net/ipv6/conf/wlan0/drop_unicast_in_l2_multicast: No such file or directory
nl80211: Failed to set IPv6 unicast in multicast filter
^Cnl80211: Failed to open /proc/sys/net/ipv6/conf/wlan0/drop_unicast_in_l2_multicast: No such file or directory
nl80211: Failed to set IPv6 unicast in multicast filter
nl80211: Failed to open /proc/sys/net/ipv6/conf/wlan0/drop_unicast_in_l2_multicast: No such file or directory
nl80211: Failed to set IPv6 unicast in multicast filter
nl80211: deinit ifname=wlan0 disabled_11b_rates=0
wlan0: CTRL-EVENT-TERMINATING
root@bpi-r64:~#
dmesg at the same time:
[104448.297511] wlan0: authenticate with cc:2d:21:14:60:81
[104448.349616] wlan0: send auth to cc:2d:21:14:60:81 (try 1/3)
[104448.361821] wlan0: send auth to cc:2d:21:14:60:81 (try 2/3)
[104448.373934] wlan0: send auth to cc:2d:21:14:60:81 (try 3/3)
[104448.386182] wlan0: authentication with cc:2d:21:14:60:81 timed out
[104452.541424] wlan0: authenticate with cc:2d:21:14:60:81
[104452.593539] wlan0: send auth to cc:2d:21:14:60:81 (try 1/3)
[104452.605874] wlan0: send auth to cc:2d:21:14:60:81 (try 2/3)
[104452.617989] wlan0: send auth to cc:2d:21:14:60:81 (try 3/3)
[104452.630210] wlan0: authentication with cc:2d:21:14:60:81 timed out
[104457.185530] wlan0: authenticate with cc:2d:21:14:60:81
[104457.237700] wlan0: send auth to cc:2d:21:14:60:81 (try 1/3)
[104457.249998] wlan0: send auth to cc:2d:21:14:60:81 (try 2/3)
[104457.262245] wlan0: send auth to cc:2d:21:14:60:81 (try 3/3)
[104457.274466] wlan0: authentication with cc:2d:21:14:60:81 timed out
[104462.333487] wlan0: authenticate with cc:2d:21:14:60:81
[104462.385575] wlan0: send auth to cc:2d:21:14:60:81 (try 1/3)
[104462.397729] wlan0: send auth to cc:2d:21:14:60:81 (try 2/3)
[104462.410166] wlan0: send auth to cc:2d:21:14:60:81 (try 3/3)
[104462.422325] wlan0: authentication with cc:2d:21:14:60:81 timed out
tried recompiling 5.4-main and ran into same problem…looks like module is loaded to fast (but time is 1 sec later than old 5.4-new tree, so something seems blocking)…i unloaded module and loaded it again. after that i got
Is it compatible with my current dts-node? still wondering why root and some others (mt76x0,76x2,7603) do not have a Kconfig file…and still the problem with trace.o (trace.h not found)
after fixing this, i get this on 5.4 with this driver:
drivers/net/wireless/mediatek/mt76_new/mac80211.c: In function 'mt76_phy_init':
drivers/net/wireless/mediatek/mt76_new/mac80211.c:286:31: error: 'NL80211_EXT_FEATURE_AQL' undeclared (first use in this function); did you mean 'NL80211_EXT_FEATURE_TXQS'?
wiphy_ext_feature_set(wiphy, NL80211_EXT_FEATURE_AQL);
^~~~~~~~~~~~~~~~~~~~~~~
NL80211_EXT_FEATURE_TXQS
drivers/net/wireless/mediatek/mt76_new/mac80211.c:286:31: note: each undeclared identifier is reported only once for each function it appears in
drivers/net/wireless/mediatek/mt76_new/mac80211.c: In function 'mt76_airtime_report':
drivers/net/wireless/mediatek/mt76_new/mac80211.c:760:12: error: implicit declaration of function 'ieee80211_calc_rx_airtime'; did you mean 'ieee80211_check_tim'? [-Werror=implicit-function-declaration]
airtime = ieee80211_calc_rx_airtime(dev->hw, &info, len);
^~~~~~~~~~~~~~~~~~~~~~~~~
ieee80211_check_tim
after fixing them…there are many new errors…so new driver not usable for me (at least in 5.4)
net/mac80211/main.c: In function 'ieee80211_alloc_hw_nm':
net/mac80211/main.c:673:7: error: 'struct ieee80211_local' has no member named 'aql_threshold'
local->aql_threshold = IEEE80211_AQL_THRESHOLD;
^~
net/mac80211/main.c:673:25: error: 'IEEE80211_AQL_THRESHOLD' undeclared (first use in this function); did you mean 'IEEE80211_MAX_RTS_THRESHOLD'?
local->aql_threshold = IEEE80211_AQL_THRESHOLD;
^~~~~~~~~~~~~~~~~~~~~~~
IEEE80211_MAX_RTS_THRESHOLD
net/mac80211/main.c:673:25: note: each undeclared identifier is reported only once for each function it appears in
net/mac80211/main.c:674:19: error: 'struct ieee80211_local' has no member named 'aql_total_pending_airtime'
atomic_set(&local->aql_total_pending_airtime, 0);
^~
scripts/Makefile.build:265: recipe for target 'net/mac80211/main.o' failed
make[2]: *** [net/mac80211/main.o] Error 1
make[2]: *** Waiting for unfinished jobs....
CC [M] net/wireless/sysfs.o
net/mac80211/sta_info.c: In function 'ieee80211_sta_update_pending_airtime':
net/mac80211/sta_info.c:1908:25: error: 'struct airtime_info' has no member named 'aql_tx_pending'
&sta->airtime[ac].aql_tx_pending);
^
net/mac80211/sta_info.c:1910:32: error: 'struct ieee80211_local' has no member named 'aql_total_pending_airtime'
atomic_add(tx_airtime, &local->aql_total_pending_airtime);
^~
net/mac80211/sta_info.c:1916:30: error: 'struct airtime_info' has no member named 'aql_tx_pending'
&sta->airtime[ac].aql_tx_pending);
^
net/mac80211/sta_info.c:1920:36: error: 'struct airtime_info' has no member named 'aql_tx_pending'
atomic_cmpxchg(&sta->airtime[ac].aql_tx_pending,
^
net/mac80211/sta_info.c:1925:18: error: 'struct ieee80211_local' has no member named 'aql_total_pending_airtime'
&local->aql_total_pending_airtime);
^~
net/mac80211/sta_info.c:1930:24: error: 'struct ieee80211_local' has no member named 'aql_total_pending_airtime'
atomic_cmpxchg(&local->aql_total_pending_airtime,
^~
scripts/Makefile.build:265: recipe for target 'net/mac80211/sta_info.o' failed
any chance to fix only the mt7622 semaphore issue? as far as i see it checks status and this failes…maybe a sleep/delay may help?
I’ve cherry-picked your patches from my older 5.4 branch (where i do not get this error). I guess some recent changes in 5.4 breaking it…
My node contains power-domain
I’m still on 5.4, Or do you mean it is switched on anywhere else/later? Where is powerdomain switched on? It is working on unload/load,so i guess it’s a timing issue.
Currently i do not want to use backport patches because it makes it difficulter applying updates. I only wanted to try newer driver version to compare.
unload/load is independ from hostapd/wpa-supplicant (which depends on wlan-device exists). It is needed to get drivers probe working (patch semaphore) to create the wlan-device.
./include/net/mac80211.h:1067:6: error: 'struct ieee80211_tx_info' has no member named 'tx_time_est'
info->tx_time_est = min_t(u16, tx_time_est, 4095) >> 2;
but i want to know why your current version is failing some times on the Patch semaphore…was working on 5.4-r64-rc (5.4.0-rc1), but not on 5.4.12
I has same problem with semaphore, and found out after some time that modules conflict - if rfkill module is loaded earlier than mt7622 then error arise. So I made softdep and the error has gone: