mirror of
https://github.com/outbackdingo/mt76.git
synced 2026-10-24 13:26:48 +00:00
mt76: mt7615: add mt7663e support to mt7615_mcu_set_eeprom
Extend mt7615_mcu_set_eeprom routine in order to be reused adding mt7663e support to mt7615 driver Co-developed-by: Sean Wang <[email protected]> Signed-off-by: Sean Wang <[email protected]> Co-developed-by: Ryder Lee <[email protected]> Signed-off-by: Ryder Lee <[email protected]> Signed-off-by: Lorenzo Bianconi <[email protected]> Signed-off-by: Felix Fietkau <[email protected]>
This commit is contained in:
committed by
Felix Fietkau
parent
d42244e925
commit
aebbe08812
@@ -18,11 +18,13 @@ enum mt7615_eeprom_field {
|
||||
MT_EE_TX1_5G_G0_TARGET_POWER = 0x098,
|
||||
MT_EE_EXT_PA_2G_TARGET_POWER = 0x0f2,
|
||||
MT_EE_EXT_PA_5G_TARGET_POWER = 0x0f3,
|
||||
MT7663_EE_TX0_2G_TARGET_POWER = 0x123,
|
||||
MT_EE_TX2_5G_G0_TARGET_POWER = 0x142,
|
||||
MT_EE_TX3_5G_G0_TARGET_POWER = 0x16a,
|
||||
|
||||
MT7615_EE_MAX = 0x3bf,
|
||||
MT7622_EE_MAX = 0x3db,
|
||||
MT7663_EE_MAX = 0x400,
|
||||
};
|
||||
|
||||
#define MT_EE_NIC_CONF_TX_MASK GENMASK(7, 4)
|
||||
|
||||
+16
-5
@@ -1539,19 +1539,30 @@ int mt7615_mcu_set_eeprom(struct mt7615_dev *dev)
|
||||
{
|
||||
struct {
|
||||
u8 buffer_mode;
|
||||
u8 pad;
|
||||
u8 content_format;
|
||||
__le16 len;
|
||||
} __packed req_hdr = {
|
||||
.buffer_mode = 1,
|
||||
};
|
||||
u8 *eep = (u8 *)dev->mt76.eeprom.data;
|
||||
struct sk_buff *skb;
|
||||
int eep_len;
|
||||
int eep_len, offset;
|
||||
|
||||
if (is_mt7622(&dev->mt76))
|
||||
switch (mt76_chip(&dev->mt76)) {
|
||||
case 0x7622:
|
||||
eep_len = MT7622_EE_MAX - MT_EE_NIC_CONF_0;
|
||||
else
|
||||
offset = MT_EE_NIC_CONF_0;
|
||||
break;
|
||||
case 0x7663:
|
||||
eep_len = MT7663_EE_MAX - MT_EE_CHIP_ID;
|
||||
req_hdr.content_format = 1;
|
||||
offset = MT_EE_CHIP_ID;
|
||||
break;
|
||||
default:
|
||||
eep_len = MT7615_EE_MAX - MT_EE_NIC_CONF_0;
|
||||
offset = MT_EE_NIC_CONF_0;
|
||||
break;
|
||||
}
|
||||
|
||||
req_hdr.len = cpu_to_le16(eep_len);
|
||||
|
||||
@@ -1560,7 +1571,7 @@ int mt7615_mcu_set_eeprom(struct mt7615_dev *dev)
|
||||
return -ENOMEM;
|
||||
|
||||
skb_put_data(skb, &req_hdr, sizeof(req_hdr));
|
||||
skb_put_data(skb, eep + MT_EE_NIC_CONF_0, eep_len);
|
||||
skb_put_data(skb, eep + offset, eep_len);
|
||||
|
||||
return __mt76_mcu_skb_send_msg(&dev->mt76, skb,
|
||||
MCU_EXT_CMD_EFUSE_BUFFER_MODE, true);
|
||||
|
||||
Reference in New Issue
Block a user