Received: by 2002:a25:ab43:0:0:0:0:0 with SMTP id u61csp4705313ybi; Tue, 11 Jun 2019 11:03:25 -0700 (PDT) X-Google-Smtp-Source: APXvYqzO9VZZjXuovKfk6y/z3VZQ/4m/FDdcxo+bKW8rlVD37AJThX8sVJB3HEZQp7Qw3xfrto3/ X-Received: by 2002:a65:6541:: with SMTP id a1mr12633424pgw.409.1560276205364; Tue, 11 Jun 2019 11:03:25 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1560276205; cv=pass; d=google.com; s=arc-20160816; b=xZy7SUnUqDX8klru8YT55PBFQaVWtb9cI6x4FVUH2Q9phAj+uaY8ydCbKrdkiDdDYe hIQ7Qt5AVh+refInQoF9Z4NNsYYC1PDi3tVNnJ1wiJ6hdbq+VAvZBwFX3cKoDDLZCohe 1bGA6YpE1mAPVPlqbly8lFBuI1l/n2CNY+bUtkjQnWI331otrDgziZWi7xefhBsE86Bg GpYQ+o4SyI3YLREmyLi+rOne0kqo1JNAie9La0IA+z7pXFMtAlcsrfY4L835rzWUXhqC IpAXKfucZ384a4QrjoRZFljyvO3bdZXBhba21wa4vlR3B4Phy8JtdZdOOKfE1BXY31Kt Ho/w== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=CMl0fgaxSJ1kKfd1OYfyvydXTTqFAqN2BtLod+U3mBs=; b=0FxTWyCzGchXSyrtqLIqH6haNEVK03SLuqj/RQYLBNg2jHHinu1PoQlAWUwWXPQWbZ CorePxLywi1ZNd6cfRBmXRm4KgaFy3iT6NLM7E8Ssm1IGhoVkhLu7sfp+igXTkYV355D iPhEycDqUY296Sl1H/RnzCEchzYGrEsClS6HhfBtwDgn8tvonS4TT01/4M4OyqaIv+Bi lJZEPfp7ggtvl7mlJm94jJnqEmr5SohLMylhqAabxXfY4CzFFUAedRyWA8+NkPG4w7tG YYN3hmJZfw6GeSiQY7dRMUu9VstNqPbr5X4U98Qq0cSZ91DOQoa7ohEUhSmt6ePctzb1 rAyA== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@narfation.org header.s=20121 header.b=B6LgUOmk; arc=pass (i=1); spf=pass (google.com: best guess record for domain of linux-wireless-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=narfation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id q4si13738698pfb.272.2019.06.11.11.03.03; Tue, 11 Jun 2019 11:03:25 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-wireless-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@narfation.org header.s=20121 header.b=B6LgUOmk; arc=pass (i=1); spf=pass (google.com: best guess record for domain of linux-wireless-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=narfation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2406733AbfFKSC4 (ORCPT + 99 others); Tue, 11 Jun 2019 14:02:56 -0400 Received: from durin.narfation.org ([79.140.41.39]:35946 "EHLO durin.narfation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2406685AbfFKSC4 (ORCPT ); Tue, 11 Jun 2019 14:02:56 -0400 Received: from sven-desktop.home.narfation.org (p200300C5970379EE000000000000070D.dip0.t-ipconnect.de [IPv6:2003:c5:9703:79ee::70d]) by durin.narfation.org (Postfix) with ESMTPSA id 8AC1C1100D3; Tue, 11 Jun 2019 20:02:53 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=narfation.org; s=20121; t=1560276173; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=CMl0fgaxSJ1kKfd1OYfyvydXTTqFAqN2BtLod+U3mBs=; b=B6LgUOmkM0FdtUxgzhL4ya7hvTlHsNjYNjotOWzmyuRvJCSxfc6Dx+qvBY3g1+6MzXtP9+ m+e/Ua72eFZPFjhKa6Pqb1+X/PS1o9xfq/DbEhlzT0YNwlAPvIs9xdxz5/NbYsQxyTIcl6 lm2ZGwGi0h9yiyGwr9MtCeQdraRMZlI= From: Sven Eckelmann To: linux-wireless@vger.kernel.org Cc: ath11k@lists.infradead.org, Sven Eckelmann Subject: [RFC PATCH v2 0/3] mac80211/ath11k: HE mesh support Date: Tue, 11 Jun 2019 20:02:44 +0200 Message-Id: <20190611180247.19524-1-sven@narfation.org> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=narfation.org; s=20121; t=1560276173; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=CMl0fgaxSJ1kKfd1OYfyvydXTTqFAqN2BtLod+U3mBs=; b=nh89UeX/quPoivBAGczw0CNMy/aTzecgvxn3cVO28P0LMkq+inp7hctsJSbTqkaMAtFs4d jqpKK40YVc/vz9CCtptc/mpZ6WPFDlPdWbRQm4js7DBU12lVryWHJLZssoSpkX+6hUK/sz hU3QM3TMLPlfJDYHvbUH6ZwxgFXpvrc= ARC-Seal: i=1; s=20121; d=narfation.org; t=1560276173; a=rsa-sha256; cv=none; b=LYaki6mTqN1XBeN/1Yrp+MxGOFa6oScyOQif/Ets46gUu6+ETGLrOGSQ7EMHdGbCcVd8WS W3O2I6O+FeVDEKmpv35GpBRfpWjncrZzq++4vN/Hki/1Sz/c5F5M52OUXnFlvshlcZ/eSY lhmC5nlkOmpSh2t4xNE291wzHhkLogk= ARC-Authentication-Results: i=1; ORIGINATING; auth=pass smtp.auth=sven smtp.mailfrom=sven@narfation.org Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org Hi, Some features of 802.11ax without central organizing (AP) STA can also be used in mesh mode. The main goal is to get this working for ath11k. But there are various problems at the moment with the firmware. I hangs from time to time during assoc (especially when using HE) or just doesn't enable HE rates when communicating with peers. Even when the peer was successfully detected as HE capable by the upper layers: root@OpenWrt:/# cat /sys/kernel/debug/ieee80211/phy2/netdev:mesh2/stations/00:03:7f:12:bb:97/he_capa HE supported MAC-CAP: 0x09 0x0d 0x08 0x0a 0x40 0x00 HTC-HE DYNAMIC-FRAG-LEVEL-1 MAX-NUM-FRAG-MSDU-1 MIN-FRAG-SIZE-128 TF-MAC-PAD-DUR-24US MULTI-TID-AGG-RX-QOS-1 LINK-ADAPTATION-NO-FEEDBACK BSR OMI-CONTROL MAX-AMPDU-LEN-EXP-VHT-1 AMSDU-IN-AMPDU MULTI-TID-AGG-TX-QOS-0 PHY CAP: 0x1c 0x70 0x0c 0x80 0x0d 0x43 0x81 0x1c 0x00 0x00 0x00 CHANNEL-WIDTH-SET-40MHZ-80MHZ-IN-5G CHANNEL-WIDTH-SET-160MHZ-IN-5G CHANNEL-WIDTH-SET-80PLUS80-MHZ-IN-5G IEEE80211-HE-PHY-CAP1-DEVICE-CLASS-A LDPC-CODING-IN-PAYLOAD HY-CAP1-HE-LTF-AND-GI-FOR-HE-PPDUS-0-8US MIDAMBLE-RX-MAX-NSTS-0 STBC-TX-UNDER-80MHZ STBC-RX-UNDER-80MHZ DCM-MAX-CONST-TX-NO-DCM DCM-MAX-CONST-RX-NO-DCM SU-BEAMFORMER SU-BEAMFORMEE BEAMFORMEE-MAX-STS-UNDER-7 BEAMFORMEE-MAX-STS-ABOVE-4 NUM-SND-DIM-UNDER-80MHZ-4 NUM-SND-DIM-ABOVE-80MHZ-1 NG16-SU-FEEDBACK CODEBOOK-SIZE-42-SU PPE-THRESHOLD-PRESENT HE-SU-MU-PPDU-4XLTF-AND-08-US-GI MAX-NC-4 DCM-MAX-RU-242 NOMINAL-PACKET-PADDING-0US RX-MCS-80: 0xffaa RX-MCS-80-0-SUPPORT-0-11 RX-MCS-80-1-SUPPORT-0-11 RX-MCS-80-2-SUPPORT-0-11 RX-MCS-80-3-SUPPORT-0-11 TX-MCS-80: 0xffaa TX-MCS-80-0-SUPPORT-0-11 TX-MCS-80-1-SUPPORT-0-11 TX-MCS-80-2-SUPPORT-0-11 TX-MCS-80-3-SUPPORT-0-11 RX-MCS-160: 0xfffa RX-MCS-160-0-SUPPORT-0-11 RX-MCS-160-1-SUPPORT-0-11 RX-MCS-160-2-NOT-SUPPORTED RX-MCS-160-3-NOT-SUPPORTED TX-MCS-160: 0xfffa TX-MCS-160-0-SUPPORT-0-11 TX-MCS-160-1-SUPPORT-0-11 TX-MCS-160-2-NOT-SUPPORTED TX-MCS-160-3-NOT-SUPPORTED RX-MCS-80P80: 0xfffa RX-MCS-80P80-0-SUPPORT-0-11 RX-MCS-80P80-1-SUPPORT-0-11 RX-MCS-80P80-2-NOT-SUPPORTED RX-MCS-80P80-3-NOT-SUPPORTED TX-MCS-80P80: 0xfffa TX-MCS-80P80-0-SUPPORT-0-11 TX-MCS-80P80-1-SUPPORT-0-11 TX-MCS-80P80-2-NOT-SUPPORTED TX-MCS-80P80-3-NOT-SUPPORTED PPE-THRESHOLDS: 0x3b 0x1c 0xc7 0x71 0x1c 0xc7 0x71 0x1c 0xc7 0x71 root@OpenWrt:/# iw dev mesh2 station dump Station 00:03:7f:12:bb:97 (on mesh2) inactive time: 310 ms rx bytes: 161064 rx packets: 1619 tx bytes: 55454 tx packets: 477 tx retries: 405 tx failed: 0 rx drop misc: 6 signal: -95 dBm signal avg: -67 dBm tx bitrate: 1733.3 MBit/s VHT-MCS 9 80MHz short GI VHT-NSS 4 rx bitrate: 1733.3 MBit/s VHT-MCS 9 80MHz short GI VHT-NSS 4 rx duration: 0 us mesh llid: 0 mesh plid: 0 mesh plink: ESTAB mesh local PS mode: ACTIVE mesh peer PS mode: ACTIVE mesh non-peer PS mode: ACTIVE authorized: yes authenticated: yes associated: yes preamble: long WMM/WME: yes MFP: no TDLS peer: no DTIM period: 2 beacon interval:1000 connected time: 536 seconds But there is currently no documentation what the firmware requires (next to the already existing things for AP/managed) to enable HE for mesh. hwsim can be used in the meantime as basis for initial development of these features without having access to HW. Kind regards, Sven Sven Eckelmann (3): mac80211_hwsim: Register support for HE meshpoint mac80211: implement HE support for mesh ath11k: register HE mesh capabilities drivers/net/wireless/ath/ath11k/mac.c | 56 +++++ drivers/net/wireless/mac80211_hwsim.c | 283 +++++++++++++++++--------- include/net/cfg80211.h | 19 ++ net/mac80211/ieee80211_i.h | 2 + net/mac80211/mesh.c | 61 ++++++ net/mac80211/mesh.h | 4 + net/mac80211/mesh_plink.c | 11 +- net/mac80211/util.c | 52 +++++ 8 files changed, 393 insertions(+), 95 deletions(-) -- 2.20.1