Subject: pull-request: wireless-drivers-next-2021-04-23

From: Kalle Valo <[email-masked]>
Date: Fri, 23 Apr 2021 12:02:48 +0000 (UTC)

Hi,

here's a pull request to net-next tree, more info below. Please let me know if
there are any problems.

Kalle

The following changes since commit a926c025d56bb1acd8a192fca0e307331ee91b30:

  net: wwan: mhi_wwan_ctrl: Fix RX buffer starvation (2021-04-20 17:13:43 -0700)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next.git tags/wireless-drivers-next-2021-04-23

for you to fetch changes up to 9382531ec63fc123d1d6ff07b0558b6af4ea724b:

  Merge tag 'mt76-for-kvalo-2021-04-21' of https://github.com/nbd168/wireless (2021-04-22 17:41:56 +0300)

----------------------------------------------------------------
wireless-drivers-next patches for v5.13

Third, and final, set of patches for v5.13. We got one more week
before the merge window and this includes from that extra week.
Smaller features to rtw88 and mt76, but mostly this contains fixes.

rtw88

* 8822c: Add gap-k calibration to improve long range performance

mt76

* parse rate power limits from DT

* debugfs file to test firmware crash

* debugfs to disable NAPI threaded mode

----------------------------------------------------------------
Anilkumar Kolli (1):
      ath11k: fix warning in ath11k_mhi_config

Christophe JAILLET (1):
      brcmfmac: Avoid GFP_ATOMIC when GFP_KERNEL is enough

Colin Ian King (3):
      mt76: mt7615: Fix a dereference of pointer sta before it is null checked
      ath11k: qmi: Fix spelling mistake "requeqst" -> "request"
      wlcore: Fix buffer overrun by snprintf due to incorrect buffer size

Dan Carpenter (3):
      mt76: mt7615: fix a precision vs width bug in printk
      mt76: mt7915: fix a precision vs width bug in printk
      mt76: mt7921: fix a precision vs width bug in printk

Felix Fietkau (6):
      mt76: flush tx status queue on DMA reset
      mt76: add functions for parsing rate power limits from DT
      mt76: mt7615: implement support for using DT rate power limits
      mt76: mt7615: fix hardware error recovery for mt7663
      mt76: mt7615: fix entering driver-own state on mt7663
      mt76: mt7615: load ROM patch before checking patch semaphore status

Guo-Feng Fan (4):
      rtw88: 8822c: reorder macro position according to the register number
      rtw88: 8822c: Add gap-k calibration to improve long range performance
      rtw88: 8822c: debug: allow debugfs to enable/disable TXGAPK
      rtw88: 8821c: Don't set RX_FLAG_DECRYPTED if packet has no encryption

Gustavo A. R. Silva (2):
      wl3501_cs: Fix out-of-bounds warnings in wl3501_send_pkt
      wl3501_cs: Fix out-of-bounds warnings in wl3501_mgmt_join

Kalle Valo (1):
      Merge tag 'mt76-for-kvalo-2021-04-21' of https://github.com/nbd168/wireless

Lee Gibson (1):
      qtnfmac: Fix possible buffer overflow in qtnf_event_handle_external_auth

