On 19/04/2023 13:01, Martin Kaistra wrote: > This series intends to bring AP mode support to the rtl8xxxu driver, > more specifically for the 8188f, because this is the HW I have. > The work is based on the vendor driver as I do not have access to > datasheets. > > Also while doing some measurements with iperf3 to compare with the > vendor driver, I saw, that TCP traffic from AP to STA is slower than in > the vendor driver. For UDP it looks fine. I hope I can get some help to > fix this. > > * vendor driver: > > without 802.11n: > UDP (AP -> STA): 27 Mbits/sec > UDP (STA -> AP): 33 Mbits/sec > TCP (AP -> STA): 24 Mbits/sec > TCP (STA -> AP): 26 Mbits/sec > > with 802.11n: > UDP (AP -> STA): 51 Mbits/sec > UDP (STA -> AP): 35 Mbits/sec > TCP (AP -> STA): 40 Mbits/sec > TCP (STA -> AP): 36 Mbits/sec > > * rtl8xxxu: > > without 802.11n: > UDP (AP -> STA): 25 Mbits/sec > UDP (STA -> AP): 31 Mbits/sec > TCP (AP -> STA): 3 Mbits/sec ! > TCP (STA -> AP): 25 Mbits/sec > > with 802.11n: > UDP (AP -> STA): 41 Mbits/sec > UDP (STA -> AP): 36 Mbits/sec > TCP (AP -> STA): 3 Mbits/sec ! > TCP (STA -> AP): 32 Mbits/sec > > Thanks, > Martin > > v2 changelog: > - dropped RFC prefix > - rebase patches to newest wireless-next > - add some R-bs > - new patch: "Add parameter force to rtl8xxxu_refresh_rate_mask" > - new patch: "Remove usage of ieee80211_get_tx_rate()" > - new patch: "Remove usage of tx_info->control.rates[0].flags" > - new patch: "Set maximum number of supported stations" > - add macro for broadcast/multicast frames macid > - add more explanation about beacon queue in commit message of patch 2 > - add macros for bit definitions for beacon functions > - implement enable_beacon = false case > - fix beacon valid loop so that error condition is actually reached > - add more explanation about setting mac address register in add_interface > in commit message of patch 6 > - rename role macros for connect report h2c > - use bitmap for assigning macids > - add helper function for looking up assigned macids > - move patch 7 so we can use rtl8xxxu_get_macid helper > - add sta_remove callback > - do things in sta_add only in AP mode > - use IEEE80211_TX_CTL_ASSIGN_SEQ flag to determine when to use HW sequence > numbers > - add priv->vif null pointer check in configure_filter, rework setting > BSSID_BEACON/BSSID_MATCH in RCR > > v1: https://lore.kernel.org/linux-wireless/20230322171905.492855-1-martin.kaistra@xxxxxxxxxxxxx/ > The system didn't freeze with v2! Also the download speed I got on the phone at speedtest.net was around 35 megabits/second, which is normal. Did you test v2 with iperf3? I saw a few of these in the journal: usb 1-2: rtl8xxxu_send_beacon_frame: Failed to read beacon valid bit I'm not sure what caused that.