From: Ivan Malov <ivan.malov@arknetworks.am>
To: dev@dpdk.org
Cc: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>,
Denis Pryazhennikov <denis.pryazhennikov@arknetworks.am>,
Andy Moreton <andy.moreton@amd.com>,
Pieter Jansen Van Vuuren <pieter.jansen-van-vuuren@amd.com>,
Viacheslav Galaktionov <viacheslav.galaktionov@arknetworks.am>
Subject: [PATCH 00/46] Support AMD Solarflare X45xx adaptors
Date: Wed, 16 Apr 2025 17:59:30 +0400 [thread overview]
Message-ID: <20250416140016.36127-1-ivan.malov@arknetworks.am> (raw)
New X4522 (dual port SFP56) and X4542 (dual port QSFP56) adaptors are
Medford4 (X4) chips that are based on EF10 architecture. An X4 NIC
supports multiple network engine types. This series provides support
only for the Medford2-alike, 'full-feature' (FF) network engine. This
shall not be confused with the concept of 'datapath FW variants': the
FF network engine supports both 'full-feature' and 'ultra-low-latency'
datapath FW variants, with corresponding Medford2-alike feature sets.
The first part of the series provides general support for the adaptors,
whilst the second one adds support for the new management controller
interface for configuration of network port features (netport MCDI).
For now, only support for physical functions (PFs) is concerned. There
is a small number of TODO and FIXME markings in the code. Those are
normal at this development stage and will be removed by future patches
when VF support has fleshed out.
Andy Moreton (3):
common/sfc_efx/base: update X4 BAR layout and PCI IDs
net/sfc: add Medford4 with only full feature datapath engine
common/sfc_efx/base: add port mode for 8 port hardware
Denis Pryazhennikov (15):
common/sfc_efx/base: add Medford4 PCI IDs to common code
common/sfc_efx/base: add efsys option for Medford4
common/sfc_efx/base: add Medford4 support to NIC module
common/sfc_efx/base: add Medford4 support to EV module
common/sfc_efx/base: add Medford4 support to FILTER module
common/sfc_efx/base: add Medford4 support to INTR module
common/sfc_efx/base: add Medford4 support to MAC module
common/sfc_efx/base: add Medford4 support to PHY module
common/sfc_efx/base: add Medford4 support to TUNNEL module
common/sfc_efx/base: add Medford4 support to MCDI module
common/sfc_efx/base: add Medford4 support to Rx module
common/sfc_efx/base: add Medford4 support to Tx module
drivers: enable support for AMD Solarflare X4 adapter family
common/sfc_efx/base: add new X4 port mode
common/sfc_efx/base: extend list of supported X4 port modes
Ivan Malov (28):
common/sfc_efx/base: update MCDI headers
common/sfc_efx/base: provide a stub for basic netport attach
common/sfc_efx/base: provide defaults on netport attach path
common/sfc_efx/base: obtain assigned netport handle from NIC
common/sfc_efx/base: allow for const in MCDI struct accessor
common/sfc_efx/base: get netport fixed capabilities on probe
common/sfc_efx/base: decode netport link state on probe path
common/sfc_efx/base: fill in loopback modes on netport probe
common/sfc_efx/base: introduce Medford4 stub for PHY methods
common/sfc_efx/base: refactor EF10 link mode decoding helper
common/sfc_efx/base: provide PHY link get method on Medford4
common/sfc_efx/base: implement PHY link control for Medford4
common/sfc_efx/base: introduce Medford4 stub for MAC methods
common/sfc_efx/base: add MAC reconfigure method for Medford4
common/sfc_efx/base: fill in software LUT for MAC statistics
common/sfc_efx/base: fill in MAC statistics mask on Medford4
common/sfc_efx/base: support MAC statistics on Medford4 NICs
common/sfc_efx/base: implement MAC PDU controls for Medford4
common/sfc_efx/base: correct MAC PDU calculation on Medford4
net/sfc: make use of generic EFX MAC PDU calculation helpers
common/sfc_efx/base: ignore legacy link events on new boards
common/sfc_efx/base: add link event processing on new boards
net/sfc: query link status on link change events on new NICs
common/sfc_efx/base: subscribe to netport link change events
net/sfc: offer support for 200G link ability on new adaptors
common/sfc_efx/base: support controls for netport lane count
net/sfc: add support for control of physical port lane count
doc: advertise support for AMD Solarflare X45xx adapters
.mailmap | 3 +-
doc/guides/nics/sfc_efx.rst | 9 +-
doc/guides/rel_notes/release_25_07.rst | 4 +
drivers/common/sfc_efx/base/ef10_ev.c | 39 +
drivers/common/sfc_efx/base/ef10_impl.h | 19 +
drivers/common/sfc_efx/base/ef10_nic.c | 98 +-
drivers/common/sfc_efx/base/ef10_phy.c | 43 +-
drivers/common/sfc_efx/base/ef10_tlv_layout.h | 9 +-
drivers/common/sfc_efx/base/efx.h | 98 +-
drivers/common/sfc_efx/base/efx_check.h | 24 +-
drivers/common/sfc_efx/base/efx_ev.c | 6 +
drivers/common/sfc_efx/base/efx_filter.c | 6 +
drivers/common/sfc_efx/base/efx_impl.h | 115 +-
drivers/common/sfc_efx/base/efx_intr.c | 6 +
drivers/common/sfc_efx/base/efx_mac.c | 56 +-
drivers/common/sfc_efx/base/efx_mcdi.c | 18 +-
drivers/common/sfc_efx/base/efx_mcdi.h | 2 +-
drivers/common/sfc_efx/base/efx_nic.c | 60 +
drivers/common/sfc_efx/base/efx_np.c | 1625 +++++
drivers/common/sfc_efx/base/efx_phy.c | 88 +-
drivers/common/sfc_efx/base/efx_port.c | 1 +
drivers/common/sfc_efx/base/efx_regs_mcdi.h | 5868 ++++++++++++++++-
drivers/common/sfc_efx/base/efx_rx.c | 6 +
drivers/common/sfc_efx/base/efx_tunnel.c | 18 +-
drivers/common/sfc_efx/base/efx_tx.c | 33 +
drivers/common/sfc_efx/base/medford4_impl.h | 110 +
drivers/common/sfc_efx/base/medford4_mac.c | 299 +
drivers/common/sfc_efx/base/medford4_phy.c | 156 +
drivers/common/sfc_efx/base/meson.build | 3 +
drivers/common/sfc_efx/efsys.h | 2 +
drivers/common/sfc_efx/sfc_base_symbols.c | 2 +
drivers/net/sfc/sfc.c | 5 +-
drivers/net/sfc/sfc.h | 4 +
drivers/net/sfc/sfc_dp_tx.h | 3 +
drivers/net/sfc/sfc_ef10_tx.c | 13 +-
drivers/net/sfc/sfc_ethdev.c | 186 +-
drivers/net/sfc/sfc_ev.c | 51 +-
drivers/net/sfc/sfc_port.c | 27 +-
drivers/net/sfc/sfc_repr.c | 7 +-
drivers/net/sfc/sfc_repr.h | 1 +
drivers/net/sfc/sfc_tx.c | 2 +
41 files changed, 9000 insertions(+), 125 deletions(-)
create mode 100644 drivers/common/sfc_efx/base/efx_np.c
create mode 100644 drivers/common/sfc_efx/base/medford4_impl.h
create mode 100644 drivers/common/sfc_efx/base/medford4_mac.c
create mode 100644 drivers/common/sfc_efx/base/medford4_phy.c
--
2.39.5
next reply other threads:[~2025-04-16 14:00 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-16 13:59 Ivan Malov [this message]
2025-04-16 13:59 ` [PATCH 01/46] common/sfc_efx/base: add Medford4 PCI IDs to common code Ivan Malov
2025-04-16 13:59 ` [PATCH 02/46] common/sfc_efx/base: add efsys option for Medford4 Ivan Malov
2025-04-17 7:08 ` Andrew Rybchenko
2025-04-17 15:07 ` Stephen Hemminger
2025-04-18 7:25 ` Andrew Rybchenko
2025-04-16 13:59 ` [PATCH 03/46] common/sfc_efx/base: add Medford4 support to NIC module Ivan Malov
2025-04-17 7:14 ` Andrew Rybchenko
2025-04-16 13:59 ` [PATCH 04/46] common/sfc_efx/base: add Medford4 support to EV module Ivan Malov
2025-04-16 13:59 ` [PATCH 05/46] common/sfc_efx/base: add Medford4 support to FILTER module Ivan Malov
2025-04-16 13:59 ` [PATCH 06/46] common/sfc_efx/base: add Medford4 support to INTR module Ivan Malov
2025-04-16 13:59 ` [PATCH 07/46] common/sfc_efx/base: add Medford4 support to MAC module Ivan Malov
2025-04-16 13:59 ` [PATCH 08/46] common/sfc_efx/base: add Medford4 support to PHY module Ivan Malov
2025-04-16 13:59 ` [PATCH 09/46] common/sfc_efx/base: add Medford4 support to TUNNEL module Ivan Malov
2025-04-16 13:59 ` [PATCH 10/46] common/sfc_efx/base: add Medford4 support to MCDI module Ivan Malov
2025-04-16 13:59 ` [PATCH 11/46] common/sfc_efx/base: add Medford4 support to Rx module Ivan Malov
2025-04-16 13:59 ` [PATCH 12/46] common/sfc_efx/base: add Medford4 support to Tx module Ivan Malov
2025-04-16 13:59 ` [PATCH 13/46] drivers: enable support for AMD Solarflare X4 adapter family Ivan Malov
2025-04-16 13:59 ` [PATCH 14/46] common/sfc_efx/base: update X4 BAR layout and PCI IDs Ivan Malov
2025-04-16 13:59 ` [PATCH 15/46] net/sfc: add Medford4 with only full feature datapath engine Ivan Malov
2025-04-16 13:59 ` [PATCH 16/46] common/sfc_efx/base: add port mode for 8 port hardware Ivan Malov
2025-04-16 13:59 ` [PATCH 17/46] common/sfc_efx/base: add new X4 port mode Ivan Malov
2025-04-16 13:59 ` [PATCH 18/46] common/sfc_efx/base: extend list of supported X4 port modes Ivan Malov
2025-04-16 13:59 ` [PATCH 19/46] common/sfc_efx/base: update MCDI headers Ivan Malov
2025-04-16 13:59 ` [PATCH 20/46] common/sfc_efx/base: provide a stub for basic netport attach Ivan Malov
2025-04-16 13:59 ` [PATCH 21/46] common/sfc_efx/base: provide defaults on netport attach path Ivan Malov
2025-04-16 13:59 ` [PATCH 22/46] common/sfc_efx/base: obtain assigned netport handle from NIC Ivan Malov
2025-04-16 13:59 ` [PATCH 23/46] common/sfc_efx/base: allow for const in MCDI struct accessor Ivan Malov
2025-04-16 13:59 ` [PATCH 24/46] common/sfc_efx/base: get netport fixed capabilities on probe Ivan Malov
2025-04-16 13:59 ` [PATCH 25/46] common/sfc_efx/base: decode netport link state on probe path Ivan Malov
2025-04-16 13:59 ` [PATCH 26/46] common/sfc_efx/base: fill in loopback modes on netport probe Ivan Malov
2025-04-16 13:59 ` [PATCH 27/46] common/sfc_efx/base: introduce Medford4 stub for PHY methods Ivan Malov
2025-04-16 13:59 ` [PATCH 28/46] common/sfc_efx/base: refactor EF10 link mode decoding helper Ivan Malov
2025-04-16 13:59 ` [PATCH 29/46] common/sfc_efx/base: provide PHY link get method on Medford4 Ivan Malov
2025-04-16 14:00 ` [PATCH 30/46] common/sfc_efx/base: implement PHY link control for Medford4 Ivan Malov
2025-04-17 7:31 ` Andrew Rybchenko
2025-04-16 14:00 ` [PATCH 31/46] common/sfc_efx/base: introduce Medford4 stub for MAC methods Ivan Malov
2025-04-16 14:00 ` [PATCH 32/46] common/sfc_efx/base: add MAC reconfigure method for Medford4 Ivan Malov
2025-04-17 7:34 ` Andrew Rybchenko
2025-04-16 14:00 ` [PATCH 33/46] common/sfc_efx/base: fill in software LUT for MAC statistics Ivan Malov
2025-04-16 14:00 ` [PATCH 34/46] common/sfc_efx/base: fill in MAC statistics mask on Medford4 Ivan Malov
2025-04-16 14:00 ` [PATCH 35/46] common/sfc_efx/base: support MAC statistics on Medford4 NICs Ivan Malov
2025-04-17 7:43 ` Andrew Rybchenko
2025-04-16 14:00 ` [PATCH 36/46] common/sfc_efx/base: implement MAC PDU controls for Medford4 Ivan Malov
2025-04-16 14:00 ` [PATCH 37/46] common/sfc_efx/base: correct MAC PDU calculation on Medford4 Ivan Malov
2025-04-16 14:00 ` [PATCH 38/46] net/sfc: make use of generic EFX MAC PDU calculation helpers Ivan Malov
2025-04-16 14:00 ` [PATCH 39/46] common/sfc_efx/base: ignore legacy link events on new boards Ivan Malov
2025-04-16 14:00 ` [PATCH 40/46] common/sfc_efx/base: add link event processing " Ivan Malov
2025-04-16 14:00 ` [PATCH 41/46] net/sfc: query link status on link change events on new NICs Ivan Malov
2025-04-16 14:00 ` [PATCH 42/46] common/sfc_efx/base: subscribe to netport link change events Ivan Malov
2025-04-16 14:00 ` [PATCH 43/46] net/sfc: offer support for 200G link ability on new adaptors Ivan Malov
2025-04-16 14:00 ` [PATCH 44/46] common/sfc_efx/base: support controls for netport lane count Ivan Malov
2025-04-17 7:57 ` Andrew Rybchenko
2025-04-16 14:00 ` [PATCH 45/46] net/sfc: add support for control of physical port " Ivan Malov
2025-04-16 14:00 ` [PATCH 46/46] doc: advertise support for AMD Solarflare X45xx adapters Ivan Malov
2025-04-16 15:14 ` [PATCH 00/46] Support AMD Solarflare X45xx adaptors Stephen Hemminger
2025-04-16 15:38 ` Ivan Malov
2025-04-16 16:31 ` Stephen Hemminger
2025-04-16 17:37 ` Ivan Malov
2025-04-16 21:44 ` Stephen Hemminger
2025-04-17 8:09 ` Andrew Rybchenko
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=20250416140016.36127-1-ivan.malov@arknetworks.am \
--to=ivan.malov@arknetworks.am \
--cc=andrew.rybchenko@oktetlabs.ru \
--cc=andy.moreton@amd.com \
--cc=denis.pryazhennikov@arknetworks.am \
--cc=dev@dpdk.org \
--cc=pieter.jansen-van-vuuren@amd.com \
--cc=viacheslav.galaktionov@arknetworks.am \
/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).