Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp3279472ybz; Sun, 19 Apr 2020 22:51:59 -0700 (PDT) X-Google-Smtp-Source: APiQypKfxoVQu5ySnOaFYNcWbLeKlzQXEvWUGDVocRk+/SowTF5YN7q8ZA5BQRm2IFNlAA8p6SEF X-Received: by 2002:a17:906:4542:: with SMTP id s2mr14804762ejq.34.1587361919299; Sun, 19 Apr 2020 22:51:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587361919; cv=none; d=google.com; s=arc-20160816; b=C27jdyPlQHbQKROdPDQshBYP4k8ooep4oVIecJ/9Ph7IrYgFyrS6+0OuKLpJpV3UpF YMHOwKLHETzLpRtkpMfH/1EDFGPeVazECu8fIbb5wSw3ix77nBduP82WMrRuS+KQcBNZ cA+JuVisj55qgteb8v7lV6zOlczmgZzYbdbFuho7OPIA3bpVyH3S0RRMLugmmYVv/w8s EWCvdUbPqZfAbuzHGByyV1FN+kLR85Ewuu0y4CcSi8X4EKTeiq5Kc6BTXB5Ofxgpy0k/ XYlYclZEN537Et29P8IeinkJNERJ6TbbHzBmsVqbiB3IWPKYfw1TBBWATmi/gctkGTzM 6gDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:message-id:date:subject:cc :to:from:authenticated-by; bh=rNxEu4hzeO3vXAQoVE/WicyhOZGymA++ZaOwomRAGLE=; b=yOtNYcfdj1KH710WYKJXxd7vApXgmVy0Iu9CmQEoDlPK4FgKqW80d7DkJIqP8TYJcf DixNtg+bfkskglcLsYmLq6E9czHm7+aXysPGYrRn73pBI5VKAMupNTHbhwQZWeaVe1od ooEL1goiIldnHBm6SrXAqFOFlIDqbZHvy9eoUPUYI1FQ1VxHkxjbyhKP7WhLYNMIeEwC H7UQdz9XQbjE3InLldwTXgmCtF2ESjt2P2QL+UbZo/zskJTYFCfJrlkoGduBaV0LIXVT XxKd1J0Hic7Udj6Iaw+29LWigAkLs7kGH/vuVp2H4hwJ7Za/YALWfENjH/SSgxJyMs33 FhMw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id u4si3837012ejb.432.2020.04.19.22.51.36; Sun, 19 Apr 2020 22:51:59 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726089AbgDTFvQ (ORCPT + 99 others); Mon, 20 Apr 2020 01:51:16 -0400 Received: from rtits2.realtek.com ([211.75.126.72]:42177 "EHLO rtits2.realtek.com.tw" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725872AbgDTFvP (ORCPT ); Mon, 20 Apr 2020 01:51:15 -0400 Authenticated-By: X-SpamFilter-By: ArmorX SpamTrap 5.69 with qID 03K5p7T21000866, This message is accepted by code: ctloc85258 Received: from mail.realtek.com (rtexmb06.realtek.com.tw[172.21.6.99]) by rtits2.realtek.com.tw (8.15.2/2.66/5.86) with ESMTPS id 03K5p7T21000866 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT); Mon, 20 Apr 2020 13:51:08 +0800 Received: from RTEXMB04.realtek.com.tw (172.21.6.97) by RTEXMB06.realtek.com.tw (172.21.6.99) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1779.2; Mon, 20 Apr 2020 13:51:07 +0800 Received: from localhost.localdomain (172.21.68.128) by RTEXMB04.realtek.com.tw (172.21.6.97) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1779.2; Mon, 20 Apr 2020 13:51:07 +0800 From: To: CC: , Subject: [PATCH v2 0/8] rtw88: 8723d: add basic chip functions Date: Mon, 20 Apr 2020 13:50:46 +0800 Message-ID: <20200420055054.14592-1-yhchuang@realtek.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [172.21.68.128] X-ClientProxiedBy: RTEXMB03.realtek.com.tw (172.21.6.96) To RTEXMB04.realtek.com.tw (172.21.6.97) Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org From: Yan-Hsuan Chuang Add basic chip functions for new 802.11n devices RTL8723DE. RTL8723DE is an 802.11n device, while rtw88 aimed to support 802.11ac devices, the 8723DE devices' architecture is close to them. The PCI TRX paths are mostly the same, except that the 8723DE does not have H2CQ for sending H2C commands. And it also uses a different way to download firmware, but it's not a big deal, as we can add a legacy firmware download routine for it. So, we can easily get 8723DE supported by rtw88. For easier to review them, the 8723DE implementation is split into multiple patches. First add the basic chip functionalities for it. To make a new type of chip work, the chip capabilities should be filled correctly. And it will have its own parameter tables, including MAC/PHY and power squence tables. Note that 8723DE introduces a slightly different way to access to the RF regs. Beamform is not supported as well, assign NULL to them, and check the chip_ops before we use. v1 -> v2 * make a patchset contains less patches for review Ping-Ke Shih (8): rtw88: 8723d: Add basic chip capabilities rtw88: 8723d: add beamform wrapper functions rtw88: 8723d: Add power sequence rtw88: 8723d: Add RF read/write ops rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables rtw88: 8723d: Add cfg_ldo25 to control LDO25 rtw88: 8723d: Add new chip op efuse_grant() to control efuse access rtw88: 8723d: Add read_efuse to recognize efuse info from map drivers/net/wireless/realtek/rtw88/bf.c | 7 +- drivers/net/wireless/realtek/rtw88/bf.h | 22 + drivers/net/wireless/realtek/rtw88/efuse.c | 4 + drivers/net/wireless/realtek/rtw88/mac80211.c | 7 +- drivers/net/wireless/realtek/rtw88/main.c | 12 +- drivers/net/wireless/realtek/rtw88/main.h | 26 + drivers/net/wireless/realtek/rtw88/pci.c | 3 + drivers/net/wireless/realtek/rtw88/phy.c | 56 +- drivers/net/wireless/realtek/rtw88/phy.h | 6 + drivers/net/wireless/realtek/rtw88/reg.h | 14 + drivers/net/wireless/realtek/rtw88/rtw8723d.c | 544 ++++++++ drivers/net/wireless/realtek/rtw88/rtw8723d.h | 47 + .../wireless/realtek/rtw88/rtw8723d_table.c | 1196 +++++++++++++++++ .../wireless/realtek/rtw88/rtw8723d_table.h | 15 + drivers/net/wireless/realtek/rtw88/rtw8822b.c | 2 +- 15 files changed, 1943 insertions(+), 18 deletions(-) create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d.c create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d.h create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d_table.c create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d_table.h -- 2.17.1