[Intel-wired-lan] [next-queue,v4, 00/14]
Alice Michael
alice.michael at intel.com
Tue Jun 23 15:43:19 UTC 2020
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
V3 -- Addresses comments from the original series. This inncludes 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).
V4 -- Missed static in idpf_main.c on idpf_probe
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
.../networking/device_drivers/intel/idpf.rst | 47 +
.../networking/device_drivers/intel/iecm.rst | 93 +
MAINTAINERS | 3 +
drivers/net/ethernet/intel/Kconfig | 15 +
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 | 136 +
drivers/net/ethernet/intel/idpf/idpf_reg.c | 152 +
drivers/net/ethernet/intel/iecm/Makefile | 19 +
.../net/ethernet/intel/iecm/iecm_controlq.c | 669 +++
.../ethernet/intel/iecm/iecm_controlq_setup.c | 177 +
.../net/ethernet/intel/iecm/iecm_ethtool.c | 1064 +++++
drivers/net/ethernet/intel/iecm/iecm_lib.c | 1093 +++++
drivers/net/ethernet/intel/iecm/iecm_main.c | 50 +
drivers/net/ethernet/intel/iecm/iecm_osdep.c | 28 +
.../ethernet/intel/iecm/iecm_singleq_txrx.c | 892 ++++
drivers/net/ethernet/intel/iecm/iecm_txrx.c | 3961 +++++++++++++++++
.../net/ethernet/intel/iecm/iecm_virtchnl.c | 2262 ++++++++++
include/linux/net/intel/iecm.h | 433 ++
include/linux/net/intel/iecm_alloc.h | 29 +
include/linux/net/intel/iecm_controlq.h | 95 +
include/linux/net/intel/iecm_controlq_api.h | 188 +
include/linux/net/intel/iecm_lan_pf_regs.h | 120 +
include/linux/net/intel/iecm_lan_txrx.h | 636 +++
include/linux/net/intel/iecm_osdep.h | 24 +
include/linux/net/intel/iecm_txrx.h | 581 +++
include/linux/net/intel/iecm_type.h | 47 +
29 files changed, 12855 insertions(+)
create mode 100644 Documentation/networking/device_drivers/intel/idpf.rst
create mode 100644 Documentation/networking/device_drivers/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_osdep.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_osdep.h
create mode 100644 include/linux/net/intel/iecm_txrx.h
create mode 100644 include/linux/net/intel/iecm_type.h
--
2.21.0
More information about the Intel-wired-lan
mailing list