From patchwork Wed May 11 03:26:45 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jiawen Wu X-Patchwork-Id: 12845746 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id D3170C433EF for ; Wed, 11 May 2022 03:19:24 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238517AbiEKDTX (ORCPT ); Tue, 10 May 2022 23:19:23 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54534 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232483AbiEKDTV (ORCPT ); Tue, 10 May 2022 23:19:21 -0400 Received: from smtpbgsg1.qq.com (smtpbgsg1.qq.com [54.254.200.92]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C39006CA9B for ; Tue, 10 May 2022 20:19:19 -0700 (PDT) X-QQ-mid: bizesmtp75t1652239146tqo3nfdz Received: from wxdbg.localdomain.com ( [183.129.236.74]) by bizesmtp.qq.com (ESMTP) with id ; Wed, 11 May 2022 11:18:47 +0800 (CST) X-QQ-SSF: 01400000000000F0O000B00A0000000 X-QQ-FEAT: F3yR32iATbilT+Qd7SIBrb6hoe0AjJ0C9eF5h2tPOjcRtEd0wtiCEQMvtL4PI zI4o/cNqjxZCGDlciFWdK2BRETpEyofkKkMafYADo8sKzb4LEL5Q8rElQlKvnXKOht8/oAH C5qSzwJ7l9Ocxa1dwxXb0D4XUGDDyM8WKCcXke0PC95pAfL6EaHnmdihf8YFGo7G0C7qG3f xwiV580DP8a6uiwEWQoRuyZIpGGFZ9UI9cJF476e2yJLRjpwwTsH0iBD97e6Z4S/+UptqzX 0z+zyMwLiCD2uq9tlrBGUadXkc3MhfjQXAcRzzNi4/GEsMYqUvRC3TbVQzLCdONoo9nzRVD 7VEYcmWWpm7F2dp0eQ= X-QQ-GoodBg: 2 From: Jiawen Wu To: netdev@vger.kernel.org Cc: Jiawen Wu Subject: [PATCH net-next 00/14] Wangxun 10 Gigabit Ethernet Driver Date: Wed, 11 May 2022 11:26:45 +0800 Message-Id: <20220511032659.641834-1-jiawenwu@trustnetic.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:trustnetic.com:qybgforeign:qybgforeign8 X-QQ-Bgrelay: 1 Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org X-Patchwork-Delegate: kuba@kernel.org This patch contains the support of linux base driver for wangxun 10 gigabit PCI express adapter which is named TXGBE. This patch is meant to control the basic functionality of the PF driver, and it would be incrementally enhanced with more features. Jiawen Wu (14): net: txgbe: Add build support for txgbe ethernet driver net: txgbe: Add hardware initialization net: txgbe: Add operations to interact with firmware net: txgbe: Add PHY interface support net: txgbe: Add interrupt support net: txgbe: Support to receive and tranmit packets net: txgbe: Support flow control net: txgbe: Support flow director net: txgbe: Support PTP net: txgbe: Add ethtool support net: txgbe: Support PCIe recovery net: txgbe: Support power management net: txgbe: Support debug filesystem net: txgbe: Support sysfs file system .../device_drivers/ethernet/index.rst | 1 + .../device_drivers/ethernet/wangxun/txgbe.rst | 238 + MAINTAINERS | 7 + drivers/net/ethernet/Kconfig | 1 + drivers/net/ethernet/Makefile | 1 + drivers/net/ethernet/wangxun/Kconfig | 41 + drivers/net/ethernet/wangxun/Makefile | 6 + drivers/net/ethernet/wangxun/txgbe/Makefile | 15 + drivers/net/ethernet/wangxun/txgbe/txgbe.h | 829 ++ .../ethernet/wangxun/txgbe/txgbe_debugfs.c | 582 ++ .../ethernet/wangxun/txgbe/txgbe_ethtool.c | 3188 ++++++++ drivers/net/ethernet/wangxun/txgbe/txgbe_hw.c | 5785 ++++++++++++++ drivers/net/ethernet/wangxun/txgbe/txgbe_hw.h | 238 + .../net/ethernet/wangxun/txgbe/txgbe_lib.c | 531 ++ .../net/ethernet/wangxun/txgbe/txgbe_main.c | 6748 +++++++++++++++++ .../net/ethernet/wangxun/txgbe/txgbe_pcierr.c | 236 + .../net/ethernet/wangxun/txgbe/txgbe_pcierr.h | 8 + .../net/ethernet/wangxun/txgbe/txgbe_phy.c | 439 ++ .../net/ethernet/wangxun/txgbe/txgbe_phy.h | 65 + .../net/ethernet/wangxun/txgbe/txgbe_ptp.c | 840 ++ .../net/ethernet/wangxun/txgbe/txgbe_sysfs.c | 203 + .../net/ethernet/wangxun/txgbe/txgbe_type.h | 2837 +++++++ 22 files changed, 22839 insertions(+) create mode 100644 Documentation/networking/device_drivers/ethernet/wangxun/txgbe.rst create mode 100644 drivers/net/ethernet/wangxun/Kconfig create mode 100644 drivers/net/ethernet/wangxun/Makefile create mode 100644 drivers/net/ethernet/wangxun/txgbe/Makefile create mode 100644 drivers/net/ethernet/wangxun/txgbe/txgbe.h create mode 100644 drivers/net/ethernet/wangxun/txgbe/txgbe_debugfs.c create mode 100644 drivers/net/ethernet/wangxun/txgbe/txgbe_ethtool.c create mode 100644 drivers/net/ethernet/wangxun/txgbe/txgbe_hw.c create mode 100644 drivers/net/ethernet/wangxun/txgbe/txgbe_hw.h create mode 100644 drivers/net/ethernet/wangxun/txgbe/txgbe_lib.c create mode 100644 drivers/net/ethernet/wangxun/txgbe/txgbe_main.c create mode 100644 drivers/net/ethernet/wangxun/txgbe/txgbe_pcierr.c create mode 100644 drivers/net/ethernet/wangxun/txgbe/txgbe_pcierr.h create mode 100644 drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c create mode 100644 drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h create mode 100644 drivers/net/ethernet/wangxun/txgbe/txgbe_ptp.c create mode 100644 drivers/net/ethernet/wangxun/txgbe/txgbe_sysfs.c create mode 100644 drivers/net/ethernet/wangxun/txgbe/txgbe_type.h