netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [patch net-next 00/17] mlxsw: Introduce support for Data Center Bridging
@ 2016-04-06 15:09 Jiri Pirko
  2016-04-06 15:10 ` [patch net-next 01/17] mlxsw: reg: Add Port Prio To Buffer register Jiri Pirko
                   ` (17 more replies)
  0 siblings, 18 replies; 19+ messages in thread
From: Jiri Pirko @ 2016-04-06 15:09 UTC (permalink / raw)
  To: netdev; +Cc: davem, idosch, eladr, yotamg, ogerlitz, roopa, gospo

From: Jiri Pirko <jiri@mellanox.com>

Ido says:

This patchset introduces support for Quality of Service (QoS) as part of the
IEEE Data Center Bridiging (DCB) standards.

Patches 1-9 do the required device initialization. Specifically, patches 1-6
initialize the ports' headroom buffers, which are used at ingress to store
incoming packets while they go through the switch's pipeline. Patches 7-9
complete them by initializing the egress scheduling.

The pipeline mentioned above determines the packet's egress port(s) and
traffic class. Ideally, once out of the pipeline the packet moves to the
switch's shared buffer (to be introduced in Jiri's patchset, currently
default values are used) and scheduled for transmission according to its
traffic class. The egress scheduling is configured according to the 802.1Qaz
standard, which is part of the DCB infrastructure supported by Linux. This
is introduced in patches 10-12.

Even after going through the pipeline packets are not always eligible to
enter the shared buffer. This is determined by the amount of available space
and the quotas associated with the packet. However, if flow control is
enabled and the packet is associated with the lossless flow, then it will
stay in the headroom and won't be discarded. This is introduced in patches
13-17.

Please check individual commit messages for more info, as I tried to keep
them pretty detailed.

Thanks.

Ido Schimmel (17):
  mlxsw: reg: Add Port Prio To Buffer register
  mlxsw: spectrum: Map all switch priorities to priority group 0
  mlxsw: spectrum: Add bytes to cells helper
  mlxsw: spectrum: Correctly configure headroom size
  mlxsw: reg: Use correct PBMC register length
  mlxsw: spectrum: Set port's shared buffer size to 0
  mlxsw: reg: Add QoS ETS Element Configuration register
  mlxsw: reg: Add QoS Switch Traffic Class Table register
  mlxsw: spectrum: Initialize egress scheduling
  mlxsw: spectrum: Introduce support for Data Center Bridging (DCB)
  mlxsw: spectrum: Add IEEE 802.1Qaz ETS support
  mlxsw: spectrum: Allow setting maximum rate for a TC
  mlxsw: reg: Add Port Flow Control Configuration register
  mlxsw: reg: Add lossless settings for PBMC register
  mlxsw: spectrum: Add support for PAUSE frames
  mlxsw: reg: Introduce per priority counters
  mlxsw: spectrum: Add IEEE 802.1Qbb PFC support

 drivers/net/ethernet/mellanox/mlxsw/Kconfig        |   8 +
 drivers/net/ethernet/mellanox/mlxsw/Makefile       |   1 +
 drivers/net/ethernet/mellanox/mlxsw/reg.h          | 507 ++++++++++++++++++++-
 drivers/net/ethernet/mellanox/mlxsw/spectrum.c     | 263 ++++++++++-
 drivers/net/ethernet/mellanox/mlxsw/spectrum.h     |  61 +++
 .../net/ethernet/mellanox/mlxsw/spectrum_buffers.c | 108 +++--
 drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c | 480 +++++++++++++++++++
 drivers/net/ethernet/mellanox/mlxsw/switchx2.c     |   3 +-
 8 files changed, 1381 insertions(+), 50 deletions(-)
 create mode 100644 drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c

-- 
2.5.5

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

end of thread, other threads:[~2016-04-06 21:24 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-06 15:09 [patch net-next 00/17] mlxsw: Introduce support for Data Center Bridging Jiri Pirko
2016-04-06 15:10 ` [patch net-next 01/17] mlxsw: reg: Add Port Prio To Buffer register Jiri Pirko
2016-04-06 15:10 ` [patch net-next 02/17] mlxsw: spectrum: Map all switch priorities to priority group 0 Jiri Pirko
2016-04-06 15:10 ` [patch net-next 03/17] mlxsw: spectrum: Add bytes to cells helper Jiri Pirko
2016-04-06 15:10 ` [patch net-next 04/17] mlxsw: spectrum: Correctly configure headroom size Jiri Pirko
2016-04-06 15:10 ` [patch net-next 05/17] mlxsw: reg: Use correct PBMC register length Jiri Pirko
2016-04-06 15:10 ` [patch net-next 06/17] mlxsw: spectrum: Set port's shared buffer size to 0 Jiri Pirko
2016-04-06 15:10 ` [patch net-next 07/17] mlxsw: reg: Add QoS ETS Element Configuration register Jiri Pirko
2016-04-06 15:10 ` [patch net-next 08/17] mlxsw: reg: Add QoS Switch Traffic Class Table register Jiri Pirko
2016-04-06 15:10 ` [patch net-next 09/17] mlxsw: spectrum: Initialize egress scheduling Jiri Pirko
2016-04-06 15:10 ` [patch net-next 10/17] mlxsw: spectrum: Introduce support for Data Center Bridging (DCB) Jiri Pirko
2016-04-06 15:10 ` [patch net-next 11/17] mlxsw: spectrum: Add IEEE 802.1Qaz ETS support Jiri Pirko
2016-04-06 15:10 ` [patch net-next 12/17] mlxsw: spectrum: Allow setting maximum rate for a TC Jiri Pirko
2016-04-06 15:10 ` [patch net-next 13/17] mlxsw: reg: Add Port Flow Control Configuration register Jiri Pirko
2016-04-06 15:10 ` [patch net-next 14/17] mlxsw: reg: Add lossless settings for PBMC register Jiri Pirko
2016-04-06 15:10 ` [patch net-next 15/17] mlxsw: spectrum: Add support for PAUSE frames Jiri Pirko
2016-04-06 15:10 ` [patch net-next 16/17] mlxsw: reg: Introduce per priority counters Jiri Pirko
2016-04-06 15:10 ` [patch net-next 17/17] mlxsw: spectrum: Add IEEE 802.1Qbb PFC support Jiri Pirko
2016-04-06 21:24 ` [patch net-next 00/17] mlxsw: Introduce support for Data Center Bridging 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).