summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/mediatek/mt76/mt792x.h
diff options
context:
space:
mode:
authorLorenzo Bianconi <lorenzo@kernel.org>2023-06-28 15:07:20 +0800
committerFelix Fietkau <nbd@nbd.name>2023-07-26 11:36:16 +0200
commit583204ae70f9f4d1cf8f2874a6c0706e5528eab1 (patch)
treebf5de7f1ad4d5bdd63d7df14c91d9f98d3ab6309 /drivers/net/wireless/mediatek/mt76/mt792x.h
parentd28e1a48952e60fe47bba5b79fdbafc65f6c892b (diff)
downloadlinux-583204ae70f9f4d1cf8f2874a6c0706e5528eab1.tar.gz
linux-583204ae70f9f4d1cf8f2874a6c0706e5528eab1.tar.bz2
linux-583204ae70f9f4d1cf8f2874a6c0706e5528eab1.zip
wifi: mt76: mt792x: move mt7921_load_firmware in mt792x-lib module
mt7921_load_firmware routine is shared between mt7921 and mt7925 chipset so move it in mt792x-lib module. Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> Signed-off-by: Deren Wu <deren.wu@mediatek.com> Signed-off-by: Felix Fietkau <nbd@nbd.name>
Diffstat (limited to 'drivers/net/wireless/mediatek/mt76/mt792x.h')
-rw-r--r--drivers/net/wireless/mediatek/mt76/mt792x.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/drivers/net/wireless/mediatek/mt76/mt792x.h b/drivers/net/wireless/mediatek/mt76/mt792x.h
index b226a863e5de..700cd0ccc5d3 100644
--- a/drivers/net/wireless/mediatek/mt76/mt792x.h
+++ b/drivers/net/wireless/mediatek/mt76/mt792x.h
@@ -31,6 +31,12 @@
#define MT792x_MCU_INIT_RETRY_COUNT 10
#define MT792x_WFSYS_INIT_RETRY_COUNT 2
+#define MT7921_FIRMWARE_WM "mediatek/WIFI_RAM_CODE_MT7961_1.bin"
+#define MT7922_FIRMWARE_WM "mediatek/WIFI_RAM_CODE_MT7922_1.bin"
+
+#define MT7921_ROM_PATCH "mediatek/WIFI_MT7961_patch_mcu_1_2_hdr.bin"
+#define MT7922_ROM_PATCH "mediatek/WIFI_MT7922_patch_mcu_1_1_hdr.bin"
+
struct mt792x_vif;
struct mt792x_sta;
@@ -294,6 +300,28 @@ int mt792x_init_wcid(struct mt792x_dev *dev);
int mt792x_mcu_drv_pmctrl(struct mt792x_dev *dev);
int mt792x_mcu_fw_pmctrl(struct mt792x_dev *dev);
+static inline char *mt792x_ram_name(struct mt792x_dev *dev)
+{
+ switch (mt76_chip(&dev->mt76)) {
+ case 0x7922:
+ return MT7922_FIRMWARE_WM;
+ default:
+ return MT7921_FIRMWARE_WM;
+ }
+}
+
+static inline char *mt792x_patch_name(struct mt792x_dev *dev)
+{
+ switch (mt76_chip(&dev->mt76)) {
+ case 0x7922:
+ return MT7922_ROM_PATCH;
+ default:
+ return MT7921_ROM_PATCH;
+ }
+}
+
+int mt792x_load_firmware(struct mt792x_dev *dev);
+
/* usb */
#define MT_USB_TYPE_VENDOR (USB_TYPE_VENDOR | 0x1f)
#define MT_USB_TYPE_UHW_VENDOR (USB_TYPE_VENDOR | 0x1e)