diff options
4 files changed, 40 insertions, 167 deletions
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 <nbd@nbd.name> 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 <johannes.berg@intel.com> -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 <luciano.coelho@intel.com> -Link: https://lore.kernel.org/r/iwlwifi.20210409123755.9e6ff1af1181.If6868bc6902ccd9a95c74c78f716c4b41473ef14@changeid -Signed-off-by: Johannes Berg <johannes.berg@intel.com> ---- - ---- 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 <johannes.berg@intel.com> -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 <luciano.coelho@intel.com> -Link: https://lore.kernel.org/r/iwlwifi.20210409123755.b1e5fbab0d8c.I3eb6076cb0714ec6aec6b8f9dee613ce4a05d825@changeid -Signed-off-by: Johannes Berg <johannes.berg@intel.com> ---- - ---- 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 <johannes.berg@intel.com> -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 <luciano.coelho@intel.com> -Link: https://lore.kernel.org/r/iwlwifi.20210409123755.c2a257d3e2df.I3455245d388c52c61dace7e7958dbed7e807cfb6@changeid -Signed-off-by: Johannes Berg <johannes.berg@intel.com> ---- - ---- 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; - |