From patchwork Mon Oct 25 11:44:07 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kai-Heng Feng X-Patchwork-Id: 1545701 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: bilbo.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=canonical.com header.i=@canonical.com header.a=rsa-sha256 header.s=20210705 header.b=hqRZ4hbs; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4HdCmH3cqGz9sWJ for ; Mon, 25 Oct 2021 22:44:31 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1meyOr-00057V-Q8; Mon, 25 Oct 2021 11:44:21 +0000 Received: from smtp-relay-canonical-1.internal ([10.131.114.174] helo=smtp-relay-canonical-1.canonical.com) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1meyOq-00055h-FL for kernel-team@lists.ubuntu.com; Mon, 25 Oct 2021 11:44:20 +0000 Received: from HP-EliteBook-840-G7.. (1-171-210-154.dynamic-ip.hinet.net [1.171.210.154]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-canonical-1.canonical.com (Postfix) with ESMTPSA id 59BC241983 for ; Mon, 25 Oct 2021 11:44:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com; s=20210705; t=1635162260; bh=ThaxeortH/BD1VO0X/PoDG/Ukbj9OxIC887S89ySHkI=; h=From:To:Subject:Date:Message-Id:MIME-Version; b=hqRZ4hbs1Z0jJq5RwmELc/UNOtfWphCOH2gxWF8dGyl9UjeOKnJXyXR5sxbhN948f GoShX08FM582yIuX3e0v3ZAFqD0SggR718F8cb/gKbEMP2Q42ZVKEzQ/S3WaQ7uMXz 57Z4VSK8YjGs8r7ezE+0OOlNG4t4Xlh8CTOheXvIxbVYrIvsR5MFTSso3c+G5/Jhpi VNXg0Hsxdwhv6Ts2tO2QrVQ86Qk7SfLCCuFrWpEd0t3W50/C4e8vIYV3llUrS/LpQ7 aE3k1IWs0d8HsMTvIief6v0RGotcUmoVCxNi8AGlFhgAVzHJ2DE6RNbYZ5VWteyZbN 1rCU2rAx6/L4w== From: Kai-Heng Feng To: kernel-team@lists.ubuntu.com Subject: [SRU] [I/Unstable/OEM-5.10/OEM-5.13/OEM-5.14] [PATCH v2 0/5] Add support for Realtek 8852AE WiFi Date: Mon, 25 Oct 2021 19:44:07 +0800 Message-Id: <20211025114414.1334615-1-kai.heng.feng@canonical.com> X-Mailer: git-send-email 2.32.0 MIME-Version: 1.0 X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" BugLink: https://bugs.launchpad.net/bugs/1945967 [Impact] Realtek 8852AE, which is used by many new laptops, doesn't have a driver. [Fix] Add rtw89 driver to support Realtek 8852AE. [Test] After applying the patch, 8852AE can scan, connect and do TX/RX. [Where problems could occur] This is a brand new driver, unless the driver hits some subtle PCI or IOMMU bugs, there isn't much chance to introduce any regression. Colin Ian King (1): rtw89: Remove redundant check of ret after call to rtw89_mac_enable_bb_rf Kai-Heng Feng (1): UBUNTU: [Config] RTW89=m Ping-Ke Shih (1): rtw89: add Realtek 802.11ax driver Yang Li (1): rtw89: remove unneeded semicolon Yang Yingliang (1): rtw89: fix return value check in rtw89_cam_send_sec_key_cmd() debian.master/config/annotations | 9 + debian.master/config/config.common.ubuntu | 7 + drivers/net/wireless/realtek/Kconfig | 1 + drivers/net/wireless/realtek/Makefile | 1 + drivers/net/wireless/realtek/rtw89/Kconfig | 50 + drivers/net/wireless/realtek/rtw89/Makefile | 25 + drivers/net/wireless/realtek/rtw89/cam.c | 695 + drivers/net/wireless/realtek/rtw89/cam.h | 165 + drivers/net/wireless/realtek/rtw89/coex.c | 5716 ++ drivers/net/wireless/realtek/rtw89/coex.h | 181 + drivers/net/wireless/realtek/rtw89/core.c | 2502 + drivers/net/wireless/realtek/rtw89/core.h | 3384 ++ drivers/net/wireless/realtek/rtw89/debug.c | 2489 + drivers/net/wireless/realtek/rtw89/debug.h | 77 + drivers/net/wireless/realtek/rtw89/efuse.c | 188 + drivers/net/wireless/realtek/rtw89/efuse.h | 13 + drivers/net/wireless/realtek/rtw89/fw.c | 1641 + drivers/net/wireless/realtek/rtw89/fw.h | 1378 + drivers/net/wireless/realtek/rtw89/mac.c | 3836 ++ drivers/net/wireless/realtek/rtw89/mac.h | 860 + drivers/net/wireless/realtek/rtw89/mac80211.c | 676 + drivers/net/wireless/realtek/rtw89/pci.c | 3060 + drivers/net/wireless/realtek/rtw89/pci.h | 635 + drivers/net/wireless/realtek/rtw89/phy.c | 2868 + drivers/net/wireless/realtek/rtw89/phy.h | 311 + drivers/net/wireless/realtek/rtw89/ps.c | 150 + drivers/net/wireless/realtek/rtw89/ps.h | 16 + drivers/net/wireless/realtek/rtw89/reg.h | 2159 + drivers/net/wireless/realtek/rtw89/regd.c | 353 + drivers/net/wireless/realtek/rtw89/rtw8852a.c | 2036 + drivers/net/wireless/realtek/rtw89/rtw8852a.h | 109 + .../net/wireless/realtek/rtw89/rtw8852a_rfk.c | 3911 ++ .../net/wireless/realtek/rtw89/rtw8852a_rfk.h | 24 + .../realtek/rtw89/rtw8852a_rfk_table.c | 1607 + .../realtek/rtw89/rtw8852a_rfk_table.h | 133 + .../wireless/realtek/rtw89/rtw8852a_table.c | 48725 ++++++++++++++++ .../wireless/realtek/rtw89/rtw8852a_table.h | 28 + drivers/net/wireless/realtek/rtw89/sar.c | 190 + drivers/net/wireless/realtek/rtw89/sar.h | 26 + drivers/net/wireless/realtek/rtw89/ser.c | 491 + drivers/net/wireless/realtek/rtw89/ser.h | 15 + drivers/net/wireless/realtek/rtw89/txrx.h | 358 + drivers/net/wireless/realtek/rtw89/util.h | 17 + 43 files changed, 91116 insertions(+) create mode 100644 drivers/net/wireless/realtek/rtw89/Kconfig create mode 100644 drivers/net/wireless/realtek/rtw89/Makefile create mode 100644 drivers/net/wireless/realtek/rtw89/cam.c create mode 100644 drivers/net/wireless/realtek/rtw89/cam.h create mode 100644 drivers/net/wireless/realtek/rtw89/coex.c create mode 100644 drivers/net/wireless/realtek/rtw89/coex.h create mode 100644 drivers/net/wireless/realtek/rtw89/core.c create mode 100644 drivers/net/wireless/realtek/rtw89/core.h create mode 100644 drivers/net/wireless/realtek/rtw89/debug.c create mode 100644 drivers/net/wireless/realtek/rtw89/debug.h create mode 100644 drivers/net/wireless/realtek/rtw89/efuse.c create mode 100644 drivers/net/wireless/realtek/rtw89/efuse.h create mode 100644 drivers/net/wireless/realtek/rtw89/fw.c create mode 100644 drivers/net/wireless/realtek/rtw89/fw.h create mode 100644 drivers/net/wireless/realtek/rtw89/mac.c create mode 100644 drivers/net/wireless/realtek/rtw89/mac.h create mode 100644 drivers/net/wireless/realtek/rtw89/mac80211.c create mode 100644 drivers/net/wireless/realtek/rtw89/pci.c create mode 100644 drivers/net/wireless/realtek/rtw89/pci.h create mode 100644 drivers/net/wireless/realtek/rtw89/phy.c create mode 100644 drivers/net/wireless/realtek/rtw89/phy.h create mode 100644 drivers/net/wireless/realtek/rtw89/ps.c create mode 100644 drivers/net/wireless/realtek/rtw89/ps.h create mode 100644 drivers/net/wireless/realtek/rtw89/reg.h create mode 100644 drivers/net/wireless/realtek/rtw89/regd.c create mode 100644 drivers/net/wireless/realtek/rtw89/rtw8852a.c create mode 100644 drivers/net/wireless/realtek/rtw89/rtw8852a.h create mode 100644 drivers/net/wireless/realtek/rtw89/rtw8852a_rfk.c create mode 100644 drivers/net/wireless/realtek/rtw89/rtw8852a_rfk.h create mode 100644 drivers/net/wireless/realtek/rtw89/rtw8852a_rfk_table.c create mode 100644 drivers/net/wireless/realtek/rtw89/rtw8852a_rfk_table.h create mode 100644 drivers/net/wireless/realtek/rtw89/rtw8852a_table.c create mode 100644 drivers/net/wireless/realtek/rtw89/rtw8852a_table.h create mode 100644 drivers/net/wireless/realtek/rtw89/sar.c create mode 100644 drivers/net/wireless/realtek/rtw89/sar.h create mode 100644 drivers/net/wireless/realtek/rtw89/ser.c create mode 100644 drivers/net/wireless/realtek/rtw89/ser.h create mode 100644 drivers/net/wireless/realtek/rtw89/txrx.h create mode 100644 drivers/net/wireless/realtek/rtw89/util.h Acked-By: AceLan Kao Acked-by: Kleber Sacilotto de Souza Acked-by: Stefan Bader