From: Tony Nguyen <anthony.l.nguyen@intel.com>
To: davem@davemloft.net
Cc: Tony Nguyen <anthony.l.nguyen@intel.com>,
netdev@vger.kernel.org, nhorman@redhat.com, sassmann@redhat.com,
jeffrey.t.kirsher@intel.com
Subject: [net-next v5 00/15][pull request] 100GbE Intel Wired LAN Driver Updates 2020-08-24
Date: Mon, 24 Aug 2020 10:32:51 -0700 [thread overview]
Message-ID: <20200824173306.3178343-1-anthony.l.nguyen@intel.com> (raw)
This series introduces both the Intel Ethernet Common Module and the Intel
Data Plane Function. The patches also incorporate extended features and
functionality added in the virtchnl.h file.
The format of the series flow is to add the data set, then introduce
function stubs and finally introduce pieces in large cohesive subjects or
functionality. This is to allow for more in depth understanding and
review of the bigger picture as the series is reviewed.
Currently this is common layer (iecm) is initially only being used by only
the idpf driver (PF driver for SmartNIC). However, the plan is to
eventually switch our iavf driver along with future drivers to use this
common module. The hope is to better enable code sharing going forward as
well as support other developers writing drivers for our hardware
v2: Addresses comments from the original series. This includes removing
the iecm_ctlq_err in iecm_ctlq_api.h, the private flags and duplicated
checks, and cleaning up the clamps in iecm_ethtool.c. We also added
the supported_coalesce_params flags in iecm_ethtool.c. Finally, we
got the headers cleaned up and addressed mismatching types from calls
to cpu_to_le to match the types (this fixes C=2 W=1 errors that were
reported).
v3: fixed missed compile warning/error with C=2 W=1
v4: Fixed missed static in idpf_main.c on idpf_probe. Added missing local
variable in iecm_rx_can_reuse_page. Updated location of documentation,
refactored soft reset path to take memory allocation into account,
refactored ethtool stats to not use VA_ARGS, *greatly* reduced use of
iecm_status enum, aligned use of periods in debug statements, and
refactored to reduce line indents.
v5: Cleaned up some checks the core is already doing, corrected the
calculation for txq and rxq, Removed the FW version that had been
missed in previous version, dma_wmb call directly replacing a
define to it, cleaned up the memory and header files that were not
used, and cleaning up the self defining error codes.
The following are changes since commit 7611cbb900b4b9a6fe5eca12fb12645c0576a015:
Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
and are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue 100GbE
Alan Brady (1):
idpf: Introduce idpf driver
Alice Michael (14):
virtchnl: Extend AVF ops
iecm: Add framework set of header files
iecm: Add TX/RX header files
iecm: Common module introduction and function stubs
iecm: Add basic netdevice functionality
iecm: Implement mailbox functionality
iecm: Implement virtchnl commands
iecm: Implement vector allocation
iecm: Init and allocate vport
iecm: Deinit vport
iecm: Add splitq TX/RX
iecm: Add singleq TX/RX
iecm: Add ethtool
iecm: Add iecm to the kernel build system
.../device_drivers/ethernet/intel/idpf.rst | 47 +
.../device_drivers/ethernet/intel/iecm.rst | 93 +
MAINTAINERS | 1 +
drivers/net/ethernet/intel/Kconfig | 21 +
drivers/net/ethernet/intel/Makefile | 2 +
drivers/net/ethernet/intel/idpf/Makefile | 12 +
drivers/net/ethernet/intel/idpf/idpf_dev.h | 17 +
drivers/net/ethernet/intel/idpf/idpf_devids.h | 10 +
drivers/net/ethernet/intel/idpf/idpf_main.c | 137 +
drivers/net/ethernet/intel/idpf/idpf_reg.c | 152 +
drivers/net/ethernet/intel/iecm/Makefile | 18 +
.../net/ethernet/intel/iecm/iecm_controlq.c | 668 +++
.../ethernet/intel/iecm/iecm_controlq_setup.c | 176 +
.../net/ethernet/intel/iecm/iecm_ethtool.c | 1048 +++++
drivers/net/ethernet/intel/iecm/iecm_lib.c | 1235 ++++++
drivers/net/ethernet/intel/iecm/iecm_main.c | 41 +
.../ethernet/intel/iecm/iecm_singleq_txrx.c | 892 ++++
drivers/net/ethernet/intel/iecm/iecm_txrx.c | 3911 +++++++++++++++++
.../net/ethernet/intel/iecm/iecm_virtchnl.c | 2203 ++++++++++
include/linux/avf/virtchnl.h | 592 +++
include/linux/net/intel/iecm.h | 399 ++
include/linux/net/intel/iecm_alloc.h | 7 +
include/linux/net/intel/iecm_controlq.h | 118 +
include/linux/net/intel/iecm_controlq_api.h | 192 +
include/linux/net/intel/iecm_lan_pf_regs.h | 120 +
include/linux/net/intel/iecm_lan_txrx.h | 635 +++
include/linux/net/intel/iecm_mem.h | 20 +
include/linux/net/intel/iecm_txrx.h | 582 +++
28 files changed, 13349 insertions(+)
create mode 100644 Documentation/networking/device_drivers/ethernet/intel/idpf.rst
create mode 100644 Documentation/networking/device_drivers/ethernet/intel/iecm.rst
create mode 100644 drivers/net/ethernet/intel/idpf/Makefile
create mode 100644 drivers/net/ethernet/intel/idpf/idpf_dev.h
create mode 100644 drivers/net/ethernet/intel/idpf/idpf_devids.h
create mode 100644 drivers/net/ethernet/intel/idpf/idpf_main.c
create mode 100644 drivers/net/ethernet/intel/idpf/idpf_reg.c
create mode 100644 drivers/net/ethernet/intel/iecm/Makefile
create mode 100644 drivers/net/ethernet/intel/iecm/iecm_controlq.c
create mode 100644 drivers/net/ethernet/intel/iecm/iecm_controlq_setup.c
create mode 100644 drivers/net/ethernet/intel/iecm/iecm_ethtool.c
create mode 100644 drivers/net/ethernet/intel/iecm/iecm_lib.c
create mode 100644 drivers/net/ethernet/intel/iecm/iecm_main.c
create mode 100644 drivers/net/ethernet/intel/iecm/iecm_singleq_txrx.c
create mode 100644 drivers/net/ethernet/intel/iecm/iecm_txrx.c
create mode 100644 drivers/net/ethernet/intel/iecm/iecm_virtchnl.c
create mode 100644 include/linux/net/intel/iecm.h
create mode 100644 include/linux/net/intel/iecm_alloc.h
create mode 100644 include/linux/net/intel/iecm_controlq.h
create mode 100644 include/linux/net/intel/iecm_controlq_api.h
create mode 100644 include/linux/net/intel/iecm_lan_pf_regs.h
create mode 100644 include/linux/net/intel/iecm_lan_txrx.h
create mode 100644 include/linux/net/intel/iecm_mem.h
create mode 100644 include/linux/net/intel/iecm_txrx.h
--
2.26.2
next reply other threads:[~2020-08-24 17:33 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-24 17:32 Tony Nguyen [this message]
2020-08-24 17:32 ` [net-next v5 01/15] virtchnl: Extend AVF ops Tony Nguyen
2020-08-24 19:42 ` Jakub Kicinski
2020-08-27 17:16 ` Brady, Alan
2020-09-10 21:06 ` Brady, Alan
2020-09-11 15:08 ` Jakub Kicinski
2020-08-24 17:32 ` [net-next v5 02/15] iecm: Add framework set of header files Tony Nguyen
2020-08-24 17:32 ` [net-next v5 03/15] iecm: Add TX/RX " Tony Nguyen
2020-08-24 17:32 ` [net-next v5 04/15] iecm: Common module introduction and function stubs Tony Nguyen
2020-08-24 20:41 ` Jakub Kicinski
2020-08-27 17:18 ` Brady, Alan
2020-08-24 17:32 ` [net-next v5 05/15] iecm: Add basic netdevice functionality Tony Nguyen
2020-08-24 17:32 ` [net-next v5 06/15] iecm: Implement mailbox functionality Tony Nguyen
2020-08-24 20:35 ` Brady, Alan
2020-08-24 20:40 ` Jakub Kicinski
2020-08-24 17:32 ` [net-next v5 07/15] iecm: Implement virtchnl commands Tony Nguyen
2020-08-24 17:32 ` [net-next v5 08/15] iecm: Implement vector allocation Tony Nguyen
2020-08-24 20:41 ` Jakub Kicinski
2020-08-27 17:28 ` Brady, Alan
2020-08-27 18:19 ` Jakub Kicinski
2020-08-24 17:33 ` [net-next v5 09/15] iecm: Init and allocate vport Tony Nguyen
2020-08-24 17:33 ` [net-next v5 10/15] iecm: Deinit vport Tony Nguyen
2020-08-24 17:33 ` [net-next v5 11/15] iecm: Add splitq TX/RX Tony Nguyen
2020-08-24 20:40 ` Jakub Kicinski
2020-08-27 17:17 ` Brady, Alan
2020-08-24 17:33 ` [net-next v5 12/15] iecm: Add singleq TX/RX Tony Nguyen
2020-08-24 17:33 ` [net-next v5 13/15] iecm: Add ethtool Tony Nguyen
2020-08-24 21:44 ` Michal Kubecek
2020-08-27 17:29 ` Brady, Alan
2020-08-24 17:33 ` [net-next v5 14/15] iecm: Add iecm to the kernel build system Tony Nguyen
2020-08-24 17:33 ` [net-next v5 15/15] idpf: Introduce idpf driver Tony Nguyen
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=20200824173306.3178343-1-anthony.l.nguyen@intel.com \
--to=anthony.l.nguyen@intel.com \
--cc=davem@davemloft.net \
--cc=jeffrey.t.kirsher@intel.com \
--cc=netdev@vger.kernel.org \
--cc=nhorman@redhat.com \
--cc=sassmann@redhat.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).