From nobody Mon Nov 28 17:27:00 2022 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4NLXTK056xz4jQwL; Mon, 28 Nov 2022 17:27:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4NLXTJ6K0Yz43lP; Mon, 28 Nov 2022 17:27:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1669656420; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mPAXopRnBEKy9U0wboxs1pfWIiH+kj0Nv6QsN2zV3mw=; b=GmHviCkLZKkn/sLPqciKGo2HTaHkd+oBCdQ9OS7JIgUNz3i9rDZB+YIlHxS/Cv/SprXIph QhlW32hBRnneYwBC/2fhasMT6R30JC4aV8AdOR+7frCzUhyFPSpCC8VCJlzAXRMogSi+Jb EhN6renauZiZa1n3YAjzEQmRNnhzBNdpeVXzQLIx4u+6t4fyOUrrMZR8a2dNZtZwoQ97RB 2PRyRsVyR70eumcszKoK1d90YyPQhtSml99C+fESmvyzldiF5b4erhZhWMstVixDKr4f0z vjz7ztv/8OdaTeAzKynZPaC7HqWAPK0icF1W/3EsuFVxhLDow0VZnXQsJlEG6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1669656420; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mPAXopRnBEKy9U0wboxs1pfWIiH+kj0Nv6QsN2zV3mw=; b=eyiLnY/cHY6yvj9yVj+/OUrf3WqKFQTLz34G0KUEwLXKekuU82FJ0erV+Spb8iVslglRrU 67DMfaf+UkaT18gq0iiUFOB0yJc8I2lCWj9ZgAy4NxwvjwzTjI3JN/uw0P0FnXmQTZPwAr JXkxOQJNw9M+wi9y/S0SPbKOcbkiF7aDNxRY3G0SFZ9ubxbkxpbhYpWeSmzTBZbZK+T1I2 y5hHRXNv0M1Zbju6UDRsO04xHpNNU8F058yqXwYf2nF+kKJpKebcMTCcQP0qdKpOQaq1hz M+Ua1GMg+Y6kO/mBTDAtShPe+tMbA728VwrCYrsobQ82P685KVMno1TKcPhveA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1669656420; a=rsa-sha256; cv=none; b=wXAIn3UEvL9J89FzjbXnuaRVzPXMBGYpdNu3BS8k0p7+9nEt6LBNgB6Cf4hB1C/EZH66xz UNmKlmqI3YMZJ9KtzOjUWgGJJ90pOZlrnmHMt3cxOTlqGByLitXS3hF+2gz/GTELxDgQjT F3VKx5n9kCoL/hvw4AJlNtLKMg5/b+ylXYhhmWSAMDFLPGYCxrqqG3ozpWfuhPjOHlLl8k 6dYAutuRH2uMcY8zd/V7yv3BWC9NEUbymrewTcaQn0xrx0ZJLohWY9eCVbPktGunE/OR/F 6d06dBRXP9fjGaBYNTYBfVcqHaV4XtMvNvM3q59xKbgANNxbPWS4d7zEzgdhAQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4NLXTJ4xVwzlxM; Mon, 28 Nov 2022 17:27:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 2ASHR0kR081146; Mon, 28 Nov 2022 17:27:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 2ASHR0EG081145; Mon, 28 Nov 2022 17:27:00 GMT (envelope-from git) Date: Mon, 28 Nov 2022 17:27:00 GMT Message-Id: <202211281727.2ASHR0EG081145@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 6ff5793af7a8 - stable/13 - LinuxKPI: 802.11 update header files List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 6ff5793af7a864aef658fd3f42f6d186227a22e9 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=6ff5793af7a864aef658fd3f42f6d186227a22e9 commit 6ff5793af7a864aef658fd3f42f6d186227a22e9 Author: Bjoern A. Zeeb AuthorDate: 2022-10-31 22:09:25 +0000 Commit: Bjoern A. Zeeb CommitDate: 2022-11-28 16:30:36 +0000 LinuxKPI: 802.11 update header files Adjust struct members, add more (for HE dummy) defines, add more (wrapper) functions in order to acoomodate another driver. (cherry picked from commit 1d70218e9e1a27915a5d6ac434c226c8861f64f2) --- sys/compat/linuxkpi/common/include/linux/ieee80211.h | 3 +++ sys/compat/linuxkpi/common/include/linux/nl80211.h | 8 ++++++++ sys/compat/linuxkpi/common/include/net/cfg80211.h | 16 ++++++++++++---- sys/compat/linuxkpi/common/include/net/mac80211.h | 14 +++++++++++++- 4 files changed, 36 insertions(+), 5 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/ieee80211.h b/sys/compat/linuxkpi/common/include/linux/ieee80211.h index 5a29137d0510..c797967f357a 100644 --- a/sys/compat/linuxkpi/common/include/linux/ieee80211.h +++ b/sys/compat/linuxkpi/common/include/linux/ieee80211.h @@ -282,6 +282,9 @@ struct ieee80211_ht_cap { }; #define IEEE80211_HT_MAX_AMPDU_FACTOR 13 +#define IEEE80211_HE_HT_MAX_AMPDU_FACTOR 16 +#define IEEE80211_HE_VHT_MAX_AMPDU_FACTOR 20 +#define IEEE80211_HE_6GHZ_MAX_AMPDU_FACTOR 13 enum ieee80211_ht_max_ampdu_len { IEEE80211_HT_MAX_AMPDU_64K diff --git a/sys/compat/linuxkpi/common/include/linux/nl80211.h b/sys/compat/linuxkpi/common/include/linux/nl80211.h index f8de2eedf1b7..e4c904ff5cac 100644 --- a/sys/compat/linuxkpi/common/include/linux/nl80211.h +++ b/sys/compat/linuxkpi/common/include/linux/nl80211.h @@ -334,6 +334,10 @@ enum nl80211_dfs_regions { NL80211_DFS_JP, }; +enum nl80211_dfs_state { + NL80211_DFS_USABLE, +}; + enum nl80211_sar_type { NL80211_SAR_TYPE_POWER, }; @@ -373,6 +377,10 @@ enum nl80211_probe_resp_offload_support { NL80211_PROBE_RESP_OFFLOAD_SUPPORT_P2P, }; +enum nl80211_user_reg_hint_type { + NL80211_USER_REG_HINT_USER, +}; + #define NL80211_KCK_LEN 16 #define NL80211_KCK_EXT_LEN 24 #define NL80211_KEK_LEN 16 diff --git a/sys/compat/linuxkpi/common/include/net/cfg80211.h b/sys/compat/linuxkpi/common/include/net/cfg80211.h index 41fe6983eb4d..e6f1bd88309d 100644 --- a/sys/compat/linuxkpi/common/include/net/cfg80211.h +++ b/sys/compat/linuxkpi/common/include/net/cfg80211.h @@ -531,7 +531,7 @@ struct station_info { int assoc_req_ies_len, connected_time; int generation, inactive_time, rx_bytes, rx_dropped_misc, rx_packets, signal, tx_bytes, tx_packets; int filled, rx_beacon, rx_beacon_signal_avg, signal_avg; - int rx_duration, tx_failed, tx_retries; + int rx_duration, tx_duration, tx_failed, tx_retries; int chains; uint8_t chain_signal[IEEE80211_MAX_CHAINS]; @@ -652,7 +652,6 @@ struct linuxkpi_ieee80211_regdomain { #define IEEE80211_HE_6GHZ_CAP_MAX_MPDU_LEN 0x08 #define IEEE80211_HE_6GHZ_CAP_MAX_AMPDU_LEN_EXP 0x10 #define IEEE80211_HE_6GHZ_CAP_SM_PS 0x20 -#define IEEE80211_HE_6GHZ_MAX_AMPDU_FACTOR 0x40 #define IEEE80211_HE_PHY_CAP0_CHANNEL_WIDTH_SET_160MHZ_IN_5G 0x1 #define IEEE80211_HE_PHY_CAP0_CHANNEL_WIDTH_SET_40MHZ_80MHZ_IN_5G 0x2 @@ -756,6 +755,14 @@ struct linuxkpi_ieee80211_regdomain { #define IEEE80211_HE_PHY_CAP10_HE_MU_M1RU_MAX_LTF 0x1 +#define IEEE80211_HE_OPERATION_BSS_COLOR_DISABLED 0x1 +#define IEEE80211_HE_OPERATION_BSS_COLOR_OFFSET 0x2 + +#define IEEE80211_HE_SPR_HESIGA_SR_VAL15_ALLOWED 0x01 +#define IEEE80211_HE_SPR_NON_SRG_OBSS_PD_SR_DISALLOWED 0x02 +#define IEEE80211_HE_SPR_NON_SRG_OFFSET_PRESENT 0x04 +#define IEEE80211_HE_SPR_SRG_INFORMATION_PRESENT 0x08 + #define VENDOR_CMD_RAW_DATA (void *)(uintptr_t)(-ENOENT) struct ieee80211_he_cap_elem { @@ -791,9 +798,9 @@ struct ieee80211_he_obss_pd { uint8_t min_offset; uint8_t max_offset; uint8_t non_srg_max_offset; - uint8_t bss_color_bitmap; - uint8_t partial_bssid_bitmap; uint8_t sr_ctrl; + uint8_t bss_color_bitmap[8]; + uint8_t partial_bssid_bitmap[8]; }; struct ieee80211_sta_he_6ghz_capa { @@ -931,6 +938,7 @@ struct regulatory_request { /* XXX TODO */ uint8_t alpha2[2]; int initiator, dfs_region; + int user_reg_hint_type; }; enum wiphy_vendor_cmd_need_flags { diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index 7f6d50de6b78..75f2dac02be2 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -240,6 +240,10 @@ struct ieee80211_bss_conf { uint8_t membership[WLAN_MEMBERSHIP_LEN]; uint8_t position[WLAN_USER_POSITION_LEN]; } mu_group; + struct { + uint32_t params; + /* single field struct? */ + } he_oper; struct cfg80211_he_bss_color he_bss_color; struct ieee80211_he_obss_pd he_obss_pd; size_t ssid_len; @@ -276,7 +280,7 @@ struct ieee80211_bss_conf { int profile_periodicity; int twt_requester, uora_exists, uora_ocw_range; int assoc_capability, enable_beacon, hidden_ssid, ibss_joined, twt_protected; - int he_oper, twt_responder, unsol_bcast_probe_resp_interval; + int twt_responder, unsol_bcast_probe_resp_interval; int color_change_active; }; @@ -458,6 +462,7 @@ enum ieee802111_key_flag { IEEE80211_KEY_FLAG_SW_MGMT_TX = BIT(5), IEEE80211_KEY_FLAG_GENERATE_IV_MGMT = BIT(6), IEEE80211_KEY_FLAG_GENERATE_MMIE = BIT(7), + IEEE80211_KEY_FLAG_RESERVE_TAILROOM = BIT(8), }; struct ieee80211_key_conf { @@ -1465,6 +1470,13 @@ ieee80211_rx_irqsafe(struct ieee80211_hw *hw, struct sk_buff *skb) linuxkpi_ieee80211_rx(hw, skb, NULL, NULL); } +static __inline void +ieee80211_rx(struct ieee80211_hw *hw, struct sk_buff *skb) +{ + + linuxkpi_ieee80211_rx(hw, skb, NULL, NULL); +} + /* -------------------------------------------------------------------------- */ static __inline uint8_t