All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kalle Valo <kvalo@codeaurora.org>
To: Felix Fietkau <nbd@nbd.name>
Cc: linux-wireless <linux-wireless@vger.kernel.org>
Subject: Re: pull request: mt76 2021-01-29
Date: Mon,  8 Feb 2021 10:27:28 +0000 (UTC)	[thread overview]
Message-ID: <20210208102728.BBBE3C433CA@smtp.codeaurora.org> (raw)
In-Reply-To: <3eba5570-7cff-f51e-4050-aa0054f98f81@nbd.name>

Felix Fietkau <nbd@nbd.name> wrote:

> Hi Kalle,
> 
> here's my first pull request for 5.12.
> 
> The following changes since commit 4832bb371c4175ffb506a96accbb08ef2b2466e7:
> 
>   iwl4965: do not process non-QOS frames on txq->sched_retry path (2021-01-25 16:43:27 +0200)
> 
> are available in the Git repository at:
> 
>   https://github.com/nbd168/wireless tags/mt76-for-kvalo-2021-01-29
> 
> for you to fetch changes up to d2bf7959d9c0f631ef860edaf834d55773fdedff:
> 
>   mt76: mt7663: introduce coredump support (2021-01-29 18:10:02 +0100)
> 
> ----------------------------------------------------------------
> mt76 patches for 5.12
> 
> * add new mt7921e driver
> * factor out common code shared between 7615/7663 and 7921
> * performance optimizations
> * 7915 dbdc fixes
> * 802.11 encap offload support
> * support for multiple pcie gen1 host interfaces on 7915
> * 7915 testmode support
> * bugfixes
> * testmode support enhancements
> * endian fixes
> * 7915 txbf support
> 
> ----------------------------------------------------------------
> Felix Fietkau (15):
>       mt76: mt7603: fix ED/CCA monitoring with single-stream devices
>       mt76: mt7915: ensure that init work completes before starting the device
>       mt76: mt7915: do not set DRR group for stations
>       mt76: mt7915: rework mcu API
>       mt76: mt7915: disable RED support in the WA firmware
>       mt76: mt7915: fix eeprom parsing for DBDC
>       mt76: mt7915: fix eeprom DBDC band selection
>       mt76: mt7615: unify init work
>       mt76: mt7915: bring up the WA event rx queue for band1
>       mt76: fix crash on tearing down ext phy
>       mt76: mt7915: add support for using a secondary PCIe link for gen1
>       mt76: mt7915: make vif index per adapter instead of per band
>       mt76: move vif_mask back from mt76_phy to mt76_dev
>       mt76: reduce q->lock hold time
>       mt76: mt7615: reduce VHT maximum MPDU length
> 
> Lorenzo Bianconi (19):
>       mt76: mt7915: run mt7915_configure_filter holding mt76 mutex
>       mt76: mt7915: fix endianness warning in mt7915_mcu_set_radar_th
>       mt76: mt7915: simplify mt7915_mcu_send_message routine
>       mt76: move mac_work in mt76_core module
>       mt76: move chainmask in mt76_phy
>       mt76: mt7615: set mcu country code in mt7615_mcu_set_channel_domain()
>       mt76: usb: process URBs with status EPROTO properly
>       mt76: introduce mt76_vif data structure
>       mt76: mt76_connac: create mcu library
>       mt76: mt76_connac: move hw_scan and sched_scan routine in mt76_connac_mcu module
>       mt76: mt76_connac: move WoW and suspend code in mt76_connac_mcu module
>       mt76: mt76_connac: move pm data struct in mt76_connac.h
>       mt76: mt76_connac: move pm utility routines in mt76_connac_lib module
>       mt76: mt7921: rely on mt76_connac_mcu common library
>       mt76: mt7921: rely on mt76_connac_mcu module for sched_scan and hw_scan
>       mt76: mt7921: rely on mt76_connac_mcu module for suspend and WoW support
>       mt76: mt7921: introduce regdomain notifier support
>       mt76: mt7921: enable MSI interrupts
>       mt76: mt7663: introduce coredump support
> 
> Ryder Lee (9):
>       mt76: mt7915: add vif check in mt7915_update_vif_beacon()
>       mt76: mt7615: add vif check in mt7615_update_vif_beacon()
>       mt76: mt7915: fix MT_CIPHER_BIP_CMAC_128 setkey
>       mt76: mt7915: reset token when mac_reset happens
>       mt76: mt7615: reset token when mac_reset happens
>       mt76: mt7915: drop zero-length packet to avoid Tx hang
>       mt76: mt7915: simplify peer's TxBF capability check
>       mt76: mt7915: add implicit Tx beamforming support
>       mt76: mt7915: support TxBF for DBDC
> 
> Sean Wang (14):
>       mt76: mt7921: add MAC support
>       mt76: mt7921: add MCU support
>       mt76: mt7921: add DMA support
>       mt76: mt7921: add EEPROM support
>       mt76: mt7921: add ieee80211_ops
>       mt76: mt7921: introduce mt7921e support
>       mt76: mt7921: add debugfs support
>       mt76: mt7921: introduce schedule scan support
>       mt76: mt7921: introduce 802.11 PS support in sta mode
>       mt76: mt7921: introduce support for hardware beacon filter
>       mt76: mt7921: introduce beacon_loss mcu event
>       mt76: mt7921: introduce PM support
>       mt76: mt7921: introduce Runtime PM support
>       mt76: mt7921: add coredump support
> 
> Shayne Chen (18):
>       mt76: mt7915: add support for flash mode
>       mt76: mt7915: add partial add_bss_info command on testmode init
>       mt76: testmode: introduce dbdc support
>       mt76: testmode: move mtd part to mt76_dev
>       mt76: mt7915: move testmode data from dev to phy
>       mt76: mt7615: move testmode data from dev to phy
>       mt76: mt7915: force ldpc for bw larger than 20MHz in testmode
>       mt76: testmode: add support to set user-defined spe index
>       mt76: testmode: add attributes for ipg related parameters
>       mt76: testmode: make tx queued limit adjustable
>       mt76: mt7915: split edca update function
>       mt76: mt7915: add support for ipg in testmode
>       mt76: mt7915: calculate new packet length when tx_time is set in testmode
>       mt76: mt7915: clean hw queue before starting new testmode tx
>       mt76: testmode: add a new state for continuous tx
>       mt76: mt7915: rework set state part in testmode
>       mt76: mt7915: add support for continuous tx in testmode
>       mt76: mt7615: mt7915: disable txpower sku when testmode enabled
> 
> Xu Wang (1):
>       mt76: mt7915: Remove unneeded semicolon
> 
> Zheng Yongjun (2):
>       mt76: mt7615: convert comma to semicolon
>       mt76: mt7915: convert comma to semicolon
> 
>  drivers/net/wireless/mediatek/mt76/Kconfig           |    5 +
>  drivers/net/wireless/mediatek/mt76/Makefile          |    4 +
>  drivers/net/wireless/mediatek/mt76/dma.c             |    8 +-
>  drivers/net/wireless/mediatek/mt76/eeprom.c          |    4 +-
>  drivers/net/wireless/mediatek/mt76/mac80211.c        |    8 +-
>  drivers/net/wireless/mediatek/mt76/mt76.h            |   75 +++-
>  drivers/net/wireless/mediatek/mt76/mt7603/init.c     |    2 +-
>  drivers/net/wireless/mediatek/mt76/mt7603/mac.c      |   24 +-
>  drivers/net/wireless/mediatek/mt76/mt7603/main.c     |   16 +-
>  drivers/net/wireless/mediatek/mt76/mt7603/mt7603.h   |    2 -
>  drivers/net/wireless/mediatek/mt76/mt7615/Kconfig    |    3 +-
>  drivers/net/wireless/mediatek/mt76/mt7615/debugfs.c  |   17 +
>  drivers/net/wireless/mediatek/mt76/mt7615/eeprom.c   |    2 +-
>  drivers/net/wireless/mediatek/mt76/mt7615/init.c     |   64 ++--
>  drivers/net/wireless/mediatek/mt76/mt7615/mac.c      |  210 ++++++-----
>  drivers/net/wireless/mediatek/mt76/mt7615/main.c     |  192 +++++-----
>  drivers/net/wireless/mediatek/mt76/mt7615/mcu.c      | 1617 ++++++++--------------------------------------------------------------------------
>  drivers/net/wireless/mediatek/mt76/mt7615/mcu.h      |  683 +----------------------------------
>  drivers/net/wireless/mediatek/mt76/mt7615/mt7615.h   |  132 ++-----
>  drivers/net/wireless/mediatek/mt76/mt7615/pci.c      |    9 +-
>  drivers/net/wireless/mediatek/mt76/mt7615/pci_init.c |   23 +-
>  drivers/net/wireless/mediatek/mt76/mt7615/pci_mac.c  |    2 +-
>  drivers/net/wireless/mediatek/mt76/mt7615/sdio.c     |   11 +-
>  drivers/net/wireless/mediatek/mt76/mt7615/testmode.c |  101 +++---
>  drivers/net/wireless/mediatek/mt76/mt7615/usb.c      |   12 +-
>  drivers/net/wireless/mediatek/mt76/mt76_connac.h     |  105 ++++++
>  drivers/net/wireless/mediatek/mt76/mt76_connac_mac.c |  119 +++++++
>  drivers/net/wireless/mediatek/mt76/mt76_connac_mcu.c | 1842 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  drivers/net/wireless/mediatek/mt76/mt76_connac_mcu.h |  979 ++++++++++++++++++++++++++++++++++++++++++++++++++
>  drivers/net/wireless/mediatek/mt76/mt76x0/pci.c      |    4 +-
>  drivers/net/wireless/mediatek/mt76/mt76x0/usb.c      |    4 +-
>  drivers/net/wireless/mediatek/mt76/mt76x02.h         |    2 -
>  drivers/net/wireless/mediatek/mt76/mt76x02_mac.c     |   10 +-
>  drivers/net/wireless/mediatek/mt76/mt76x02_mmio.c    |    2 +-
>  drivers/net/wireless/mediatek/mt76/mt76x02_phy.c     |    4 +-
>  drivers/net/wireless/mediatek/mt76/mt76x02_util.c    |   14 +-
>  drivers/net/wireless/mediatek/mt76/mt76x2/mcu.c      |    2 +-
>  drivers/net/wireless/mediatek/mt76/mt76x2/pci_init.c |    2 +-
>  drivers/net/wireless/mediatek/mt76/mt76x2/pci_main.c |    4 +-
>  drivers/net/wireless/mediatek/mt76/mt76x2/usb_init.c |    2 +-
>  drivers/net/wireless/mediatek/mt76/mt76x2/usb_main.c |    2 +-
>  drivers/net/wireless/mediatek/mt76/mt7915/debugfs.c  |   28 ++
>  drivers/net/wireless/mediatek/mt76/mt7915/dma.c      |  102 ++++--
>  drivers/net/wireless/mediatek/mt76/mt7915/eeprom.c   |   42 ++-
>  drivers/net/wireless/mediatek/mt76/mt7915/eeprom.h   |   25 +-
>  drivers/net/wireless/mediatek/mt76/mt7915/init.c     |   48 +--
>  drivers/net/wireless/mediatek/mt76/mt7915/mac.c      |  129 +++++--
>  drivers/net/wireless/mediatek/mt76/mt7915/mac.h      |    2 +
>  drivers/net/wireless/mediatek/mt76/mt7915/main.c     |   46 +--
>  drivers/net/wireless/mediatek/mt76/mt7915/mcu.c      |  542 +++++++++++++++-------------
>  drivers/net/wireless/mediatek/mt76/mt7915/mcu.h      |   63 ++++
>  drivers/net/wireless/mediatek/mt76/mt7915/mt7915.h   |   69 ++--
>  drivers/net/wireless/mediatek/mt76/mt7915/pci.c      |  177 ++++++++-
>  drivers/net/wireless/mediatek/mt76/mt7915/regs.h     |   29 +-
>  drivers/net/wireless/mediatek/mt76/mt7915/testmode.c |  528 +++++++++++++++++++++++----
>  drivers/net/wireless/mediatek/mt76/mt7915/testmode.h |   59 +++
>  drivers/net/wireless/mediatek/mt76/mt7921/Kconfig    |   11 +
>  drivers/net/wireless/mediatek/mt76/mt7921/Makefile   |    5 +
>  drivers/net/wireless/mediatek/mt76/mt7921/debugfs.c  |  250 +++++++++++++
>  drivers/net/wireless/mediatek/mt76/mt7921/dma.c      |  356 ++++++++++++++++++
>  drivers/net/wireless/mediatek/mt76/mt7921/eeprom.c   |  100 ++++++
>  drivers/net/wireless/mediatek/mt76/mt7921/eeprom.h   |   27 ++
>  drivers/net/wireless/mediatek/mt76/mt7921/init.c     |  282 +++++++++++++++
>  drivers/net/wireless/mediatek/mt76/mt7921/mac.c      | 1516 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  drivers/net/wireless/mediatek/mt76/mt7921/mac.h      |  333 +++++++++++++++++
>  drivers/net/wireless/mediatek/mt76/mt7921/main.c     | 1161 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  drivers/net/wireless/mediatek/mt76/mt7921/mcu.c      | 1308 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  drivers/net/wireless/mediatek/mt76/mt7921/mcu.h      |  434 ++++++++++++++++++++++
>  drivers/net/wireless/mediatek/mt76/mt7921/mt7921.h   |  342 ++++++++++++++++++
>  drivers/net/wireless/mediatek/mt76/mt7921/pci.c      |  292 +++++++++++++++
>  drivers/net/wireless/mediatek/mt76/mt7921/regs.h     |  419 ++++++++++++++++++++++
>  drivers/net/wireless/mediatek/mt76/testmode.c        |  124 ++++---
>  drivers/net/wireless/mediatek/mt76/testmode.h        |   17 +
>  drivers/net/wireless/mediatek/mt76/tx.c              |   39 +-
>  drivers/net/wireless/mediatek/mt76/usb.c             |    1 +
>  75 files changed, 12019 insertions(+), 3210 deletions(-)
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt76_connac.h
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt76_connac_mac.c
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt76_connac_mcu.c
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt76_connac_mcu.h
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt7921/Kconfig
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt7921/Makefile
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt7921/debugfs.c
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt7921/dma.c
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt7921/eeprom.c
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt7921/eeprom.h
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt7921/init.c
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt7921/mac.c
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt7921/mac.h
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt7921/main.c
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt7921/mcu.c
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt7921/mcu.h
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt7921/mt7921.h
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt7921/pci.c
>  create mode 100644 drivers/net/wireless/mediatek/mt76/mt7921/regs.h

