aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'package/kernel')
-rw-r--r--package/kernel/mt76/Makefile48
-rw-r--r--package/kernel/mt76/patches/100-Revert-of-net-pass-the-dst-buffer-to-of_get_mac_addr.patch26
-rw-r--r--package/kernel/mt76/patches/100-wireless-fix-spelling-of-A-MSDU-in-HE-capabilities.patch55
-rw-r--r--package/kernel/mt76/patches/101-wireless-align-some-HE-capabilities-with-the-spec.patch70
-rw-r--r--package/kernel/mt76/patches/102-wireless-align-HE-capabilities-A-MPDU-Length-Exponen.patch35
5 files changed, 67 insertions, 167 deletions
diff --git a/package/kernel/mt76/Makefile b/package/kernel/mt76/Makefile
index e4051d8347..e947f1a2f3 100644
--- a/package/kernel/mt76/Makefile
+++ b/package/kernel/mt76/Makefile
@@ -8,11 +8,12 @@ PKG_LICENSE_FILES:=
PKG_SOURCE_URL:=https://github.com/openwrt/mt76
PKG_SOURCE_PROTO:=git
-PKG_SOURCE_DATE:=2021-06-06
-PKG_SOURCE_VERSION:=22b690334c0f49b11534cc2e331c9d5e17c4a0bc
-PKG_MIRROR_HASH:=ff5e563935919d2e40c1e7254ef3bc06f7ecc5e69f8ddd12903e8f5de942d630
+PKG_SOURCE_DATE:=2021-11-23
+PKG_SOURCE_VERSION:=99225b985cbcab4707589f1fa313436f4bf1e368
+PKG_MIRROR_HASH:=6444c7d49d778c7621b03f0f201ce41f6dc9ac00dedb29c66478360b4fd60492
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
+PKG_USE_NINJA:=0
PKG_BUILD_PARALLEL:=1
PKG_CONFIG_DEPENDS += \
@@ -151,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
@@ -195,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
@@ -218,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
@@ -287,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
@@ -301,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
@@ -310,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
@@ -432,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))
@@ -441,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-Revert-of-net-pass-the-dst-buffer-to-of_get_mac_addr.patch b/package/kernel/mt76/patches/100-Revert-of-net-pass-the-dst-buffer-to-of_get_mac_addr.patch
new file mode 100644
index 0000000000..24b1240548
--- /dev/null
+++ b/package/kernel/mt76/patches/100-Revert-of-net-pass-the-dst-buffer-to-of_get_mac_addr.patch
@@ -0,0 +1,26 @@
+From: Felix Fietkau <nbd@nbd.name>
+Date: Tue, 23 Nov 2021 17:01:45 +0100
+Subject: [PATCH] Revert "of: net: pass the dst buffer to of_get_mac_address()"
+
+This reverts commit 4932c5d80153c336c77dbe8d7af9f8fdd879d01f.
+---
+
+--- a/eeprom.c
++++ b/eeprom.c
+@@ -105,9 +105,15 @@ mt76_eeprom_override(struct mt76_phy *ph
+ {
+ struct mt76_dev *dev = phy->dev;
+
++#ifdef CONFIG_OF
+ struct device_node *np = dev->dev->of_node;
++ const u8 *mac = NULL;
+
+- of_get_mac_address(np, phy->macaddr);
++ if (np)
++ mac = of_get_mac_address(np);
++ if (!IS_ERR_OR_NULL(mac))
++ ether_addr_copy(phy->macaddr, mac);
++#endif
+
+ if (!is_valid_ether_addr(phy->macaddr)) {
+ eth_random_addr(phy->macaddr);
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;
-