From patchwork Fri Apr 24 19:32:21 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ryder Lee X-Patchwork-Id: 11508883 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id DD9C1112C for ; Fri, 24 Apr 2020 19:32:55 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id B8B442098B for ; Fri, 24 Apr 2020 19:32:55 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="ETkfFGvw" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729147AbgDXTcy (ORCPT ); Fri, 24 Apr 2020 15:32:54 -0400 Received: from mailgw01.mediatek.com ([210.61.82.183]:5634 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1725970AbgDXTcy (ORCPT ); Fri, 24 Apr 2020 15:32:54 -0400 X-UUID: 81920e4d5c3c46c28fe93577f40443cd-20200425 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:Content-Type:MIME-Version:Message-ID:Date:Subject:CC:To:From; bh=VcIsUHo7RU6gdFBAcFxKEPXf0pzSoIsBkn54abXIC3Y=; b=ETkfFGvwr3+WKQSDng7DcUiQxXxZjdxg/QTE8aO57brGFi0r6q2600teDMonug9gEHnu4Z4EQhucBrr12sy/+VoIeX/03SKLM7+8i2JwaaSxP702CpcZns6FkcKN9FPiePuaKWgYyJuWOx9OzHhYW/8wswfRJqKE2ZB0i97shF8=; X-UUID: 81920e4d5c3c46c28fe93577f40443cd-20200425 Received: from mtkexhb01.mediatek.inc [(172.21.101.102)] by mailgw01.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 1657406997; Sat, 25 Apr 2020 03:32:51 +0800 Received: from MTKCAS06.mediatek.inc (172.21.101.30) by mtkmbs08n1.mediatek.inc (172.21.101.55) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Sat, 25 Apr 2020 03:32:45 +0800 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by MTKCAS06.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Sat, 25 Apr 2020 03:32:48 +0800 From: Ryder Lee To: Felix Fietkau , Lorenzo Bianconi CC: Shayne Chen , YF Luo , Yiwei Chung , Chih-Min Chen , Evelyn Tsai , Sean Wang , , , Ryder Lee Subject: [PATCH v3 00/18] Add MediaTek IEEE 802.11ax devices - MT7915E Date: Sat, 25 Apr 2020 03:32:21 +0800 Message-ID: X-Mailer: git-send-email 2.18.0 MIME-Version: 1.0 X-MTK: N Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org @Felix, a bit changes and cleanups in v3. Hope this is final one if evevything looks good to you guys. MT7915 supports only basic HE for the moment, whereas other 802.11ax specific features are work in progress. They will be gradually added in upcoming days. The firmwares are available now from https://github.com/ryderlee1110/wireless-fw At last, the developers are all listed in the series. https://www.mediatek.com/blog/mediatek-mt7915-wi-fi-6-wave-1-chipset-builds-in-a-range-of-industry-firsts Changes since v3 - - rebase on top of latest mt76 tree. - adjust timing stuff in mt7915_mac_set_timing. - some cleanups - use FIELD_GET and max_t whenever possible. Changes since v2 - - drop hw_amsdu patch - fix kconfig license - fix debugfs regard to txpower dump issue - swtich to use "per-phy" to set runtime stream caps for dual band concurrent operation. - move omac_idx to mt7915_phy to make it independent - add .get/set_tsf callbacks Changes since v1 - - list a missing developer. - drop unused codes in the hw_tx_amsdu patch. - add a missing bitwidth change of wcid. - add more TODO items in the driver. Ryder Lee (18): mt76: avoid rx reorder buffer overflow mt76: add support for HE RX rate reporting mt76: add Rx stats support for radiotap mt76: adjust wcid size to support new 802.11ax generation mt76: add HE phy modes and hardware queue mt76: add mac80211 driver for MT7915 PCIe-based chipsets mt76: mt7915: enable Rx HE rate reporting mt76: mt7915: implement HE per-rate tx power support mt76: mt7915: register per-phy HE capabilities for each interface mt76: mt7915: add HE bss_conf support for interfaces mt76: mt7915: add HE capabilities support for peers mt76: mt7915: add Rx radiotap header support mt76: mt7915: add .sta_add_debugfs support mt76: mt7915: add .sta_statistics support mt76: mt7915: set peer Tx fixed rate through debugfs mt76: mt7915: add tsf related callbacks mt76: mt7915: enable firmware module debug support mt76: set runtime stream caps by mt76_phy drivers/net/wireless/mediatek/mt76/Kconfig | 1 + drivers/net/wireless/mediatek/mt76/Makefile | 1 + drivers/net/wireless/mediatek/mt76/agg-rx.c | 12 +- drivers/net/wireless/mediatek/mt76/mac80211.c | 26 +- drivers/net/wireless/mediatek/mt76/mt76.h | 46 +- .../net/wireless/mediatek/mt76/mt7615/init.c | 4 +- .../net/wireless/mediatek/mt76/mt7615/main.c | 2 +- .../wireless/mediatek/mt76/mt76x2/pci_main.c | 2 +- .../net/wireless/mediatek/mt76/mt7915/Kconfig | 13 + .../wireless/mediatek/mt76/mt7915/Makefile | 6 + .../wireless/mediatek/mt76/mt7915/debugfs.c | 418 +++ .../net/wireless/mediatek/mt76/mt7915/dma.c | 285 ++ .../wireless/mediatek/mt76/mt7915/eeprom.c | 243 ++ .../wireless/mediatek/mt76/mt7915/eeprom.h | 125 + .../net/wireless/mediatek/mt76/mt7915/init.c | 589 ++++ .../net/wireless/mediatek/mt76/mt7915/mac.c | 1462 +++++++++ .../net/wireless/mediatek/mt76/mt7915/mac.h | 346 +++ .../net/wireless/mediatek/mt76/mt7915/main.c | 831 +++++ .../net/wireless/mediatek/mt76/mt7915/mcu.c | 2764 +++++++++++++++++ .../net/wireless/mediatek/mt76/mt7915/mcu.h | 982 ++++++ .../wireless/mediatek/mt76/mt7915/mt7915.h | 460 +++ .../net/wireless/mediatek/mt76/mt7915/pci.c | 191 ++ .../net/wireless/mediatek/mt76/mt7915/regs.h | 355 +++ 23 files changed, 9132 insertions(+), 32 deletions(-) create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/Kconfig create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/Makefile create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/debugfs.c create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/dma.c create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/eeprom.c create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/eeprom.h create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/init.c create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/mac.c create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/mac.h create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/main.c create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/mcu.c create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/mcu.h create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/mt7915.h create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/pci.c create mode 100644 drivers/net/wireless/mediatek/mt76/mt7915/regs.h