mlxsw: spectrum: Add IEEE 802.1Qaz ETS support
authorIdo Schimmel <idosch@mellanox.com>
Wed, 6 Apr 2016 15:10:10 +0000 (17:10 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 6 Apr 2016 21:24:18 +0000 (17:24 -0400)
commit8e8dfe9fdf063cd61f35ed82f5be463791a613a5
treefa9f71656d7ff4c42a02ead6d5a58965ee39cb8d
parentf00817df2b428ec13711bd27729f992b8c3af054
mlxsw: spectrum: Add IEEE 802.1Qaz ETS support

Implement the appropriate DCB ops and allow a user to configure:
* Priority to traffic class (TC) mapping with a total of 8
  supported TCs
* Transmission selection algorithm (TSA) for each TC and the
  corresponding weights in case of weighted round robin (WRR)

As previously explained, we treat the priority group (PG) buffer in the
port's headroom as the ingress counterpart of the egress TC. Therefore,
when a certain priority to TC mapping is configured, we also configure
the port's headroom buffer.

Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlxsw/spectrum.c
drivers/net/ethernet/mellanox/mlxsw/spectrum.h
drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c