mt76: avoid mcu_restart function pointer
Subsystems (2)
Lorenzo Bianconi
maintainercover mt76: avoid mcu_restart function pointer
Avoid mcu_restart function pointer whenever it is possible.
Lorenzo Bianconi (6):
wifi: mt76: mt7915: avoid mcu_restart function pointer
wifi: mt76: mt7603: avoid mcu_restart function pointer
wifi: mt76: mt7615: avoid mcu_restart function pointer
wifi: mt76: mt7921: avoid mcu_restart function pointer
wifi: mt76: mt7996: avoid mcu_restart function pointer
wifi: mt76: remove __mt76_mcu_restart macro
drivers/net/wireless/mediatek/mt76/mt76.h | 1 - .../net/wireless/mediatek/mt76/mt7603/mcu.c | 3 +- .../net/wireless/mediatek/mt76/mt7615/mcu.c | 3 +- .../wireless/mediatek/mt76/mt7615/sdio_mcu.c | 1 - .../wireless/mediatek/mt76/mt7615/usb_mcu.c | 1 - .../net/wireless/mediatek/mt76/mt7915/mcu.c | 5 +-- .../wireless/mediatek/mt76/mt7921/pci_mcu.c | 1 - .../net/wireless/mediatek/mt76/mt7921/usb.c | 1 - .../net/wireless/mediatek/mt76/mt7996/mcu.c | 45 +++++++++---------- 9 files changed, 26 insertions(+), 35 deletions(-)
Signature · 1 line
2.38.1
Lorenzo Bianconi
maintainerPATCH 1/6 wifi: mt76: mt7915: avoid mcu_restart function pointer
Run mt76_connac_mcu_restart routine directly and avoid mcu_restart function pointer whenever it is possible.
--- drivers/net/wireless/mediatek/mt76/mt7915/mcu.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)
drivers/net/wireless/mediatek/mt76/mt7915/mcu.c +2 -3
@@ -2104,7 +2104,7 @@ static int mt7915_load_firmware(struct mt7915_dev *dev)/* make sure fw is download state */ if (mt7915_firmware_state (dev, false)) {/* restart firmware once */ -__mt76_mcu_restart (&dev->mt76); +mt76_connac_mcu_restart (&dev->mt76); ret =mt7915_firmware_state (dev, false);if (ret) { dev_err(dev->mt76.dev,
@@ -2336,7 +2336,6 @@ int mt7915_mcu_init(struct mt7915_dev *dev) .headroom = sizeof(struct mt76_connac2_mcu_txd), .mcu_skb_send_msg = mt7915_mcu_send_message, .mcu_parse_response = mt7915_mcu_parse_response, - .mcu_restart = mt76_connac_mcu_restart, }; dev->mt76.mcu_ops = &mt7915_mcu_ops;
@@ -2346,7 +2345,7 @@ int mt7915_mcu_init(struct mt7915_dev *dev)void mt7915_mcu_exit (struct mt7915_dev *dev) { -__mt76_mcu_restart (&dev->mt76); +mt76_connac_mcu_restart (&dev->mt76);if (mt7915_firmware_state (dev, false)) {dev_err (dev->mt76.dev,"Failed to exit mcu\n" ); goto out;
Signature · 1 line
2.38.1
Lorenzo Bianconi
maintainerPATCH 2/6 wifi: mt76: mt7603: avoid mcu_restart function pointer
In reply to Lorenzo BianconiRun mt7603_mcu_restart routine directly and avoid mcu_restart function pointer whenever it is possible.
--- drivers/net/wireless/mediatek/mt76/mt7603/mcu.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
drivers/net/wireless/mediatek/mt76/mt7603/mcu.c +1 -2
@@ -221,7 +221,6 @@ int mt7603_mcu_init(struct mt7603_dev *dev) .headroom = sizeof(struct mt7603_mcu_txd), .mcu_skb_send_msg = mt7603_mcu_skb_send_msg, .mcu_parse_response = mt7603_mcu_parse_response, - .mcu_restart = mt7603_mcu_restart, }; dev->mt76.mcu_ops = &mt7603_mcu_ops;
@@ -230,7 +229,7 @@ int mt7603_mcu_init(struct mt7603_dev *dev)void mt7603_mcu_exit (struct mt7603_dev *dev) { -__mt76_mcu_restart (&dev->mt76); +mt7603_mcu_restart (&dev->mt76);skb_queue_purge (&dev->mt76.mcu.res_q); }
Signature · 1 line
2.38.1
Lorenzo Bianconi
maintainerPATCH 3/6 wifi: mt76: mt7615: avoid mcu_restart function pointer
In reply to Lorenzo BianconiRun mt7615_mcu_restart routine directly and avoid mcu_restart function pointer whenever it is possible.
--- drivers/net/wireless/mediatek/mt76/mt7615/mcu.c | 3 +-- drivers/net/wireless/mediatek/mt76/mt7615/sdio_mcu.c | 1 - drivers/net/wireless/mediatek/mt76/mt7615/usb_mcu.c | 1 - 3 files changed, 1 insertion(+), 4 deletions(-)
drivers/net/wireless/mediatek/mt76/mt7615/mcu.c +1 -2
@@ -1692,7 +1692,6 @@ int mt7615_mcu_init(struct mt7615_dev *dev) .headroom = sizeof(struct mt7615_mcu_txd), .mcu_skb_send_msg = mt7615_mcu_send_message, .mcu_parse_response = mt7615_mcu_parse_response, - .mcu_restart = mt7615_mcu_restart, };int ret;
@@ -1732,7 +1731,7 @@ EXPORT_SYMBOL_GPL(mt7615_mcu_init);void mt7615_mcu_exit (struct mt7615_dev *dev) { -__mt76_mcu_restart (&dev->mt76); +mt7615_mcu_restart (&dev->mt76);mt7615_mcu_set_fw_ctrl (dev);skb_queue_purge (&dev->mt76.mcu.res_q); }
drivers/net/wireless/mediatek/mt76/mt7615/sdio_mcu.c +0 -1
@@ -137,7 +137,6 @@ int mt7663s_mcu_init(struct mt7615_dev *dev) .tailroom = MT_USB_TAIL_SIZE, .mcu_skb_send_msg = mt7663s_mcu_send_message, .mcu_parse_response = mt7615_mcu_parse_response, - .mcu_restart = mt7615_mcu_restart, .mcu_rr = mt76_connac_mcu_reg_rr, .mcu_wr = mt76_connac_mcu_reg_wr, };
drivers/net/wireless/mediatek/mt76/mt7615/usb_mcu.c +0 -1
@@ -69,7 +69,6 @@ int mt7663u_mcu_init(struct mt7615_dev *dev) .tailroom = MT_USB_TAIL_SIZE, .mcu_skb_send_msg = mt7663u_mcu_send_message, .mcu_parse_response = mt7615_mcu_parse_response, - .mcu_restart = mt7615_mcu_restart, };int ret;
Signature · 1 line
2.38.1
Lorenzo Bianconi
maintainerPATCH 4/6 wifi: mt76: mt7921: avoid mcu_restart function pointer
In reply to Lorenzo BianconiAvoid mcu_restart function pointer whenever it is possible.
--- drivers/net/wireless/mediatek/mt76/mt7921/pci_mcu.c | 1 - drivers/net/wireless/mediatek/mt76/mt7921/usb.c | 1 - 2 files changed, 2 deletions(-)
drivers/net/wireless/mediatek/mt76/mt7921/pci_mcu.c +0 -1
@@ -44,7 +44,6 @@ int mt7921e_mcu_init(struct mt7921_dev *dev) .headroom = sizeof(struct mt76_connac2_mcu_txd), .mcu_skb_send_msg = mt7921_mcu_send_message, .mcu_parse_response = mt7921_mcu_parse_response, - .mcu_restart = mt76_connac_mcu_restart, };int err;
drivers/net/wireless/mediatek/mt76/mt7921/usb.c +0 -1
@@ -133,7 +133,6 @@ static int mt7921u_mcu_init(struct mt7921_dev *dev) .tailroom = MT_USB_TAIL_SIZE, .mcu_skb_send_msg = mt7921u_mcu_send_message, .mcu_parse_response = mt7921_mcu_parse_response, - .mcu_restart = mt76_connac_mcu_restart, };int ret;
Signature · 1 line
2.38.1
Lorenzo Bianconi
maintainerPATCH 5/6 wifi: mt76: mt7996: avoid mcu_restart function pointer
In reply to Lorenzo BianconiRun mt7996_mcu_restart routine directly and avoid mcu_restart function pointer whenever it is possible.
--- .../net/wireless/mediatek/mt76/mt7996/mcu.c | 45 +++++++++---------- 1 file changed, 22 insertions(+), 23 deletions(-)
drivers/net/wireless/mediatek/mt76/mt7996/mcu.c +22 -23
@@ -2241,6 +2241,26 @@ mt7996_firmware_state(struct mt7996_dev *dev, bool wa)return 0 ; } +static int +mt7996_mcu_restart (struct mt76_dev *dev) +{ +struct { +u8 __rsv1[4 ]; + +__le16 tag; +__le16 len; +u8 power_mode; +u8 __rsv2[3 ]; + } __packed req = { + .tag =cpu_to_le16 (UNI_POWER_OFF ), + .len =cpu_to_le16 (sizeof (req) -4 ), + .power_mode =1 , + }; + +return mt76_mcu_send_msg (dev,MCU_WM_UNI_CMD (POWER_CREL ), &req, +sizeof (req), false); +} +static int mt7996_load_firmware (struct mt7996_dev *dev) {int ret;
@@ -2248,7 +2268,7 @@ static int mt7996_load_firmware(struct mt7996_dev *dev)/* make sure fw is download state */ if (mt7996_firmware_state (dev, false)) {/* restart firmware once */ -__mt76_mcu_restart (&dev->mt76); +mt7996_mcu_restart (&dev->mt76); ret =mt7996_firmware_state (dev, false);if (ret) { dev_err(dev->mt76.dev,
@@ -2377,33 +2397,12 @@ mt7996_mcu_init_rx_airtime(struct mt7996_dev *dev) MCU_WM_UNI_CMD(VOW), true); } -static int -mt7996_mcu_restart (struct mt76_dev *dev) -{ -struct { -u8 __rsv1[4 ]; - -__le16 tag; -__le16 len; -u8 power_mode; -u8 __rsv2[3 ]; - } __packed req = { - .tag =cpu_to_le16 (UNI_POWER_OFF ), - .len =cpu_to_le16 (sizeof (req) -4 ), - .power_mode =1 , - }; - -return mt76_mcu_send_msg (dev,MCU_WM_UNI_CMD (POWER_CREL ), &req, -sizeof (req), false); -} -int mt7996_mcu_init (struct mt7996_dev *dev) {static const struct mt76_mcu_ops mt7996_mcu_ops = { .headroom =sizeof (struct mt76_connac2_mcu_txd ),/* reuse */ .mcu_skb_send_msg = mt7996_mcu_send_message, .mcu_parse_response = mt7996_mcu_parse_response, - .mcu_restart = mt7996_mcu_restart, };int ret;
@@ -2451,7 +2450,7 @@ int mt7996_mcu_init(struct mt7996_dev *dev)void mt7996_mcu_exit (struct mt7996_dev *dev) { -__mt76_mcu_restart (&dev->mt76); +mt7996_mcu_restart (&dev->mt76);if (mt7996_firmware_state (dev, false)) {dev_err (dev->mt76.dev,"Failed to exit mcu\n" ); goto out;
Signature · 1 line
2.38.1
Lorenzo Bianconi
maintainerPATCH 6/6 wifi: mt76: remove __mt76_mcu_restart macro
In reply to Lorenzo Bianconi__mt76_mcu_restart is no longer used
--- drivers/net/wireless/mediatek/mt76/mt76.h | 1 - 1 file changed, 1 deletion(-)
drivers/net/wireless/mediatek/mt76/mt76.h +0 -1
@@ -888,7 +888,6 @@ extern struct ieee80211_rate mt76_rates[12];#define mt76_mcu_restart (dev, ...) (dev)->mt76.mcu_ops->mcu_restart(&((dev)->mt76)) -#define __mt76_mcu_restart (dev, ...) (dev)->mcu_ops->mcu_restart((dev))#define mt76_set (dev, offset, val) mt76_rmw(dev, offset, 0, val)#define mt76_clear (dev, offset, val) mt76_rmw(dev, offset, val, 0)
Signature · 1 line
2.38.1