}
 }
 
+static void mt7615_eeprom_parse_hw_cap(struct mt7615_dev *dev)
+{
+       u8 val, *eeprom = dev->mt76.eeprom.data;
+
+       val = FIELD_GET(MT_EE_NIC_WIFI_CONF_BAND_SEL,
+                       eeprom[MT_EE_WIFI_CONF]);
+       switch (val) {
+       case MT_EE_5GHZ:
+               dev->mt76.cap.has_5ghz = true;
+               break;
+       case MT_EE_2GHZ:
+               dev->mt76.cap.has_2ghz = true;
+               break;
+       default:
+               dev->mt76.cap.has_2ghz = true;
+               dev->mt76.cap.has_5ghz = true;
+               break;
+       }
+}
+
 int mt7615_eeprom_init(struct mt7615_dev *dev)
 {
        int ret;
                memcpy(dev->mt76.eeprom.data, dev->mt76.otp.data,
                       MT7615_EEPROM_SIZE);
 
-       dev->mt76.cap.has_2ghz = true;
-       dev->mt76.cap.has_5ghz = true;
-
+       mt7615_eeprom_parse_hw_cap(dev);
        memcpy(dev->mt76.macaddr, dev->mt76.eeprom.data + MT_EE_MAC_ADDR,
               ETH_ALEN);
 
 
        MT_EE_VERSION =                         0x002,
        MT_EE_MAC_ADDR =                        0x004,
        MT_EE_NIC_CONF_0 =                      0x034,
+       MT_EE_WIFI_CONF =                       0x03e,
 
        __MT_EE_MAX =                           0x3bf
 };
 
+#define MT_EE_NIC_WIFI_CONF_BAND_SEL           GENMASK(5, 4)
+enum mt7615_eeprom_band {
+       MT_EE_DUAL_BAND,
+       MT_EE_5GHZ,
+       MT_EE_2GHZ,
+       MT_EE_DBDC,
+};
+
 #endif