Received: by 2002:a05:6a10:1287:0:0:0:0 with SMTP id d7csp1378915pxv; Fri, 16 Jul 2021 08:05:09 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyBw3Xqs/ivwNNJKMrlm7cgRLWi3f14UZDXJcmW/e8MB6MxAynI8Zb8Rh8KsVK44Fje/0pP X-Received: by 2002:a05:6638:204c:: with SMTP id t12mr9257490jaj.129.1626447909285; Fri, 16 Jul 2021 08:05:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626447909; cv=none; d=google.com; s=arc-20160816; b=u2B1mgdwx25qOdZlFadYE48qhp44/sIM4m3LxWgYEkCjBBsBanM3WX6Ju8ZqcGP+Dm XZqMobaFayh5ZNA8V8quXxngdxljApuVMopfDRNpxdDPhq6aHkBT16EnzJsaADyPPXQU S6Mew3MVmefyO7H9HrYhLEUyMCpEWufRigZwn/pUC728DjmDYJv91pQ9SBaTAqTiNUKy jmHWlOPEtSwVRxRSJkxCurVXMPxbWXZ3KQoLmZT3Lnyt+6B3XWwHazz1OYfHqhgYQVKi WTyrtqJDf1wGZtg6OlbIxyRJJ1PDi8L5MK/kV5ItmcghfOi40J9BstGQp5RBKgKO5LZc nMVw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=+WMZKaXWtKuKGLHH2PA1msi77sRubv01GslHNwuOG5c=; b=CIOMBsPXNbYSVY6VMSOZLodAgesk5HzUMCkZjNiC0V8S6x0dzPqQ05Wjn9U5EOqaIi jTsh9Ozp4sMSN87Uvev/EhZLVdRC/elquMQqRaUAeZkIoX3xjGCbL/iD7LfCtWBvelai bKhr97mAYfdqg/blPZbW64Jx04fYoZLMjAaOM4gIaqPu9XopSFfHFxSJ+MtNRSXKAT7W WNkA7eC6qN9Dr9bJ/paKZTcyeHsxAaiF178sHdFR7yqwTd/QjgfevxfMKp9NyASISg6w PfBm6eT+ppdSM6ndBONCVDUe1O7r3CPdnQK1GgGpUe5MbVfY67DIFnj8rC88I5aSGh2o gNPg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=idSYbDhC; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id b3si10336891iln.124.2021.07.16.08.04.49; Fri, 16 Jul 2021 08:05:09 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=idSYbDhC; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240385AbhGPPHY (ORCPT + 99 others); Fri, 16 Jul 2021 11:07:24 -0400 Received: from mail.kernel.org ([198.145.29.99]:46582 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240066AbhGPPHY (ORCPT ); Fri, 16 Jul 2021 11:07:24 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 8BBF060FF3; Fri, 16 Jul 2021 15:04:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1626447867; bh=rJSkckdOG7FaH0XjPRhUdD9DnqAhptDshlk3zJIv19g=; h=From:To:Cc:Subject:Date:From; b=idSYbDhC9bs9t4V0VNRIsDZr0CvdPbV/x1P5rBElJSkAKNdlj8ywmrb31TFxvagxw zwpRTOFPPimH0ZdPmSqGT6vgMadHO4crsFjgYNLuSVGxC13Dk3hviqJViwV3tQyigq MOxDf6iwuT3SOpmWBEkbpFmEFIi+8LUB2ji9p6jIyiN9x7exzn0pOWV9hJbefdAF/h iGXdVcUSJYUSAwa7gKs1i9HIA6vj8JeZCSTjukZIpgJUd6aS5pj7y8alkZjqLgDrxz MzDsTZRwPobz/b0hXQf4TUMMH90gemNoR2OLuxtYpwn/5Ke3neQKq9Azqv9YAl6i74 xnMlTpCaqI6eQ== From: Lorenzo Bianconi To: linux-wireless@vger.kernel.org Cc: johannes@sipsolutions.net, nbd@nbd.name, ryder.lee@mediatek.com, lorenzo.bianconi@redhat.com Subject: [RFC mac80211-next 0/7] introduce individual TWT support in AP mode Date: Fri, 16 Jul 2021 17:03:59 +0200 Message-Id: X-Mailer: git-send-email 2.31.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org Introduce TWT action frames parsing support to mac80211. Currently just individual TWT agreement are support in AP mode. Whenever the AP receives a TWT action frame from an associated client, after performing sanity checks, it will notify the underlay driver with requested parameters in order to check if they are supported and if there is enough room for a new agreement. The hw is expected to set agreement result and report it to mac80211. The two following drv callbacks have been added to mac80211: - add_twt_setup (mandatory) - twt_teardown_request (optional) mac80211 will send an action frame reply according to the result reported by the driver/fw. Add individual TWT support to mt7915 in AP mode. Lorenzo Bianconi (7): mac80211: add twt ie in ieee80211_mgmt structure mac80211: introduce individual TWT support in AP mode. mt76: mt7915: introduce __mt7915_get_tsf routine mt76: mt7915: introduce mt7915_mcu_twt_agrt_update mcu command mt76: mt7915: introduce mt7915_mac_add_twt_setup routine mt76: mt7915: enable twt responder capability mt76: mt7915: add twt_stats knob in debugfs .../wireless/mediatek/mt76/mt7915/debugfs.c | 28 +++ .../net/wireless/mediatek/mt76/mt7915/init.c | 3 + .../net/wireless/mediatek/mt76/mt7915/mac.c | 193 ++++++++++++++++++ .../net/wireless/mediatek/mt76/mt7915/main.c | 39 +++- .../net/wireless/mediatek/mt76/mt7915/mcu.c | 50 +++++ .../net/wireless/mediatek/mt76/mt7915/mcu.h | 9 + .../wireless/mediatek/mt76/mt7915/mt7915.h | 39 +++- include/linux/ieee80211.h | 67 ++++++ include/net/mac80211.h | 13 ++ net/mac80211/driver-ops.h | 24 +++ net/mac80211/ieee80211_i.h | 3 + net/mac80211/iface.c | 10 + net/mac80211/rx.c | 54 +++++ net/mac80211/s1g.c | 183 +++++++++++++++++ net/mac80211/status.c | 30 ++- 15 files changed, 738 insertions(+), 7 deletions(-) -- 2.31.1