Lorenzo Bianconi (43):
      mt76: mt7921: add mt7921_dma_cleanup in mt7921_unregister_device
      dt-bindings:net:wireless:mediatek,mt76: introduce power-limits node
      mt76: mt7615: do not use mt7615 single-sku values for mt7663
      mt76: introduce single-sku support for mt7663/mt7921
      mt76: mt7921: move hw configuration in mt7921_register_device
      mt76: improve mcu error logging
      mt76: mt7921: run mt7921_mcu_fw_log_2_host holding mt76 mutex
      mt76: mt7921: do not use 0 as NULL pointer
      mt76: connac: move mcu_update_arp_filter in mt76_connac module
      mt76: mt7921: remove leftover function declaration
      mt76: mt7921: fix a race between mt7921_mcu_drv_pmctrl and mt7921_mcu_fw_pmctrl
      mt76: mt7663: fix a race between mt7615_mcu_drv_pmctrl and mt7615_mcu_fw_pmctrl
      mt76: connac: introduce wake counter for fw_pmctrl synchronization
      mt76: mt7921: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path
      mt76: mt7663: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path
      mt76: dma: add the capability to define a custom rx napi poll routine
      mt76: mt7921: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx/rx napi
      mt76: mt7663: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx/rx napi
      mt76: connac: unschedule ps_work in mt76_connac_pm_wake
      mt76: connac: check wake refcount in mcu_fw_pmctrl
      mt76: connac: remove MT76_STATE_PM in mac_tx_free
      mt76: mt7921: get rid of useless MT76_STATE_PM in mt7921_mac_work
      mt76: connac: alaways wake the device before scanning
      mt76: mt7615: rely on pm refcounting in mt7615_led_set_config
      mt76: connac: do not run mt76_txq_schedule_all directly
      mt76: connac: use waitqueue for runtime-pm
      mt76: remove MT76_STATE_PM in tx path
      mt76: mt7921: add awake and doze time accounting
      mt76: mt7921: enable sw interrupts
      mt76: mt7921: move mt7921_dma_reset in dma.c
      mt76: mt7921: introduce mt7921_wpdma_reset utility routine
      mt76: mt7921: introduce mt7921_dma_{enable,disable} utilities
      mt76: mt7921: introduce mt7921_wpdma_reinit_cond utility routine
      mt76: move token_lock, token and token_count in mt76_dev
      mt76: move token utilities in mt76 common module
      mt76: mt7921: get rid of mcu_reset function pointer
      mt76: mt7921: improve doze opportunity
      mt76: mt7663: add awake and doze time accounting
      mt76: connac: unschedule mac_work before going to sleep
      mt76: mt7921: introduce mt7921_mcu_sta_add routine
      mt76: debugfs: introduce napi_threaded node
      mt76: move mt76_token_init in mt76_alloc_device
      mt76: mt7921: reinit wpdma during drv_own if necessary

Lv Yunlong (1):
      ath10k: Fix a use after free in ath10k_htc_send_bundle

Ping-Ke Shih (1):
      rtlwifi: implement set_tim by update beacon content

Po-Hao Huang (1):
      rtw88: refine napi deinit flow

Ryder Lee (6):
      mt76: mt7615: fix memleak when mt7615_unregister_device()
      mt76: mt7915: fix memleak when mt7915_unregister_device()
      mt76: mt7915: only free skbs after mt7915_dma_reset() when reset happens
      mt76: mt7615: only free skbs after mt7615_dma_reset() when reset happens
      mt76: mt7615: use ieee80211_free_txskb() in mt7615_tx_token_put()
      mt76: mt7915: add support for applying pre-calibration data

Sean Wang (7):
      mt76: mt7921: add dumping Tx power table
      mt76: mt7921: add wifisys reset support in debugfs
      mt76: mt7921: abort uncompleted scan by wifi reset
      mt76: connac: introduce mt76_connac_mcu_set_deep_sleep utility
      mt76: mt7921: enable deep sleep when the device suspends
      mt76: mt7921: fix possible invalid register access
      mt76: mt7921: mt7921_stop should put device in fw_own state

Shayne Chen (8):
      mt76: testmode: add support to send larger packet
      mt76: mt7915: rework mt7915_tm_set_tx_len()
      mt76: mt7915: fix rate setting of tx descriptor in testmode
      mt76: extend DT rate power limits to support 11ax devices
      mt76: mt7915: add support for DT rate power limits
      mt76: mt7915: rework the flow of txpower setting
      mt76: mt7915: directly read per-rate tx power from registers
      mt76: mt7915: do not read rf value from efuse in flash mode

