From 192c41001a46ed2c4545aa82e4271802e3357f04 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Tue, 19 Oct 2021 12:43:03 +0200 Subject: [PATCH] mt76: update to the latest version ebf5b2336591 mt7615/mt7915: fix hwmon device name 8d12f9ed275d mt76: mt7615: mt7622: fix ibss and meshpoint e7883cdc0b4e mt76: mt7915: improve code readability in mt7915_mcu_sta_bfer_ht 831d5967abb9 wireless: fix spelling of A-MSDU in HE capabilities f09cb04be261 wireless: align some HE capabilities with the spec 0eeba8f2952d wireless: align HE capabilities A-MPDU Length Exponent Extension 655a6c65b8a7 mt76: mt7915: introduce mt7915_mcu_beacon_check_caps() 4440025d0ba9 mt76: mt7915: fix txbf starec TLV issues 87d2fb6fbff5 mt76: mt7915: improve starec readability of txbf 53c6a3cb7f6b mt76: mt7915: fix sta_rec_wtbl tag len f517845e4f28 mt76: mt7915: rework starec TLV tags 1df017bc39a3 mt76: mt7915: fix muar_idx in mt7915_mcu_alloc_sta_req() 6724b0a9a748 mt76: mt7915: set VTA bit in tx descriptor f1f505cbbb30 mt76: mt7915: set muru platform type 8c9d4b38d258 mt76: mt7915: remove dead code in mt7915_get_et_stats d0ccc4297935 mt76: rely on phy pointer in mt76_register_debugfs_fops routine signature 0af0af82bb97 mt76: mt7915: introduce mt76 debugfs sub-dir for ext-phy 10e85d62f213 mt76: mt7915: improve code readability for xmit-queue handler b6051f7713d2 mt76: sdio: export mt76s_alloc_rx_queue and mt76s_alloc_tx routines 9a97c38a309d mt76: mt7921: get rid of unused variable in mt7921_tx_complete_skb c02847c05884 mt76: mt7921: get rid of unused variable in mt7921_mac_tx_free 60dd47a0a62e mt76: mt7915: remove dead code in debugfs code ce74fc020d81 mt76: mt7921: add MU EDCA cmd support c062f6920356 mt76: mt7921: refactor mac.c to be bus independent bfa909c833e8 mt76: mt7921: refactor dma.c to be pcie specific 6556bddf26d2 mt76: mt7921: refactor mcu.c to be bus independent 1c8418207c86 mt76: mt7921: refactor init.c to be bus independent 6cf8248c1a44 mt76: mt7921: add MT7921_COMMON module 77600b0c10ac mt76: connac: move mcu reg access utility routines in mt76_connac_lib module 65362a00d07d mt76: mt7663s: rely on mcu reg access utility 956206bb55c3 mt76: mt7921: make all event parser reusable between mt7921s and mt7921e f0dedcf6aaf0 mt76: mt7921: use physical addr to unify register access 5079d5b0b13c mt76: sdio: move common code in mt76_sdio module 26257594398b mt76: sdio: introduce parse_irq callback e353424f1b07 mt76: sdio: extend sdio module to support CONNAC2 ddab3dd25f94 mt76: connac: extend mcu_get_nic_capability b2d9a1748a41 mt76: mt7921: rely on mcu_get_nic_capability e6ce5d9cbda0 mt76: mt7921: refactor mt7921_mcu_send_message ce3706a65ccd mt76: mt7921: introduce mt7921s support 3143118baf53 mt76: mt7921s: add reset support 645eac64bece mt76: mt76x0: correct VHT MCS 8/9 tx power eeprom offset d54796787cb7 mt76: move mt76_sta_stats in mt76.h 094e085abf5a mt76: move mt76_ethtool_worker_info in mt76 module f80ab6dde63d mt76: mt7915: run mt7915_get_et_stats holding mt76 mutex 4a11cb67dc27 mt76: mt7915: move tx amsdu stats in mib_stats 486da6fa2512 mt76: do not reset MIB counters in get_stats callback d8837b7c8dcd mt76: mt7921: add some more MIB counters 5ffe086fcd1b mt76: mt7921: introduce stats reporting through ethtool 69154ae23f6b mt76: mt7921: add sta stats accounting in mt7921_mac_add_txs_skb 4b65fbc4e203 mt76: mt7921: move tx amsdu stats in mib_stats 35b8025f466b mt76: mt7921: add per-vif counters in ethtool cfbbd861eb12 mt76: mt7915: enable HE UL MU-MIMO a0b94987df80 mt76: mt7915: rework mt7915_mcu_sta_muru_tlv() 5fbb686e9c0c mt76: mt7915: fix missing HE phy cap b649678c18ca mt76: mt7915: change max rx len limit of hw modules Signed-off-by: Felix Fietkau --- package/kernel/mt76/Makefile | 47 +++++++++++-- ...pelling-of-A-MSDU-in-HE-capabilities.patch | 55 --------------- ...n-some-HE-capabilities-with-the-spec.patch | 70 ------------------- ...E-capabilities-A-MPDU-Length-Exponen.patch | 35 ---------- 4 files changed, 40 insertions(+), 167 deletions(-) delete mode 100644 package/kernel/mt76/patches/100-wireless-fix-spelling-of-A-MSDU-in-HE-capabilities.patch delete mode 100644 package/kernel/mt76/patches/101-wireless-align-some-HE-capabilities-with-the-spec.patch delete mode 100644 package/kernel/mt76/patches/102-wireless-align-HE-capabilities-A-MPDU-Length-Exponen.patch diff --git a/package/kernel/mt76/Makefile b/package/kernel/mt76/Makefile index 97cb9e8d59..7bd3b5d3d3 100644 --- a/package/kernel/mt76/Makefile +++ b/package/kernel/mt76/Makefile @@ -8,9 +8,9 @@ PKG_LICENSE_FILES:= PKG_SOURCE_URL:=https://github.com/openwrt/mt76 PKG_SOURCE_PROTO:=git -PKG_SOURCE_DATE:=2021-10-12 -PKG_SOURCE_VERSION:=83598c2e872fd8af29976a5f11afe94e620d6f4f -PKG_MIRROR_HASH:=f179375318c44fb058403aed98056c4df8df7541e4c9d093ec5c22a2eda9475e +PKG_SOURCE_DATE:=2021-10-20 +PKG_SOURCE_VERSION:=b649678c18cac4b7c85d7d7d86d17e9e4c9b7641 +PKG_MIRROR_HASH:=83bfe5c5e820bc8f2cbe95fa140a232336ac69c86c6df226738e910b3df525ed PKG_MAINTAINER:=Felix Fietkau PKG_USE_NINJA:=0 @@ -152,6 +152,14 @@ define KernelPackage/mt76-connac FILES:= $(PKG_BUILD_DIR)/mt76-connac-lib.ko endef +define KernelPackage/mt76-sdio + $(KernelPackage/mt76-default) + TITLE:=MediaTek MT7615/MT79xx SDIO driver common code + HIDDEN:=1 + DEPENDS+=+kmod-mt76-core +kmod-mmc + FILES:= $(PKG_BUILD_DIR)/mt76-sdio.ko +endef + define KernelPackage/mt7615-common $(KernelPackage/mt76-default) TITLE:=MediaTek MT7615 wireless driver common code @@ -196,9 +204,8 @@ endef define KernelPackage/mt7663s $(KernelPackage/mt76-default) TITLE:=MediaTek MT7663s wireless driver - DEPENDS+=+kmod-mmc +kmod-mt7615-common +kmod-mt7663-usb-sdio + DEPENDS+=+kmod-mt76-sdio +kmod-mt7615-common +kmod-mt7663-usb-sdio FILES:= \ - $(PKG_BUILD_DIR)/mt76-sdio.ko \ $(PKG_BUILD_DIR)/mt7615/mt7663s.ko AUTOLOAD:=$(call AutoProbe,mt7663s) endef @@ -219,10 +226,25 @@ define KernelPackage/mt7915e AUTOLOAD:=$(call AutoProbe,mt7915e) endef +define KernelPackage/mt7921-common + TITLE:=MediaTek MT7615 wireless driver common code + HIDDEN:=1 + DEPENDS+=@PCI_SUPPORT +kmod-mt76-core +kmod-mt76-connac + FILES:= $(PKG_BUILD_DIR)/mt7921/mt7921-common.ko +endef + +define KernelPackage/mt7921s + $(KernelPackage/mt76-default) + TITLE:=MediaTek MT7921s wireless driver + DEPENDS+=@PCI_SUPPORT +kmod-mt76-connac +kmod-mt76-sdio +kmod-mt7921-common + FILES:= $(PKG_BUILD_DIR)/mt7921/mt7921s.ko + AUTOLOAD:=$(call AutoProbe,mt7921s) +endef + define KernelPackage/mt7921e $(KernelPackage/mt76-default) TITLE:=MediaTek MT7921e wireless driver - DEPENDS+=@PCI_SUPPORT +kmod-mt76-connac + DEPENDS+=@PCI_SUPPORT +kmod-mt76-connac +kmod-mt7921-common FILES:= $(PKG_BUILD_DIR)/mt7921/mt7921e.ko AUTOLOAD:=$(call AutoProbe,mt7921e) endef @@ -288,6 +310,9 @@ endif ifdef CONFIG_PACKAGE_kmod-mt76-connac PKG_MAKE_FLAGS += CONFIG_MT76_CONNAC_LIB=m endif +ifdef CONFIG_PACKAGE_kmod-mt76-sdio + PKG_MAKE_FLAGS += CONFIG_MT76_SDIO=m +endif ifdef CONFIG_PACKAGE_kmod-mt7615-common PKG_MAKE_FLAGS += CONFIG_MT7615_COMMON=m endif @@ -302,7 +327,6 @@ ifdef CONFIG_PACKAGE_kmod-mt7663-usb-sdio PKG_MAKE_FLAGS += CONFIG_MT7663_USB_SDIO_COMMON=m endif ifdef CONFIG_PACKAGE_kmod-mt7663s - PKG_MAKE_FLAGS += CONFIG_MT76_SDIO=m PKG_MAKE_FLAGS += CONFIG_MT7663S=m endif ifdef CONFIG_PACKAGE_kmod-mt7663u @@ -311,6 +335,12 @@ endif ifdef CONFIG_PACKAGE_kmod-mt7915e PKG_MAKE_FLAGS += CONFIG_MT7915E=m endif +ifdef CONFIG_PACKAGE_kmod-mt7921-common + PKG_MAKE_FLAGS += CONFIG_MT7921_COMMON=m +endif +ifdef CONFIG_PACKAGE_kmod-mt7921s + PKG_MAKE_FLAGS += CONFIG_MT7921S=m +endif ifdef CONFIG_PACKAGE_kmod-mt7921e PKG_MAKE_FLAGS += CONFIG_MT7921E=m endif @@ -433,6 +463,7 @@ $(eval $(call KernelPackage,mt76x2u)) $(eval $(call KernelPackage,mt76x2)) $(eval $(call KernelPackage,mt7603)) $(eval $(call KernelPackage,mt76-connac)) +$(eval $(call KernelPackage,mt76-sdio)) $(eval $(call KernelPackage,mt7615-common)) $(eval $(call KernelPackage,mt7615-firmware)) $(eval $(call KernelPackage,mt7615e)) @@ -442,6 +473,8 @@ $(eval $(call KernelPackage,mt7663-usb-sdio)) $(eval $(call KernelPackage,mt7663u)) $(eval $(call KernelPackage,mt7663s)) $(eval $(call KernelPackage,mt7915e)) +$(eval $(call KernelPackage,mt7921-common)) +$(eval $(call KernelPackage,mt7921s)) $(eval $(call KernelPackage,mt7921e)) $(eval $(call KernelPackage,mt76)) $(eval $(call BuildPackage,mt76-test)) diff --git a/package/kernel/mt76/patches/100-wireless-fix-spelling-of-A-MSDU-in-HE-capabilities.patch b/package/kernel/mt76/patches/100-wireless-fix-spelling-of-A-MSDU-in-HE-capabilities.patch deleted file mode 100644 index b540b77057..0000000000 --- a/package/kernel/mt76/patches/100-wireless-fix-spelling-of-A-MSDU-in-HE-capabilities.patch +++ /dev/null @@ -1,55 +0,0 @@ -From: Johannes Berg -Date: Fri, 9 Apr 2021 12:40:24 +0300 -Subject: [PATCH] wireless: fix spelling of A-MSDU in HE capabilities - -In the HE capabilities, spell A-MSDU correctly, not "A-MDSU". - -Signed-off-by: Luca Coelho -Link: https://lore.kernel.org/r/iwlwifi.20210409123755.9e6ff1af1181.If6868bc6902ccd9a95c74c78f716c4b41473ef14@changeid -Signed-off-by: Johannes Berg ---- - ---- a/mt76_connac_mcu.c -+++ b/mt76_connac_mcu.c -@@ -567,7 +567,7 @@ mt76_connac_mcu_sta_he_tlv(struct sk_buf - if (elem->mac_cap_info[3] & IEEE80211_HE_MAC_CAP3_OMI_CONTROL) - cap |= STA_REC_HE_CAP_OM; - -- if (elem->mac_cap_info[4] & IEEE80211_HE_MAC_CAP4_AMDSU_IN_AMPDU) -+ if (elem->mac_cap_info[4] & IEEE80211_HE_MAC_CAP4_AMSDU_IN_AMPDU) - cap |= STA_REC_HE_CAP_AMSDU_IN_AMPDU; - - if (elem->mac_cap_info[4] & IEEE80211_HE_MAC_CAP4_BQR) ---- a/mt7915/init.c -+++ b/mt7915/init.c -@@ -761,7 +761,7 @@ mt7915_init_he_caps(struct mt7915_phy *p - IEEE80211_HE_MAC_CAP3_OMI_CONTROL | - IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_RESERVED; - he_cap_elem->mac_cap_info[4] = -- IEEE80211_HE_MAC_CAP4_AMDSU_IN_AMPDU; -+ IEEE80211_HE_MAC_CAP4_AMSDU_IN_AMPDU; - - if (band == NL80211_BAND_2GHZ) - he_cap_elem->phy_cap_info[0] = ---- a/mt7915/mcu.c -+++ b/mt7915/mcu.c -@@ -1361,7 +1361,7 @@ mt7915_mcu_sta_he_tlv(struct sk_buff *sk - if (elem->mac_cap_info[3] & IEEE80211_HE_MAC_CAP3_OMI_CONTROL) - cap |= STA_REC_HE_CAP_OM; - -- if (elem->mac_cap_info[4] & IEEE80211_HE_MAC_CAP4_AMDSU_IN_AMPDU) -+ if (elem->mac_cap_info[4] & IEEE80211_HE_MAC_CAP4_AMSDU_IN_AMPDU) - cap |= STA_REC_HE_CAP_AMSDU_IN_AMPDU; - - if (elem->mac_cap_info[4] & IEEE80211_HE_MAC_CAP4_BQR) ---- a/mt7921/main.c -+++ b/mt7921/main.c -@@ -67,7 +67,7 @@ mt7921_init_he_caps(struct mt7921_phy *p - IEEE80211_HE_MAC_CAP3_OMI_CONTROL | - IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_RESERVED; - he_cap_elem->mac_cap_info[4] = -- IEEE80211_HE_MAC_CAP4_AMDSU_IN_AMPDU; -+ IEEE80211_HE_MAC_CAP4_AMSDU_IN_AMPDU; - - if (band == NL80211_BAND_2GHZ) - he_cap_elem->phy_cap_info[0] = diff --git a/package/kernel/mt76/patches/101-wireless-align-some-HE-capabilities-with-the-spec.patch b/package/kernel/mt76/patches/101-wireless-align-some-HE-capabilities-with-the-spec.patch deleted file mode 100644 index 52a5225eaa..0000000000 --- a/package/kernel/mt76/patches/101-wireless-align-some-HE-capabilities-with-the-spec.patch +++ /dev/null @@ -1,70 +0,0 @@ -From: Johannes Berg -Date: Fri, 9 Apr 2021 12:40:17 +0300 -Subject: [PATCH] wireless: align some HE capabilities with the spec - -Some names were changed, align that with the spec as of -802.11ax-D6.1. - -Signed-off-by: Luca Coelho -Link: https://lore.kernel.org/r/iwlwifi.20210409123755.b1e5fbab0d8c.I3eb6076cb0714ec6aec6b8f9dee613ce4a05d825@changeid -Signed-off-by: Johannes Berg ---- - ---- a/mt7915/init.c -+++ b/mt7915/init.c -@@ -646,8 +646,8 @@ mt7915_set_stream_he_txbf_caps(struct ie - IEEE80211_HE_PHY_CAP5_BEAMFORMEE_NUM_SND_DIM_ABOVE_80MHZ_MASK; - elem->phy_cap_info[5] &= ~c; - -- c = IEEE80211_HE_PHY_CAP6_TRIG_SU_BEAMFORMER_FB | -- IEEE80211_HE_PHY_CAP6_TRIG_MU_BEAMFORMER_FB; -+ c = IEEE80211_HE_PHY_CAP6_TRIG_SU_BEAMFORMING_FB | -+ IEEE80211_HE_PHY_CAP6_TRIG_MU_BEAMFORMING_PARTIAL_BW_FB; - elem->phy_cap_info[6] &= ~c; - - elem->phy_cap_info[7] &= ~IEEE80211_HE_PHY_CAP7_MAX_NC_MASK; -@@ -687,8 +687,8 @@ mt7915_set_stream_he_txbf_caps(struct ie - c = (nss - 1) | (max_t(int, le16_to_cpu(mcs->tx_mcs_160), 1) << 3); - elem->phy_cap_info[5] |= c; - -- c = IEEE80211_HE_PHY_CAP6_TRIG_SU_BEAMFORMER_FB | -- IEEE80211_HE_PHY_CAP6_TRIG_MU_BEAMFORMER_FB; -+ c = IEEE80211_HE_PHY_CAP6_TRIG_SU_BEAMFORMING_FB | -+ IEEE80211_HE_PHY_CAP6_TRIG_MU_BEAMFORMING_PARTIAL_BW_FB; - elem->phy_cap_info[6] |= c; - } - -@@ -816,7 +816,7 @@ mt7915_init_he_caps(struct mt7915_phy *p - IEEE80211_HE_PHY_CAP6_PARTIAL_BW_EXT_RANGE | - IEEE80211_HE_PHY_CAP6_PPE_THRESHOLD_PRESENT; - he_cap_elem->phy_cap_info[7] |= -- IEEE80211_HE_PHY_CAP7_POWER_BOOST_FACTOR_AR | -+ IEEE80211_HE_PHY_CAP7_POWER_BOOST_FACTOR_SUPP | - IEEE80211_HE_PHY_CAP7_HE_SU_MU_PPDU_4XLTF_AND_08_US_GI; - he_cap_elem->phy_cap_info[8] |= - IEEE80211_HE_PHY_CAP8_20MHZ_IN_40MHZ_HE_PPDU_IN_2G | ---- a/mt7915/mcu.c -+++ b/mt7915/mcu.c -@@ -1842,9 +1842,9 @@ mt7915_mcu_sta_bfer_he(struct ieee80211_ - - bf->tx_mode = MT_PHY_TYPE_HE_SU; - mt7915_mcu_sta_sounding_rate(bf); -- bf->trigger_su = HE_PHY(CAP6_TRIG_SU_BEAMFORMER_FB, -+ bf->trigger_su = HE_PHY(CAP6_TRIG_SU_BEAMFORMING_FB, - pe->phy_cap_info[6]); -- bf->trigger_mu = HE_PHY(CAP6_TRIG_MU_BEAMFORMER_FB, -+ bf->trigger_mu = HE_PHY(CAP6_TRIG_MU_BEAMFORMING_PARTIAL_BW_FB, - pe->phy_cap_info[6]); - bfer_nr = HE_PHY(CAP5_BEAMFORMEE_NUM_SND_DIM_UNDER_80MHZ_MASK, - ve->phy_cap_info[5]); ---- a/mt7921/main.c -+++ b/mt7921/main.c -@@ -116,7 +116,7 @@ mt7921_init_he_caps(struct mt7921_phy *p - IEEE80211_HE_PHY_CAP6_PARTIAL_BW_EXT_RANGE | - IEEE80211_HE_PHY_CAP6_PPE_THRESHOLD_PRESENT; - he_cap_elem->phy_cap_info[7] |= -- IEEE80211_HE_PHY_CAP7_POWER_BOOST_FACTOR_AR | -+ IEEE80211_HE_PHY_CAP7_POWER_BOOST_FACTOR_SUPP | - IEEE80211_HE_PHY_CAP7_HE_SU_MU_PPDU_4XLTF_AND_08_US_GI; - he_cap_elem->phy_cap_info[8] |= - IEEE80211_HE_PHY_CAP8_20MHZ_IN_40MHZ_HE_PPDU_IN_2G | diff --git a/package/kernel/mt76/patches/102-wireless-align-HE-capabilities-A-MPDU-Length-Exponen.patch b/package/kernel/mt76/patches/102-wireless-align-HE-capabilities-A-MPDU-Length-Exponen.patch deleted file mode 100644 index b86f6fbb83..0000000000 --- a/package/kernel/mt76/patches/102-wireless-align-HE-capabilities-A-MPDU-Length-Exponen.patch +++ /dev/null @@ -1,35 +0,0 @@ -From: Johannes Berg -Date: Fri, 9 Apr 2021 12:40:20 +0300 -Subject: [PATCH] wireless: align HE capabilities A-MPDU Length Exponent - Extension - -The A-MPDU length exponent extension is defined differently in -802.11ax D6.1, align with that. - -Signed-off-by: Luca Coelho -Link: https://lore.kernel.org/r/iwlwifi.20210409123755.c2a257d3e2df.I3455245d388c52c61dace7e7958dbed7e807cfb6@changeid -Signed-off-by: Johannes Berg ---- - ---- a/mt7915/init.c -+++ b/mt7915/init.c -@@ -759,7 +759,7 @@ mt7915_init_he_caps(struct mt7915_phy *p - IEEE80211_HE_MAC_CAP0_HTC_HE; - he_cap_elem->mac_cap_info[3] = - IEEE80211_HE_MAC_CAP3_OMI_CONTROL | -- IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_RESERVED; -+ IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_EXT_3; - he_cap_elem->mac_cap_info[4] = - IEEE80211_HE_MAC_CAP4_AMSDU_IN_AMPDU; - ---- a/mt7921/main.c -+++ b/mt7921/main.c -@@ -65,7 +65,7 @@ mt7921_init_he_caps(struct mt7921_phy *p - IEEE80211_HE_MAC_CAP0_HTC_HE; - he_cap_elem->mac_cap_info[3] = - IEEE80211_HE_MAC_CAP3_OMI_CONTROL | -- IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_RESERVED; -+ IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_EXT_3; - he_cap_elem->mac_cap_info[4] = - IEEE80211_HE_MAC_CAP4_AMSDU_IN_AMPDU; - -- 2.30.2