netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [pull request][net-next 00/13] Mellanox, BlueField SmartNIC
@ 2019-02-16  1:34 Saeed Mahameed
  2019-02-16  1:34 ` [net-next 01/13] net/mlx5: Correctly set LAG mode for ECPF Saeed Mahameed
                   ` (13 more replies)
  0 siblings, 14 replies; 15+ messages in thread
From: Saeed Mahameed @ 2019-02-16  1:34 UTC (permalink / raw)
  To: David S. Miller; +Cc: netdev, Saeed Mahameed

Hi Dave,

This series adds the support for Melanox BlueField SmartNIC.
For more information please see tag log below.

Please note the merge commit of mlx5-next at the base of the pull request:
259fae5a2cff ("Merge branch 'mlx5-next' of git://git.kernel.org/.../mellanox/linux")

Please pull and let me know if there is any problem.

Thanks,
Saeed.

---
The following changes since commit 259fae5a2cff72e19f82094fb73e2149f8d64396:

  Merge branch 'mlx5-next' of git://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux (2019-02-15 16:45:31 -0800)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux.git tags/mlx5-updates-2019-02-15

for you to fetch changes up to c96692fb8f3d0a161c6892ab9cc51a5e9992ccf2:

  net/mlx5: E-Switch, Allow transition to offloads mode for ECPF (2019-02-15 17:25:58 -0800)

----------------------------------------------------------------
Support Mellanox BlueField SmartNIC (mlx5-updates-2019-02-15)

Bodong Wang says,

BlueField device is a multi-core ARM processor in a highly integrated
system on chip coupled with the ConnectX interconnect controller.
BlueField device can be presented in one out of two modes:

- SEPARATED_HOST: ARM processors as a separated and orthogonal host
  like any other external host in the multi-host virtualization model.
- EMBEDDED_CPU: ARM processors as Embedded CPU (EC) and part of the
  external hosts virtualization model.

While existing driver already supports the device on separated_host
mode, this patch series focus on the functionalities of embedded_cpu
mode.

On embedded_cpu mode, BlueField device exposes regular network
controller PCI function in the BlueField host(e.g, x86). However, a
separate PCI function called Embedded CPU Physical Function(ECPF) is
also added to the ARM host side, where standard Linux distributions is
able to run on the ARM cores. Depends on the NV configuration from
firmware, ECPF can be the e-switch manager and firmware pages supplier.
If ECPF is configured as e-switch manager and page supplier, it will
take over the responsibilities from the PF on BlueField host includes:
- Owns, controls and manages all e-switch parts, and takes e-switch
  traffic by default. It also should perform ENABLE_HCA for the host
  PF just like a PF does for its VFs.
- Provides and manages the ICM host memory required for the HCA to
  store various contexts for itself, the PF and VFs belong the
  e-switch it manages.

The PF on BlueField host side is still responsible for:
- Control its own permanent MAC.
- PCI and SRIOV configurations and perform ENABLE_HCA for its VFs.

The ECPF can also retrieve information about the external host it
controls, like host identifier, PCI BDF and number of virtual functions.
As these parameters may be changed dynamically, an event will be triggered
to the driver on ECPF side.

----------------------------------------------------------------
Bodong Wang (13):
      net/mlx5: Correctly set LAG mode for ECPF
      net/mlx5: E-Switch, Properly refer to the esw manager vport
      net/mlx5: E-Switch, Properly refer to host PF vport as other vport
      net/mlx5: E-Switch, Refactor offloads flow steering init/cleanup
      net/mlx5: E-Switch, Split VF and special vports for offloads mode
      net/mlx5: E-Switch, Use getter and iterator to access vport/rep
      net/mlx5: E-Switch, Add state to eswitch vport representors
      net/mlx5: E-Switch, Support load/unload reps of specific vport types
      net/mlx5: E-Switch, Centralize repersentor reg/unreg to eswitch driver
      net/mlx5: E-Switch, Assign a different position for uplink rep and vport
      net/mlx5: E-Switch, Consider ECPF vport depends on eswitch ownership
      net/mlx5: E-Switch, Load/unload VF reps according to event from host PF
      net/mlx5: E-Switch, Allow transition to offloads mode for ECPF

 drivers/infiniband/hw/mlx5/ib_rep.c                |  20 +-
 drivers/net/ethernet/mellanox/mlx5/core/en_rep.c   |  25 +-
 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c  | 175 +++++---
 drivers/net/ethernet/mellanox/mlx5/core/eswitch.h  |  65 ++-
 .../ethernet/mellanox/mlx5/core/eswitch_offloads.c | 470 +++++++++++++++++----
 drivers/net/ethernet/mellanox/mlx5/core/lag.c      |   5 +
 drivers/net/ethernet/mellanox/mlx5/core/vport.c    |  10 +-
 include/linux/mlx5/driver.h                        |   5 +
 include/linux/mlx5/eswitch.h                       |  19 +-
 include/linux/mlx5/mlx5_ifc.h                      |   3 +-
 include/linux/mlx5/vport.h                         |  20 +-
 11 files changed, 617 insertions(+), 200 deletions(-)

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2019-02-16 20:13 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-16  1:34 [pull request][net-next 00/13] Mellanox, BlueField SmartNIC Saeed Mahameed
2019-02-16  1:34 ` [net-next 01/13] net/mlx5: Correctly set LAG mode for ECPF Saeed Mahameed
2019-02-16  1:34 ` [net-next 02/13] net/mlx5: E-Switch, Properly refer to the esw manager vport Saeed Mahameed
2019-02-16  1:34 ` [net-next 03/13] net/mlx5: E-Switch, Properly refer to host PF vport as other vport Saeed Mahameed
2019-02-16  1:34 ` [net-next 04/13] net/mlx5: E-Switch, Refactor offloads flow steering init/cleanup Saeed Mahameed
2019-02-16  1:34 ` [net-next 05/13] net/mlx5: E-Switch, Split VF and special vports for offloads mode Saeed Mahameed
2019-02-16  1:34 ` [net-next 06/13] net/mlx5: E-Switch, Use getter and iterator to access vport/rep Saeed Mahameed
2019-02-16  1:34 ` [net-next 07/13] net/mlx5: E-Switch, Add state to eswitch vport representors Saeed Mahameed
2019-02-16  1:34 ` [net-next 08/13] net/mlx5: E-Switch, Support load/unload reps of specific vport types Saeed Mahameed
2019-02-16  1:34 ` [net-next 09/13] net/mlx5: E-Switch, Centralize repersentor reg/unreg to eswitch driver Saeed Mahameed
2019-02-16  1:34 ` [net-next 10/13] net/mlx5: E-Switch, Assign a different position for uplink rep and vport Saeed Mahameed
2019-02-16  1:34 ` [net-next 11/13] net/mlx5: E-Switch, Consider ECPF vport depends on eswitch ownership Saeed Mahameed
2019-02-16  1:34 ` [net-next 12/13] net/mlx5: E-Switch, Load/unload VF reps according to event from host PF Saeed Mahameed
2019-02-16  1:34 ` [net-next 13/13] net/mlx5: E-Switch, Allow transition to offloads mode for ECPF Saeed Mahameed
2019-02-16 20:11 ` [pull request][net-next 00/13] Mellanox, BlueField SmartNIC David Miller

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).