Shuah Khan (1):
      ath10k: Fix ath10k_wmi_tlv_op_pull_peer_stats_info() unlock without lock

Toke Høiland-Jørgensen (1):
      ath9k: Fix error check in ath9k_hw_read_revisions() for PCI devices

Wan Jiabing (1):
      libertas_tf: Remove duplicate struct declaration

Yu-Yen Ting (1):
      rtw88: Fix potential unrecoverable tx queue stop

 .../bindings/net/wireless/mediatek,mt76.yaml       | 107 +++
 drivers/net/wireless/ath/ath10k/htc.c              |   2 +-
 drivers/net/wireless/ath/ath10k/wmi-tlv.c          |   3 +
 drivers/net/wireless/ath/ath11k/mhi.c              |  15 +-
 drivers/net/wireless/ath/ath11k/qmi.c              |   2 +-
 drivers/net/wireless/ath/ath9k/htc_drv_init.c      |   2 +-
 drivers/net/wireless/ath/ath9k/hw.c                |   2 +-
 .../wireless/broadcom/brcm80211/brcmfmac/core.c    |   2 +-
 .../net/wireless/marvell/libertas_tf/libertas_tf.h |   1 -
 drivers/net/wireless/mediatek/mt76/debugfs.c       |  28 +
 drivers/net/wireless/mediatek/mt76/dma.c           |  10 +-
 drivers/net/wireless/mediatek/mt76/dma.h           |   1 +
 drivers/net/wireless/mediatek/mt76/eeprom.c        | 231 ++++++-
 drivers/net/wireless/mediatek/mt76/mac80211.c      |   3 +
 drivers/net/wireless/mediatek/mt76/mcu.c           |   4 -
 drivers/net/wireless/mediatek/mt76/mt76.h          |  77 ++-
 drivers/net/wireless/mediatek/mt76/mt7603/dma.c    |   2 +-
 drivers/net/wireless/mediatek/mt76/mt7603/mac.c    |   2 +
 drivers/net/wireless/mediatek/mt76/mt7603/mcu.c    |   5 +-
 .../net/wireless/mediatek/mt76/mt7615/debugfs.c    |  32 +-
 drivers/net/wireless/mediatek/mt76/mt7615/dma.c    |  47 +-
 drivers/net/wireless/mediatek/mt76/mt7615/init.c   |  22 +-
 drivers/net/wireless/mediatek/mt76/mt7615/mac.c    |  44 +-
 drivers/net/wireless/mediatek/mt76/mt7615/main.c   |  43 +-
 drivers/net/wireless/mediatek/mt76/mt7615/mcu.c    | 198 +++---
 drivers/net/wireless/mediatek/mt76/mt7615/mmio.c   |  24 +-
 drivers/net/wireless/mediatek/mt76/mt7615/mt7615.h |   7 +-
 .../net/wireless/mediatek/mt76/mt7615/pci_init.c   |  16 +-
 .../net/wireless/mediatek/mt76/mt7615/pci_mac.c    |  23 +-
 drivers/net/wireless/mediatek/mt76/mt7615/regs.h   |  11 +
 .../net/wireless/mediatek/mt76/mt7615/usb_sdio.c   |   3 +-
 drivers/net/wireless/mediatek/mt76/mt76_connac.h   |  54 +-
 .../net/wireless/mediatek/mt76/mt76_connac_mac.c   |  23 +-
 .../net/wireless/mediatek/mt76/mt76_connac_mcu.c   | 197 +++++-
 .../net/wireless/mediatek/mt76/mt76_connac_mcu.h   |  37 ++
 drivers/net/wireless/mediatek/mt76/mt76x02_mcu.c   |   5 +-
 drivers/net/wireless/mediatek/mt76/mt76x02_mmio.c  |   4 +-
 .../net/wireless/mediatek/mt76/mt7915/debugfs.c    |  78 ++-
 drivers/net/wireless/mediatek/mt76/mt7915/dma.c    |   2 +-
 drivers/net/wireless/mediatek/mt76/mt7915/eeprom.c | 165 ++---
 drivers/net/wireless/mediatek/mt76/mt7915/eeprom.h |  51 +-
 drivers/net/wireless/mediatek/mt76/mt7915/init.c   |  85 +--
 drivers/net/wireless/mediatek/mt76/mt7915/mac.c    |  95 +--
 drivers/net/wireless/mediatek/mt76/mt7915/main.c   |   8 +-
 drivers/net/wireless/mediatek/mt76/mt7915/mcu.c    | 185 +++++-
 drivers/net/wireless/mediatek/mt76/mt7915/mcu.h    |   2 +
 drivers/net/wireless/mediatek/mt76/mt7915/mt7915.h |  19 +-
 drivers/net/wireless/mediatek/mt76/mt7915/pci.c    |  26 +-
 drivers/net/wireless/mediatek/mt76/mt7915/regs.h   |   5 +
 .../net/wireless/mediatek/mt76/mt7915/testmode.c   |  22 +-
 .../net/wireless/mediatek/mt76/mt7921/debugfs.c    | 144 +++-
 drivers/net/wireless/mediatek/mt76/mt7921/dma.c    | 240 +++++--
 drivers/net/wireless/mediatek/mt76/mt7921/init.c   |  36 +-
 drivers/net/wireless/mediatek/mt76/mt7921/mac.c    | 193 ++----
 drivers/net/wireless/mediatek/mt76/mt7921/main.c   |  62 +-
 drivers/net/wireless/mediatek/mt76/mt7921/mcu.c    | 126 ++--
 drivers/net/wireless/mediatek/mt76/mt7921/mcu.h    |  17 +
 drivers/net/wireless/mediatek/mt76/mt7921/mt7921.h |  60 +-
 drivers/net/wireless/mediatek/mt76/mt7921/pci.c    |  30 +-
 drivers/net/wireless/mediatek/mt76/mt7921/regs.h   |  17 +-
 drivers/net/wireless/mediatek/mt76/testmode.c      | 159 ++++-
 drivers/net/wireless/mediatek/mt76/testmode.h      |   2 +-
 drivers/net/wireless/mediatek/mt76/tx.c            |  81 ++-
 drivers/net/wireless/quantenna/qtnfmac/event.c     |   6 +-
 drivers/net/wireless/realtek/rtlwifi/core.c        |  32 +
 drivers/net/wireless/realtek/rtlwifi/core.h        |   1 +
 drivers/net/wireless/realtek/rtlwifi/usb.c         |   3 +
 drivers/net/wireless/realtek/rtlwifi/wifi.h        |   1 +
 drivers/net/wireless/realtek/rtw88/debug.c         |  91 +++
 drivers/net/wireless/realtek/rtw88/fw.c            |  12 +
 drivers/net/wireless/realtek/rtw88/fw.h            |   5 +
 drivers/net/wireless/realtek/rtw88/main.h          |  31 +
 drivers/net/wireless/realtek/rtw88/pci.c           |  29 +-
 drivers/net/wireless/realtek/rtw88/pci.h           |   1 +
 drivers/net/wireless/realtek/rtw88/reg.h           |   8 +
 drivers/net/wireless/realtek/rtw88/rtw8821c.c      |   3 +-
 drivers/net/wireless/realtek/rtw88/rtw8822c.c      | 724 ++++++++++++++++++++-
 drivers/net/wireless/realtek/rtw88/rtw8822c.h      | 336 ++++++----
 drivers/net/wireless/ti/wlcore/debugfs.h           |   2 +-
 drivers/net/wireless/wl3501.h                      |  47 +-
 drivers/net/wireless/wl3501_cs.c                   |  54 +-
 81 files changed, 3428 insertions(+), 1157 deletions(-)