This had conflicts:

$ git pull https://github.com/nbd168/wireless tags/mt76-for-kvalo-2021-01-29
>From https://github.com/nbd168/wireless
 * tag                         mt76-for-kvalo-2021-01-29 -> FETCH_HEAD
Auto-merging drivers/net/wireless/mediatek/mt76/mt7915/mcu.c
CONFLICT (content): Merge conflict in drivers/net/wireless/mediatek/mt76/mt7915/mcu.c
Auto-merging drivers/net/wireless/mediatek/mt76/mt7615/mcu.c
Automatic merge failed; fix conflicts and then commit the result.

With this commit from w-d:

b7c568752ef3 mt76: Fix queue ID variable types after mcu queue split

And these commits from your tag:

b8135057988e mt76: mt7915: simplify mt7915_mcu_send_message routine
c203dd621780 mt76: mt7915: rework mcu API

This was not easy to fix. Felix & Lorenzo, please carefully check my resolution
in the pending branch:

https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next.git/commit/?h=pending&id=dfe85c17c7c7183e1d409b948fae9d8e545cb25d

This is the diff output of my resolution:

diff --cc drivers/net/wireless/mediatek/mt76/mt7915/mcu.c
index e211a2bd4d3c,0296f2aa7997..000000000000
--- a/drivers/net/wireless/mediatek/mt76/mt7915/mcu.c
+++ b/drivers/net/wireless/mediatek/mt76/mt7915/mcu.c
@@@ -255,10 -248,10 +248,10 @@@ mt7915_mcu_send_message(struct mt76_de
  {
        struct mt7915_dev *dev = container_of(mdev, struct mt7915_dev, mt76);
        struct mt7915_mcu_txd *mcu_txd;
-       u8 seq, pkt_fmt, qidx;
 -      enum mt76_txq_id txq;
 +      enum mt76_mcuq_id qid;
        __le32 *txd;
        u32 val;
+       u8 seq;
  
        /* TODO: make dynamic based on msg type */
        mdev->mcu.timeout = 20 * HZ;
@@@ -267,22 -260,16 +260,16 @@@
        if (!seq)
                seq = ++dev->mt76.mcu.msg_seq & 0xf;
  
-       if (cmd == -MCU_CMD_FW_SCATTER) {
 -      if (cmd == MCU_CMD(FW_SCATTER)) {
 -              txq = MT_MCUQ_FWDL;
++      if (cmd == MCU_CMD_FW_SCATTER) {
 +              qid = MT_MCUQ_FWDL;
                goto exit;
        }
  
        mcu_txd = (struct mt7915_mcu_txd *)skb_push(skb, sizeof(*mcu_txd));
- 
-       if (test_bit(MT76_STATE_MCU_RUNNING, &dev->mphy.state)) {
+       if (test_bit(MT76_STATE_MCU_RUNNING, &dev->mphy.state))
 -              txq = MT_MCUQ_WA;
 +              qid = MT_MCUQ_WA;
-               qidx = MT_TX_MCU_PORT_RX_Q0;
-               pkt_fmt = MT_TX_TYPE_CMD;
-       } else {
+       else
 -              txq = MT_MCUQ_WM;
 +              qid = MT_MCUQ_WM;
-               qidx = MT_TX_MCU_PORT_RX_Q0;
-               pkt_fmt = MT_TX_TYPE_CMD;
-       }
  
        txd = mcu_txd->txd;

-- 
https://patchwork.kernel.org/project/linux-wireless/patch/3eba5570-7cff-f51e-4050-aa0054f98f81@nbd.name/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches


  reply	other threads:[~2021-02-08 10:31 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-29 17:31 pull request: mt76 2021-01-29 Felix Fietkau
2021-02-08 10:27 ` Kalle Valo [this message]
2021-02-08 11:09   ` Lorenzo Bianconi
2021-02-08 17:13     ` Kalle Valo
     [not found] ` <20210208102728.F3395C43461@smtp.codeaurora.org>
2021-02-08 11:40   ` Felix Fietkau
2021-02-08 17:10     ` Kalle Valo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210208102728.BBBE3C433CA@smtp.codeaurora.org \
    --to=kvalo@codeaurora.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=nbd@nbd.name \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.