linux/drivers/net/wireless/mediatek/mt76
Lu Huang 52f6a065e0 wifi: mt76: mt7996: fix uninitialized buf read in mt7996_variant_fem_init()
When the eFuse block covering MT7976C_EFUSE_OFFSET is invalid,
mt7996_mcu_get_eeprom() returns -EINVAL without writing buf, but
mt7996_variant_fem_init() tolerates -EINVAL and keeps running, so
buf[idx] == 0xc reads uninitialized stack memory.  A stale 0x0c byte
misclassifies a 0x7976 aDie as 7976C, selects MT7996_FEM_INT and the
wrong default EEPROM, overriding valid calibration data.  Only consult
the eFuse byte when the read succeeded; with an invalid eFuse, fall
back to the three explicit aDie version checks.

Fixes: e8cb33ad54 ("wifi: mt76: mt7996: add support for more variants")
Cc: stable@vger.kernel.org
Signed-off-by: Lu Huang <huanglu@kylinos.cn>
Link: https://patch.msgid.link/20260930085435.1424493-1-huanglu@kylinos.cn
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2026-10-06 11:50:52 +02:00
..
mt76x0 wifi: mt76x0u: drop redundant device reference 2026-06-09 10:15:20 +00:00
mt76x2 wifi: mt76: mt76x2u: Add support for ELECOM WDC-867SU3S 2026-06-09 10:15:22 +00:00
mt7603 wifi: mt76: mt7603: initialize global station WCID 2026-10-06 11:50:52 +02:00
mt7615 wifi: mt76: mt7615: fix NULL deref in mt7615_mac_set_rates 2026-08-01 14:49:42 +00:00
mt7915 wifi: mt76: mt7915: disable rx napi when removing device 2026-10-06 11:50:52 +02:00
mt7921 wifi: mt76: mt7921: skip unknown CLC firmware records 2026-09-13 10:15:16 -07:00
mt7925 wifi: mt76: mt7925: don't put the band auto marker in TGID 2026-10-06 11:50:52 +02:00
mt7996 wifi: mt76: mt7996: fix uninitialized buf read in mt7996_variant_fem_init() 2026-10-06 11:50:52 +02:00
agg-rx.c Convert 'alloc_flex' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
channel.c wifi: mt76: fix handling channel context with different bands in mt76_switch_vif_chanctx() 2026-07-31 12:25:37 +00:00
debugfs.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
dma.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2026-08-13 11:00:14 -07:00
dma.h wifi: mt76: fix queue reg access when building WED and NPU together 2026-08-01 14:49:42 +00:00
eeprom.c wifi: mt76: fix MAC address for non OF pcie cards 2026-07-22 06:12:24 +00:00
Kconfig wifi: mt76: fix airoha_npu dependency tracking 2026-07-22 06:13:31 +00:00
mac80211.c wifi: mt76: mt792x: do not advertise active monitor 2026-08-01 17:55:25 +00:00
Makefile wifi: mt76: fix airoha_npu dependency tracking 2026-07-22 06:13:31 +00:00
mcu.c wifi: mt76: mt7921: Add PCIe AER handler support to prevent system crash 2026-07-31 12:25:39 +00:00
mmio.c wifi: mt76: fix out-of-bounds access in mmio copy helpers 2026-07-31 12:25:40 +00:00
mt76_connac_mac.c wifi: mt76: report data NSS for STBC frames in RX rate decode 2026-07-31 12:25:41 +00:00
mt76_connac_mcu.c wifi: mt76: fix HE DCM max-RU capability encoding 2026-07-31 12:25:40 +00:00
mt76_connac_mcu.h wifi: mt76: add PS buffering support for HW-managed TIM drivers 2026-08-01 15:22:41 +00:00
mt76_connac.h wifi: mt76: mt7921: Add PCIe AER handler support to prevent system crash 2026-07-31 12:25:39 +00:00
mt76_connac2_mac.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76_connac3_mac.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76_connac3_mac.h wifi: mt76: mt7925: add MT7928 TXD/TXS/TX_DONE support 2026-07-31 12:25:36 +00:00
mt76.h wifi: mt76: account non-AQL frames per peer rather than per link 2026-10-06 11:50:52 +02:00
mt76x02_beacon.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_debugfs.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_dfs.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_dfs.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_dma.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_eeprom.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_eeprom.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_mac.c wifi: mt76: mt76x02: report rx FCS errors to mac80211 2026-07-31 12:25:37 +00:00
mt76x02_mac.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_mcu.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_mcu.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_mmio.c wifi: mt76: mt76x02: wake queues after reconfig 2026-03-23 09:14:42 +00:00
mt76x02_phy.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_phy.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_regs.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_trace.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_trace.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_txrx.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_usb_core.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_usb_mcu.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_usb.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02_util.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt76x02.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt792x_acpi_sar.c wifi: mt76: mt792x: pick the SAR table layout from the table itself 2026-10-06 11:50:52 +02:00
mt792x_acpi_sar.h wifi: mt76: mt792x: pick the SAR table layout from the table itself 2026-10-06 11:50:52 +02:00
mt792x_core.c wifi: mt76: mt792x: do not advertise active monitor 2026-08-01 17:55:25 +00:00
mt792x_debugfs.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt792x_dma.c wifi: mt76: mt7925: skip DMA re-init selectively 2026-08-01 14:49:43 +00:00
mt792x_mac.c wifi: mt76: mt792x: Fix a potential deadlock in high-load situations 2026-03-23 09:21:25 +00:00
mt792x_regs.h wifi: mt76: mt7925: add MT7928 DMA configuration 2026-07-31 12:25:36 +00:00
mt792x_trace.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt792x_trace.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
mt792x_usb.c wifi: mt76: mt792x: quiesce USB paths on disconnect 2026-07-31 12:25:38 +00:00
mt792x.h wifi: mt76: mt7925: skip DMA re-init selectively 2026-08-01 14:49:43 +00:00
npu.c wifi: mt76: Enable NPU support for MT7996 devices 2026-03-23 09:23:01 +00:00
pci.c wifi: mt76: transform aspm_conf for pci_disable_link_state 2026-06-09 10:15:22 +00:00
scan.c wifi: mt76: serialize scan-link teardown with dev->mutex 2026-08-01 14:49:42 +00:00
sdio_txrx.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
sdio.c wifi: mt76: mt792x: Fix memory leak in SDIO TX path 2026-07-31 12:25:39 +00:00
sdio.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
testmode.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
testmode.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
trace.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
trace.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
tx.c wifi: mt76: use ALTX queue for packets to disassociated stations 2026-10-06 11:50:52 +02:00
usb_trace.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
usb_trace.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
usb.c wifi: mt76: mt792x: stop USB register access after bus hang 2026-07-31 12:25:38 +00:00
util.c wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
util.h wifi: mt76: relicense to BSD-3-Clause-Clear 2025-11-24 14:37:54 +01:00
wed.c wifi: mt76: wed: fix kernel panic on non-DBDC MT7986 2026-07-31 12:25:38 +00:00