All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vadim Pasternak <vadimp@nvidia.com>
To: <hdegoede@redhat.com>
Cc: <platform-driver-x86@vger.kernel.org>, <michaelsh@nvidia.com>,
	"Vadim Pasternak" <vadimp@nvidia.com>
Subject: [PATCH platform-next 00/10] platform: mellanox: Introduce initial chassis management support for modular Ethernet system
Date: Sat, 2 Oct 2021 12:32:29 +0300	[thread overview]
Message-ID: <20211002093238.3771419-1-vadimp@nvidia.com> (raw)

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="y", Size: 3507 bytes --]

Add initial chassis management support for Nvidia modular Ethernet
switch systems MSN4800, providing a high performance switching solution
for Enterprise Data Centers (EDC) for building Ethernet based clusters,
High-Performance Computing (HPC) and embedded environments.

This system could be equipped with the different types of replaceable
line cards and management board. The first system flavor will support
the line card type MSN4800-C16 equipped with Lattice CPLD devices aimed
for system and ASIC control, one Nvidia FPGA for gearboxes (PHYs)
management, and four Nvidia gearboxes for the port control and with
16x100GbE QSFP28 ports and with various devices for electrical control.

The system is equipped with eight slots for line cards, four slots for
power supplies and six slots for fans. It could be configured as fully
populated or with even only one line card. The line cards are
hot-pluggable.
In the future when more line card flavors are to be available (for
example line cards with 8x200Gb Eth port, with 4x400 Eth ports, or with
some kind of smart cards for offloading purpose), any type of line card
could be inserted at any slot.

The system is based on Nvidia Spectrum-3 ASIC. The switch height is 4U
and it fits standard rack size.

The next coming card generations are supposed to support:
- Line cards with 8x200Gbe QSFP28 Ethernet ports.
- Line cards with 4x400Gbe QSFP-DD Ethernet ports.
- Smart cards equipped with Nvidia ARM CPU for offloading and for fast
  access to the storage (EBoF).
- Fabric cards for inter-connection.

Patch set contains:
Patch #1 – adds new types for modular system support.
Patch #2 - adds support for the modular system equipped with replicable
	   line cards.
Patches #3-#4 - extend logic for hotplug devices operations for the
		modular system support.
Patch #5 - extends number of hwmon attributes for mlxreg-io driver,
	   since modular system introduces more attributes.
Patch #6 - adds field for security access validation.
Patch #7 - introduces initial support for Mellanox line card devices.
Patches #8-#9 – add documentation.
Patch #10 - extend support for cooling devices.

Vadim Pasternak (10):
  platform_data/mlxreg: Add new type to support modular systems
  platform/x86: mlx-platform: Add initial support for new modular system
  platform/mellanox: mlxreg-hotplug: Extend logic for hotplug devices
    operations
  platform/x86: mlx-platform: Configure notifier callbacks for modular
    system
  platform/mellanox: mlxreg-io: Extend number of hwmon attributes
  platform_data/mlxreg: Add new field for secured access
  platform/mellanox: mlxreg-lc: Add initial support for Nvidia line card
    devices
  Documentation/ABI: Add new attributes for mlxreg-io sysfs interfaces
  Documentation/ABI: Add new line card attributes for mlxreg-io sysfs
    interfaces
  platform/x86: mlx-platform: Add support for multiply cooling devices

 .../ABI/stable/sysfs-driver-mlxreg-io         |  241 ++
 drivers/platform/mellanox/Kconfig             |   12 +
 drivers/platform/mellanox/Makefile            |    1 +
 drivers/platform/mellanox/mlxreg-hotplug.c    |  123 +-
 drivers/platform/mellanox/mlxreg-io.c         |    2 +-
 drivers/platform/mellanox/mlxreg-lc.c         |  906 +++++++
 drivers/platform/x86/mlx-platform.c           | 2279 +++++++++++++++--
 include/linux/platform_data/mlxreg.h          |   82 +
 8 files changed, 3351 insertions(+), 295 deletions(-)
 create mode 100644 drivers/platform/mellanox/mlxreg-lc.c

-- 
2.20.1


             reply	other threads:[~2021-10-02  9:33 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-02  9:32 Vadim Pasternak [this message]
2021-10-02  9:32 ` [PATCH platform-next 01/10] platform_data/mlxreg: Add new type to support modular systems Vadim Pasternak
2021-10-02  9:32 ` [PATCH platform-next 02/10] platform/x86: mlx-platform: Add initial support for new modular system Vadim Pasternak
2021-10-02  9:32 ` [PATCH platform-next 03/10] platform/mellanox: mlxreg-hotplug: Extend logic for hotplug devices operations Vadim Pasternak
2021-10-02  9:32 ` [PATCH platform-next 04/10] platform/x86: mlx-platform: Configure notifier callbacks for modular system Vadim Pasternak
2021-10-02  9:32 ` [PATCH platform-next 05/10] platform/mellanox: mlxreg-io: Extend number of hwmon attributes Vadim Pasternak
2021-10-02  9:32 ` [PATCH platform-next 06/10] platform_data/mlxreg: Add new field for secured access Vadim Pasternak
2021-10-02  9:32 ` [PATCH platform-next 07/10] platform/mellanox: mlxreg-lc: Add initial support for Nvidia line card devices Vadim Pasternak
     [not found]   ` <76a93a22-a3ff-e65f-1334-defb886724dc@redhat.com>
     [not found]     ` <6d9e4402-a8c2-d043-4129-4da6b250ea53@redhat.com>
2021-10-19  8:57       ` Vadim Pasternak
2021-10-02  9:32 ` [PATCH platform-next 08/10] Documentation/ABI: Add new attributes for mlxreg-io sysfs interfaces Vadim Pasternak
2021-10-02  9:32 ` [PATCH platform-next 09/10] Documentation/ABI: Add new line card " Vadim Pasternak
2021-10-19  8:57   ` Hans de Goede
2021-10-19  9:04     ` Vadim Pasternak

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=20211002093238.3771419-1-vadimp@nvidia.com \
    --to=vadimp@nvidia.com \
    --cc=hdegoede@redhat.com \
    --cc=michaelsh@nvidia.com \
    --cc=platform-driver-x86@vger.kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.