From: Igor Russkikh <igor.russkikh@aquantia.com>
To: dev@dpdk.org
Cc: pavel.belous@aquantia.com, igor.russkikh@aquantia.com
Subject: [dpdk-dev] [PATCH v2 00/21] net/atlantic: Aquantia aQtion 10G NIC Family DPDK PMD driver
Date: Thu, 13 Sep 2018 15:22:51 +0300 [thread overview]
Message-ID: <1536841371-12431-1-git-send-email-igor.russkikh@aquantia.com> (raw)
Hello DPDK community!
Aquantia would like to contribute PMD for aQtion AQC10X NIC family:
https://www.aquantia.com/products/aqtion/chips/
These are 10G ethernet NICs with various features.
We do base this work on parts of the existing native linux kernel
driver source (atlantic). Shared code is hw_atl hardware and registers access module.
We'd like to target this driver for 18.11 DPDK release timeline,
it'd be good to hear comments from the community on how feasible is this.
This patchset implements basic driver infrastructure,
vlan offloads, checksumm offloads, rss control,
multiring, jumbo frames and other features.
Later on, we plan to share HW MACSEC offloads, rxflows and other features.
version 2 changes:
- fixed build on freebsd (no ETIME const)
- fixed a bunch of checkpatch failures and warnings
- removed extra CFLAGS disabled warning
- making static arrays const
Igor Russkikh (11):
net/atlantic: documentation and rel notes
net/atlantic: logging macroes and some typedefs
net/atlantic: hw_atl register declarations
net/atlantic: b0 hardware layer main logic
net/atlantic: firmware operations layer
net/atlantic: hardware register access routines
net/atlantic: rte device start, stop, initial configuration
net/atlantic: RSS and RETA manipulation API
net/atlantic: LED control DPDK and private APIs
net/atlantic: device statistics, xstats
net/atlantic: RX side structures and implementation
Pavel Belous (10):
net/atlantic: atlantic PMD driver skeleton
net/atlantic: link status and interrupt management
net/atlantic: add hw adapter structures and defines
net/atlantic: flow control configuration
net/atlantic: MAC address manipulations
net/atlantic: eeprom and register manipulation routines
net/atlantic: promisc and allmulti configuration
net/atlantic: VLAN filters and offloads
net/atlantic: device MTU and statuses
net/atlantic: TX side structures and implementation
config/common_base | 9 +
doc/guides/nics/atlantic.rst | 59 +
doc/guides/nics/features/atlantic.ini | 37 +
doc/guides/nics/index.rst | 1 +
doc/guides/rel_notes/release_18_11.rst | 5 +
drivers/net/Makefile | 2 +
drivers/net/atlantic/Makefile | 46 +
drivers/net/atlantic/atl_common.h | 96 +
drivers/net/atlantic/atl_ethdev.c | 1751 +++++++++++++++
drivers/net/atlantic/atl_ethdev.h | 133 ++
drivers/net/atlantic/atl_hw_regs.c | 52 +
drivers/net/atlantic/atl_hw_regs.h | 53 +
drivers/net/atlantic/atl_logs.h | 68 +
drivers/net/atlantic/atl_rxtx.c | 1365 ++++++++++++
drivers/net/atlantic/atl_types.h | 235 ++
drivers/net/atlantic/hw_atl/hw_atl_b0.c | 510 +++++
drivers/net/atlantic/hw_atl/hw_atl_b0.h | 40 +
drivers/net/atlantic/hw_atl/hw_atl_b0_internal.h | 145 ++
drivers/net/atlantic/hw_atl/hw_atl_llh.c | 1490 +++++++++++++
drivers/net/atlantic/hw_atl/hw_atl_llh.h | 714 ++++++
drivers/net/atlantic/hw_atl/hw_atl_llh_internal.h | 2407 +++++++++++++++++++++
drivers/net/atlantic/hw_atl/hw_atl_utils.c | 942 ++++++++
drivers/net/atlantic/hw_atl/hw_atl_utils.h | 510 +++++
drivers/net/atlantic/hw_atl/hw_atl_utils_fw2x.c | 618 ++++++
drivers/net/atlantic/meson.build | 28 +
drivers/net/atlantic/rte_pmd_atlantic.c | 19 +
drivers/net/atlantic/rte_pmd_atlantic.h | 44 +
drivers/net/atlantic/rte_pmd_atlantic_version.map | 4 +
drivers/net/meson.build | 1 +
mk/rte.app.mk | 1 +
30 files changed, 11385 insertions(+)
create mode 100644 doc/guides/nics/atlantic.rst
create mode 100644 doc/guides/nics/features/atlantic.ini
create mode 100644 drivers/net/atlantic/Makefile
create mode 100644 drivers/net/atlantic/atl_common.h
create mode 100644 drivers/net/atlantic/atl_ethdev.c
create mode 100644 drivers/net/atlantic/atl_ethdev.h
create mode 100644 drivers/net/atlantic/atl_hw_regs.c
create mode 100644 drivers/net/atlantic/atl_hw_regs.h
create mode 100644 drivers/net/atlantic/atl_logs.h
create mode 100644 drivers/net/atlantic/atl_rxtx.c
create mode 100644 drivers/net/atlantic/atl_types.h
create mode 100644 drivers/net/atlantic/hw_atl/hw_atl_b0.c
create mode 100644 drivers/net/atlantic/hw_atl/hw_atl_b0.h
create mode 100644 drivers/net/atlantic/hw_atl/hw_atl_b0_internal.h
create mode 100644 drivers/net/atlantic/hw_atl/hw_atl_llh.c
create mode 100644 drivers/net/atlantic/hw_atl/hw_atl_llh.h
create mode 100644 drivers/net/atlantic/hw_atl/hw_atl_llh_internal.h
create mode 100644 drivers/net/atlantic/hw_atl/hw_atl_utils.c
create mode 100644 drivers/net/atlantic/hw_atl/hw_atl_utils.h
create mode 100644 drivers/net/atlantic/hw_atl/hw_atl_utils_fw2x.c
create mode 100644 drivers/net/atlantic/meson.build
create mode 100644 drivers/net/atlantic/rte_pmd_atlantic.c
create mode 100644 drivers/net/atlantic/rte_pmd_atlantic.h
create mode 100644 drivers/net/atlantic/rte_pmd_atlantic_version.map
--
2.13.3.windows.1
next reply other threads:[~2018-09-13 12:23 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-09-13 12:22 Igor Russkikh [this message]
2018-09-21 14:20 ` Ferruh Yigit
2018-09-21 14:43 ` Kevin Traynor
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=1536841371-12431-1-git-send-email-igor.russkikh@aquantia.com \
--to=igor.russkikh@aquantia.com \
--cc=dev@dpdk.org \
--cc=pavel.belous@aquantia.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).