diff --git a/mt76x2_eeprom.c b/mt76x2_eeprom.c index db0256a2..440b7e7d 100644 --- a/mt76x2_eeprom.c +++ b/mt76x2_eeprom.c @@ -205,6 +205,9 @@ static int mt76x2_check_eeprom(struct mt76x2_dev *dev) { u16 val = get_unaligned_le16(dev->mt76.eeprom.data); + if (!val) + val = get_unaligned_le16(dev->mt76.eeprom.data + MT_EE_PCI_ID); + switch (val) { case 0x7662: case 0x7612: diff --git a/mt76x2_eeprom.h b/mt76x2_eeprom.h index bbd7a5b1..063d6c84 100644 --- a/mt76x2_eeprom.h +++ b/mt76x2_eeprom.h @@ -23,6 +23,7 @@ enum mt76x2_eeprom_field { MT_EE_CHIP_ID = 0x000, MT_EE_VERSION = 0x002, MT_EE_MAC_ADDR = 0x004, + MT_EE_PCI_ID = 0x00A, MT_EE_NIC_CONF_0 = 0x034, MT_EE_NIC_CONF_1 = 0x036, MT_EE_NIC_CONF_2 = 0x042,