mt7603: set IEEE80211_HW_TX_STATUS_NO_AMPDU_LEN

The hardware cannot report accurate tx A-MPDU length information, so tell rate
control to ignore it. Improves tx rate selection

Signed-off-by: Felix Fietkau <[email protected]>
This commit is contained in:
Felix Fietkau
2019-01-16 22:35:17 +01:00
parent 4206db7157
commit c4e4982fa9
2 changed files with 9 additions and 0 deletions
+8
View File
@@ -1,3 +1,11 @@
CHECK_CC_ENUM_FLAGS = $(NOSTDINC_FLAGS) $(LINUXINCLUDE) $(KBUILD_CPPFLAGS) $(KBUILD_CFLAGS)
check-cc-enum = $(call try-run, echo "int v = $(1);" | $(CC) -Werror $(CHECK_CC_ENUM_FLAGS) $(2) -c -x c - -o "$$TMP",y,n)
# backwards compatibility hack
ifeq ($(call check-cc-enum,IEEE80211_HW_TX_STATUS_NO_AMPDU_LEN,-include net/mac80211.h),n)
EXTRA_CFLAGS += -DIEEE80211_HW_TX_STATUS_NO_AMPDU_LEN=IEEE80211_HW_REPORTS_TX_ACK_STATUS
endif
obj-m := mt7603e.o obj-m := mt7603e.o
mt7603e-y := \ mt7603e-y := \
+1
View File
@@ -566,6 +566,7 @@ int mt7603_register_device(struct mt7603_dev *dev)
wiphy->n_iface_combinations = ARRAY_SIZE(if_comb); wiphy->n_iface_combinations = ARRAY_SIZE(if_comb);
ieee80211_hw_set(hw, SUPPORTS_REORDERING_BUFFER); ieee80211_hw_set(hw, SUPPORTS_REORDERING_BUFFER);
ieee80211_hw_set(hw, TX_STATUS_NO_AMPDU_LEN);
/* init led callbacks */ /* init led callbacks */
dev->mt76.led_cdev.brightness_set = mt7603_led_set_brightness; dev->mt76.led_cdev.brightness_set = mt7603_led_set_brightness;