On Thu, 2016-10-13 at 00:25 +0200, Arend Van Spriel wrote: > Op 12 okt. 2016 23:19 schreef "Jörg Krause" <joerg.kra...@embedded.ro > cks>: > > > > On Wed, 2016-10-12 at 23:08 +0200, Arend Van Spriel wrote: > > > Op 12 okt. 2016 21:30 schreef "Jörg Krause" <joerg.krause@embedde > > > d.ro > > > cks>: > > > > > > > > On Mi, 2016-10-12 at 21:08 +0200, Arend van Spriel wrote: > > > > > > > > [snip] > > > > > > > > > On 12-10-16 16:27, Jörg Krause wrote: > > > > > > > > > > > > It is running the iperf server. It is running in station > > > > > > mode > > > > > > as > > > > > > well > > > > > > as in AP mode, depending on the use case. The wireshark > > > > > > dump > > > > > > was > > > > > > taken > > > > > > when the bcm43362 is operating in AP mode. > > > > > > > > > > > > > > > > > > > > What specs does the ARM on your custom board have? > > > > > > > > > > > > Which specs do you mean? > > > > > > > > > > > > > > > > > > > > The trace shows that it does not do > > > > > > > aggregation. What it does not show is whether A-MPDU was > > > > > > > setup, > > > > > > > ie. > > > > > > > ADDBA message exchange. So could you create a similar > > > > > > > capture > > > > > > > including > > > > > > > connection setup, ie. AUTH/ASSOC, etc. > > > > > > > > > > > > Yes, I can do that. Note, that I am using wpa_supplicant > > > > > > 2.5 > > > > > > for AP > > > > > > mode operation (not hostapd). > > > > > > > > > > ok. unchartered territory for me. In the beacon frame I see > > > > > > > > > > .... ..01 = Maximum Rx A-MPDU Length: 0x1 (16383[Bytes]) > > > > > ...1 10.. = MPDU Density: 8 [usec] (0x6) > > > > > > > > > > In the trace it is only ~1500 bytes so no A-MPDU. > > > > > > > > The issue is not only valid for operating the BCM43362 in AP > > > > mode, > > > > but > > > > also in station mode. The TCP throughput is the same for both > > > > modes. > > > > > > > > > What device is in the notebook? > > > > > > > > It is a Broadcom 43225. However, the low TCP throughput is not > > > > specific > > > > to this device but with all kind of devices including > > > > Smartphones, > > > > Notebooks, PCs running the iperf client. > > > > > > > > > Can you use 'iw list' there to obtain info. > > > > > > > > $ iw list > > > > Wiphy phy0 > > > > max # scan SSIDs: 4 > > > > max scan IEs length: 2257 bytes > > > > max # sched scan SSIDs: 0 > > > > max # match sets: 0 > > > > max # scan plans: 1 > > > > max scan plan interval: -1 > > > > max scan plan iterations: 0 > > > > Retry short limit: 7 > > > > Retry long limit: 4 > > > > Coverage class: 0 (up to 0m) > > > > Device supports RSN-IBSS. > > > > Supported Ciphers: > > > > * WEP40 (00-0f-ac:1) > > > > * WEP104 (00-0f-ac:5) > > > > * TKIP (00-0f-ac:2) > > > > * CCMP (00-0f-ac:4) > > > > * 00-0f-ac:10 > > > > * GCMP (00-0f-ac:8) > > > > * 00-0f-ac:9 > > > > Available Antennas: TX 0 RX 0 > > > > Supported interface modes: > > > > * IBSS > > > > * managed > > > > * AP > > > > * AP/VLAN > > > > * monitor > > > > Band 1: > > > > Capabilities: 0x70 > > > > HT20 > > > > Static SM Power Save > > > > RX Greenfield > > > > RX HT20 SGI > > > > RX HT40 SGI > > > > No RX STBC > > > > Max AMSDU length: 3839 bytes > > > > No DSSS/CCK HT40 > > > > Maximum RX AMPDU length 65535 bytes > > > > (exponent: > > > > 0x003) > > > > Minimum RX AMPDU time spacing: 8 usec > > > > (0x06) > > > > HT Max RX data rate: 500 Mbps > > > > HT TX/RX MCS rate indexes supported: 0-15 > > > > Bitrates (non-HT): > > > > * 1.0 Mbps > > > > * 2.0 Mbps (short preamble > > > > supported) > > > > * 5.5 Mbps (short preamble > > > > supported) > > > > * 11.0 Mbps (short preamble > > > > supported) > > > > * 6.0 Mbps > > > > * 9.0 Mbps > > > > * 12.0 Mbps > > > > * 18.0 Mbps > > > > * 24.0 Mbps > > > > * 36.0 Mbps > > > > * 48.0 Mbps > > > > * 54.0 Mbps > > > > Frequencies: > > > > * 2412 MHz [1] (19.0 dBm) > > > > * 2417 MHz [2] (19.0 dBm) > > > > * 2422 MHz [3] (19.0 dBm) > > > > * 2427 MHz [4] (19.0 dBm) > > > > * 2432 MHz [5] (19.0 dBm) > > > > * 2437 MHz [6] (19.0 dBm) > > > > * 2442 MHz [7] (19.0 dBm) > > > > * 2447 MHz [8] (19.0 dBm) > > > > * 2452 MHz [9] (19.0 dBm) > > > > * 2457 MHz [10] (19.0 dBm) > > > > * 2462 MHz [11] (19.0 dBm) > > > > * 2467 MHz [12] (19.0 dBm) (no IR) > > > > * 2472 MHz [13] (19.0 dBm) (no IR) > > > > * 2484 MHz [14] (disabled) > > > > Supported commands: > > > > * new_interface > > > > * set_interface > > > > * new_key > > > > * start_ap > > > > * new_station > > > > * new_mpath > > > > * set_mesh_config > > > > * set_bss > > > > * authenticate > > > > * associate > > > > * deauthenticate > > > > * disassociate > > > > * join_ibss > > > > * join_mesh > > > > * set_tx_bitrate_mask > > > > * frame > > > > * frame_wait_cancel > > > > * set_wiphy_netns > > > > * set_channel > > > > * set_wds_peer > > > > * probe_client > > > > * set_noack_map > > > > * register_beacons > > > > * start_p2p_device > > > > * set_mcast_rate > > > > * set_qos_map > > > > * connect > > > > * disconnect > > > > Supported TX frame types: > > > > * IBSS: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 > > > > 0x70 0x80 > > > > 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0 > > > > * managed: 0x00 0x10 0x20 0x30 0x40 0x50 > > > > 0x60 > > > > 0x70 > > > > 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0 > > > > * AP: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 > > > > 0x70 > > > > 0x80 > > > > 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0 > > > > * AP/VLAN: 0x00 0x10 0x20 0x30 0x40 0x50 > > > > 0x60 > > > > 0x70 > > > > 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0 > > > > * mesh point: 0x00 0x10 0x20 0x30 0x40 > > > > 0x50 > > > > 0x60 0x70 > > > > 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0 > > > > * P2P-client: 0x00 0x10 0x20 0x30 0x40 > > > > 0x50 > > > > 0x60 0x70 > > > > 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0 > > > > * P2P-GO: 0x00 0x10 0x20 0x30 0x40 0x50 > > > > 0x60 > > > > 0x70 > > > > > > 0x80 > > > > 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0 > > > > * P2P-device: 0x00 0x10 0x20 0x30 0x40 > > > > 0x50 > > > > 0x60 0x70 > > > > 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0 > > > > Supported RX frame types: > > > > * IBSS: 0x40 0xb0 0xc0 0xd0 > > > > * managed: 0x40 0xd0 > > > > * AP: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0 > > > > * AP/VLAN: 0x00 0x20 0x40 0xa0 0xb0 0xc0 > > > > 0xd0 > > > > * mesh point: 0xb0 0xc0 0xd0 > > > > * P2P-client: 0x40 0xd0 > > > > * P2P-GO: 0x00 0x20 0x40 0xa0 0xb0 0xc0 > > > > 0xd0 > > > > * P2P-device: 0x40 0xd0 > > > > software interface modes (can always be added): > > > > * AP/VLAN > > > > * monitor > > > > interface combinations are not supported > > > > HT Capability overrides: > > > > * MCS: ff ff ff ff ff ff ff ff ff ff > > > > * maximum A-MSDU length > > > > * supported channel width > > > > * short GI for 40 MHz > > > > * max A-MPDU length exponent > > > > * min MPDU start spacing > > > > Device supports TX status socket option. > > > > Device supports HT-IBSS. > > > > Device supports SAE with AUTHENTICATE command > > > > Device supports low priority scan. > > > > Device supports scan flush. > > > > Device supports AP scan. > > > > Device supports per-vif TX power setting > > > > Driver supports a userspace MPM > > > > Device supports configuring vdev MAC-addr on > > > > create. > > > > > > > > > > > > > > > > > > > > > > > > Just to confirm. You are using the firmware from linux- > > > > > > > firmware, > > > > > > > right? > > > > > > > > > > > > Right. > > > > > > > > > > > > > > > > > > > > Or are you using firmware from the wiced dev kit? > > > > > > > > > > > > No. I guess you mean bcmdhd? > > > > > > > > > > You referred to 20 Mbps claim on wiced dev kit page at mouser > > > > > so > > > > > I > > > > > assumed you were using that and it includes firmware. As you > > > > > confirmed > > > > > using firmware from linux-firmware repo this question does > > > > > not > > > > > matter. > > > > > > > > I see! Note, that I measured >20MB throughput on the > > > > Cubietruck, > > > > which > > > > is using the AP6210, but also the brcmfmac driver. > > > > > > So does your custom ARM board have an Ethernet socket, ie. run > > > iperf > > > server > > > on another device hooked up to the AP over Ethernet. > > > > Yes, it does have Ethernet. I hope that I have understand you > > correctly, so I run an iperf server an my PC and on my ARM board > > the > > iperf client. Both devices are connected via Ethernet to the Router > > (using a Powerline adaptor): > > > > # iperf3 -c 192.168.178.41 -i 1 -t 10 > > Connecting to host 192.168.178.41, port 5201 > > [ 4] local 192.168.178.40 port 36130 connected to 192.168.178.41 > > port > > 5201 > > [ ID] Interval Transfer Bandwidth Retr Cwnd > > [ 4] 0.00-1.09 sec 2.50 MBytes 19.2 Mbits/sec 0 14.1 > > KBytes > > [ 4] 1.09-2.21 sec 2.50 MBytes 18.8 Mbits/sec 0 14.1 > > KBytes > > [ 4] 2.21-3.30 sec 2.50 MBytes 19.2 Mbits/sec 0 14.1 > > KBytes > > [ 4] 3.30-4.39 sec 2.50 MBytes 19.3 Mbits/sec 0 14.1 > > KBytes > > [ 4] 4.39-5.48 sec 2.50 MBytes 19.2 Mbits/sec 0 14.1 > > KBytes > > [ 4] 5.48-6.02 sec 1.25 MBytes 19.3 Mbits/sec 0 14.1 > > KBytes > > [ 4] 6.02-7.11 sec 2.50 MBytes 19.3 Mbits/sec 0 14.1 > > KBytes > > [ 4] 7.11-8.20 sec 2.50 MBytes 19.3 Mbits/sec 0 14.1 > > KBytes > > [ 4] 8.20-9.43 sec 2.50 MBytes 17.1 Mbits/sec 0 14.1 > > KBytes > > [ 4] 9.43-10.51 sec 2.50 MBytes 19.4 Mbits/sec 0 14.1 > > KBytes > > - - - - - - - - - - - - - - - - - - - - - - - - - > > [ ID] Interval Transfer Bandwidth Retr > > [ 4] 0.00-10.51 sec 23.8 MBytes 19.0 > > Mbits/sec 0 sender > > [ 4] 0.00-10.51 sec 23.8 MBytes 19.0 > > Mbits/sec receiver > > > > iperf Done. > > Sorry. I meant not running iperf server nor client on AP. A bit more > graphic: > > Notebook --> AP --> PC > > Iperf client on notebook and iperf server on PC. Notebook to AP is > wireless, AP to PC is wired.
I see! Howver, this needs routing on the AP, which I have not done yet. What do you expect from this test? I compared the values from the Ethernet test with an Application Note [1] I found at NXP for the i.MX28. Running iperf shows an throughput of >60 MBits/sec. I run the test cases again without Powerline adapter by connecting both devices directly to the Router and even installed iperf (instead of iperf3). Nevertheless, I am stuck with 20 MBits/sec. Note, that the Application Note was done with a legacy Linux Kernel 2.6 whereas I use mainline Linux Kernel 4.7. Maybe something is missing in mainline? For now, I will consider that brcmfmac is not responsible for the low throughput and I will move this issue to the ARM linux mailing list. Many thanks so far for the support! I will keep you in the loop. [1] http://cache.freescale.com/files/32bit/doc/app_note/AN4544.pdf Best regards Jörg Krause