Commit Graph

22 Commits

Author SHA1 Message Date
Petr Machata 7d928a3b22
Mellanox: Add new mlxsw_spectrum firmware xx.2010.1006
Add latest verified version of Nvidia Spectrum-family switch firmware,
for Spectrum (13.2010.1006), Spectrum-2 (29.2010.1006) and Spectrum-3
(30.2010.1006).

The following issues have been fixed:

- On SN3700C systems, the SLL (switch lifetime limit) default was
  misconfigured causing the send queue to get stuck.
- Processing of QDPM, a register that controls mapping from DSCP values to
  packet priority, could have latency > 11000 us.
- A cycle of port splitting and unsplitting may have lead to a FW hang.
- On Spectrum-2 and Spectrum-3, packets stuck in the pipe could cause ASIC
  freeze after port is unmapped.
- Quota type on MC shared buffer pool is now initialized to static, instead
  of being left uninitialized. Note that this is a work-around and might go
  away in the future. FW client should explicitly initialize all used
  pools.

With following new features now supported:

- On Spectrum-2 binding drop counters of multicast packets per switch
  priority is now supported through the SBDCM register.
- This FW exposes an existing ASIC feature whereby forwarded packets are
  truncated on ingress.
- Timestamps can now be stored on packet SMAC instead of FCS, allowing
  48-bit timestamp granularity instead of 32 bits.
- Latency-triggered buffer snapshots, on Spectrum-4.
- RIF cache, Spectrum-2 and above.
- Accumulative counters, which uses packet sampling to reduce counter
  memory demands at the expense of counter accuracy.

Signed-off-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2021-10-25 07:18:16 -04:00
Petr Machata becfe0a0e3
Mellanox: Add new mlxsw_spectrum firmware xx.2008.3326
Add latest verified version of Nvidia Spectrum-family switch firmware,
for Spectrum (13.2008.3326), Spectrum-2 (29.2008.3326) and Spectrum-3
(30.2008.3326).

The following issues are fixed in this version:

- Several issues in tracking PTP timestamps on Spectrum-3.
- An issue in fine-grained LAG configuration, which would mangle KVD on
  Spectrum-2 and later.
- An issue in FW command interface, which would mangle temporary buffers,
  leading to wrong initialization of a port.
- Issues in querying of LPM entries and tunnel decapsulation configuration.
- A Spectrum-2 issue where a too-short VXLAN-decapsulated packet would get
  zero-padded and trapped, instead of getting dropped.
- An issue where latency would not be reported for egress-sampled packets
  on 10Gbps and 25Gbps ports on Spectrum-3.
- A packet scheduler configuration issue which would cause drops of small
  packets on 10Gbps line rate on Spectrum-3.
- An issue in handling multicast traffic, which would be trapped under a
  wrong trap reason.
- Two issues in sFlow policer configuration.
- An issue in port headroom watermark reporting.
- An issue in port headroom reconfiguration while traffic is ingressing the
  port.
- A fix in reporting of latency watermark after transition from 10Gbps or
  25Gbps to 400Gbps on Spectrum-3.
- A MID reallocation issue on Spectrum-1.
- A number of issues in in-service-upgrade.

The following new features are now available:

- Support for setting router interface MAC addresses with more than one
  common prefix (up from one common prefix previously).
- Support for efficient bulk update of FDB entries from VXLAN encapsulation
  to local forwarding and back.
- Support for 9 fixed + 7 hashed bits of VXLAN UDP source port value (up
  from 8+8).
- Support for placing timestamp over a source MAC field to permit 48-bit
  timestamp (up from 32-bit when placed over FCS).

Signed-off-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2021-09-01 08:00:37 -04:00
Petr Machata da416b04f7
Mellanox: Add new mlxsw_spectrum firmware xx.2008.2946
Add latest verified version of Mellanox Spectrum-family switch firmware,
for Spectrum (13.2008.2946), Spectrum-2 (29.2008.2946) and Spectrum-3
(30.2008.2946).

The following issues have been fixed:

- A Spectrum-2 issue where control traffic generated on the switch would not
  egress a front panel port.
- Minimum shaper would not guarantee the requested bandwidth if the configured
  rate is 100Gbps+.
- On Spectrum-1, when bulk-updating FDB, a multicast tunnel entry update would
  be corrupted, and a unicast entry would not change VID.
- When ECMP or LAG are in symmetric hash mode, a packet would be steered to the
  wrong port.
- Obtaining activity for MC routes would sometimes exhibit a latency of >1us
  on Spectrum-3.

The following new features are available:

- Elephant & mice flow detection
- Register PMTDB, for querying of possible split-port scenarios
- Router interface profiles, which relax the requirement that all router
  interfaces have the same MAC address prefix.

Signed-off-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2021-06-09 07:07:44 -04:00
Petr Machata 2f307088d3
Mellanox: Add new mlxsw_spectrum firmware xx.2008.2438
Add latest verified version of Mellanox Spectrum-family switch firmware,
for Spectrum (13.2008.2438), Spectrum-2 (29.2008.2438) and Spectrum-3
(30.2008.2438).

This update fixes the following issues:

- An issue where strictly-prioritized traffic gets a 9usec latency penalty
  on a congested port.
- Attempts to configure DSCP prioritization (QPDM register) on CPU
  port (local port 0) would result in FW crash.
- An issue in sampling traffic to the CPU due to incorrect trap
  prioritization.
- An issue in bulk-reading flow counters.
- Several issues related to FW upgrade and in-service FW upgrade.
- Incomplete clearing of activity bits in ECMP containers with a very high
  number of individual ECMP entries (100K).
- A crash during router deinit.

Signed-off-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2021-04-19 09:52:07 -04:00
Petr Machata 5ecd13ffe8
Mellanox: Add new mlxsw_spectrum firmware xx.2008.2406
Add latest verified version of Mellanox Spectrum-family switch firmware,
for Spectrum (13.2008.2406), Spectrum-2 (29.2008.2406) and Spectrum-3
(30.2008.2406).

This release contains the following fixes and improvements:

- MIRROR_SAMPLER_ACTION.mirror_probability_rate inverted.
- When adjacency is replaced-if-inactive (RATR.opcode=3), bad parameter was
  reported when replacing an active entry.
- TC pool occupancy watermark not cleared after port splits.
- Per-TC counter of ECN-marked packets supported.
- When duplicating VXLAN packets for head-end replication, number of
  lookups was limited to 254, while Spectrum>=2 support 4K.
- Deadlock on port activation when 3 1x ports are active in a single port
  cluster on Spectrum-3.
- A storm of congestion threshold events generated on stably-congested
  traffic when a 200 Gbps port is flapped on Spectrum-3.
- Incorrect early scheduling parameters for 50G 2-way split on Spectrum-2.
- Timeouts when accessing certain CRspace addresses.
- Enable sampling trapped packets.

Signed-off-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2021-03-03 13:23:49 -05:00
Petr Machata cf6fc2bc77
Mellanox: Add new mlxsw_spectrum firmware xx.2008.2304
Add latest verified version of Mellanox Spectrum-family switch firmware,
for Spectrum (13.2008.2304), Spectrum-2 (29.2008.2304) and Spectrum-3
(30.2008.2304).

This release fixes the following issues (among others):

- Rx pause packet reaction latency on Spectrum-3
- Certain high-numbered flow counters would not work on Spectrum-2.
- FW freeze on Spectrum-1 when under heavy PTP traffic load.
- Mirroring traffic to the CPU on Spectrum-2.
- Shared headroom would not be exhausted before drops started occurring.
- Per-priority Rx discard counters were not always cleared.
- 400-Gbps ports with PFC enabled kept sending pause frames without buffer
  pressure.
- Several issues in flow control and traffic admittance, and FW freeze
  after an on-the-fly shared buffer reconfiguration.
- A number of issues in forwarding line speed traffic to partially split
  8x ports on Spectrum-3.
- A number of issues related to in-service FW upgrade (ISSU / ISFU).
- Port shaper influenced ingress rate when PFC was enabled.
- FW freeze after a port was set admin down when unrelated ports were
  congested.

And includes the following new feature:

- Improvements to counter read performance

Signed-off-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2021-02-08 08:16:32 -05:00
Petr Machata b362fd4cb8
Mellanox: Add new mlxsw_spectrum firmware xx.2008.2018
Add latest verified version of Mellanox Spectrum-family switch firmware,
for Spectrum (13.2008.2018), Spectrum-2 (29.2008.2018) and Spectrum-3
(30.2008.2018).

This release fixes the following issues (among others):

- Prioritization of trapped control traffic on Spectrum-2 and Spectrum-3.
- Several edge cases where the FW could get stuck on Spectrum-2 and
  Spectrum-3.
- FW flash issues on Spectrum-3
- Apparent resource exhaustion on Spectrum-3 due to wrong fencing.
- When trapping dropped packets from several TCs, they would only get
  reported under one TC.
- Incorrect rejection of RIF counters with indices over 16 bits.
- An issue where port split might fail after port saw heavy traffic.
- Certain large policer CIR caused effective zero CIR.
- A race that would cause drops due to lack of buffer space.

And includes the following new features:

- Support for shared port headroom
- A new trap for L2 IPv6 DHCP traffic
- On Spectrum-2 and Spectrum-3, support ACL actions that perform ALU
  operations between packet fields, immediate values and general-purpose
  registers
- Early support for 8-way port split on Spectrum-3

Signed-off-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2020-11-24 09:55:03 -05:00
Petr Machata a38b8edef7
Mellanox: Add new mlxsw_spectrum firmware xx.2008.1312
Add latest verified version of Mellanox Spectrum-family switch firmware,
for Spectrum-1 (13.2008.1312), Spectrum-2 (29.2008.1312) and
Spectrum-3 (30.2008.1312).

This version contains a fix for 10G speed in some platforms.

Signed-off-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2020-09-23 08:18:19 -04:00
Petr Machata eb3aa1fa87
Mellanox: Add new mlxsw_spectrum firmware xx.2008.1310
Add latest verified version of Mellanox Spectrum-family switch firmware,
for Spectrum-1 (13.2008.1310), Spectrum-2 (29.2008.1310) and
Spectrum-3 (30.2008.1310).

Signed-off-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2020-09-14 08:56:51 -04:00
Petr Machata 6c79b685a4
Mellanox: Add new mlxsw_spectrum firmware xx.2008.1036
Add latest verified version of Mellanox Spectrum-family switch firmware,
for Spectrum-1 (13.2008.1036), Spectrum-2 (29.2008.1036) and
Spectrum-3 (30.2008.1036).

Signed-off-by: Petr Machata <petrm@mellanox.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2020-08-03 12:13:16 -04:00
Petr Machata d9880b1a9c
Mellanox: Add new mlxsw_spectrum firmware xx.2007.1168
Add latest verified version of Mellanox Spectrum-family switch firmware,
for Spectrum-1 (13.2007.1168), Spectrum-2 (29.2007.1168) and newly also for
Spectrum-3 (30.2007.1168).

Signed-off-by: Petr Machata <petrm@mellanox.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2020-06-10 08:29:31 -04:00
Ido Schimmel 67d4ff59bf
Mellanox: Add new mlxsw_spectrum firmware xx.2000.2714
Add new firmware files for Spectrum-1 (13.2000.2714) and Spectrum-2
(29.2000.2714). The new firmware contains:
* Support for querying the PCI reset timeout for gearbox based systems
* Support for 2x50 Gb/s port split option on SN3800 systems

Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2020-01-07 09:08:25 -05:00
Ido Schimmel ad7a8b22b1
Mellanox: Add new mlxsw_spectrum2 firmware 29.2000.2308
This is the first firmware file for the Spectrum-2 switch ASIC.

Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2019-10-23 09:25:09 -04:00
Ido Schimmel e756bf32cb
Mellanox: Add new mlxsw_spectrum firmware 13.2000.2308
The new firmware contains:
* Support for querying port module type (e.g., QSFP, SFP)
* Fix for issue where locally generated packets could not egress the
switch when the egress port is congested with data plane traffic

Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2019-10-23 09:25:00 -04:00
Ido Schimmel ebd40c6630
Mellanox: Add new mlxsw_spectrum firmware 13.2000.1886
The new firmware contains:
* Support for extended error reporting via a new TLV in the EMAD packet.
Similar to netlink extended ack.
* Fix for an issue in the PCI code that can result in false AER errors
under high Tx rate.

Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2019-08-21 07:14:02 -04:00
Ido Schimmel cdef97132a
Mellanox: Add new mlxsw_spectrum firmware 13.2000.1122
The new firmware contains:
* Support for new firmware resources required for splitting a port into
two on Spectrum-2 systems
* Support for new register to query number of supported gearboxes

Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2019-05-02 06:11:13 -04:00
Shalom Toledo 813fa1fc6f Mellanox: Add new mlxsw_spectrum firmware 13.1910.622
This new firmware contains:
 * New packet traps for discarded packets
 * Secure firmware flash bug fix
 * Fence mechanism bug fix
 * TCAM RMA bug fix

Signed-off-by: Shalom Toledo <shalomt@mellanox.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2018-12-14 08:19:16 -05:00
Petr Machata 3cee7288e6 Mellanox: Add new mlxsw_spectrum firmware 13.1703.4
This new firmware contains a fix for MC-aware mode.

Signed-off-by: Petr Machata <petrm@mellanox.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2018-09-13 11:42:43 -04:00
Nir Dotan b01151bc9e Mellanox: Add new mlxsw_spectrum firmware 13.1702.6
This new firmware contains:
    - Support for new types of cables
    - Support for flashing future firmware without reboot
    - Support for Router ARP BC and UC traps

Signed-off-by: Nir Dotan <nird@mellanox.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2018-07-27 11:16:06 -04:00
Tal Bar 9cf0ec08c8 Mellanox: Add new mlxsw_spectrum firmware 13.1620.192
This new firmware contains:
	- Support for auto-neg disable mode

Signed-off-by: Tal Bar <talb@mellanox.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
2018-03-12 09:59:13 -04:00
Shalom Toledo 8e864c2c8d Mellanox: Add new mlxsw_spectrum firmware 13.1530.152
This new firmware contains:
 - Support Spectrum A1 revision
 - Batch deletion of IPv6 neighbours
 - Remove incorrect VPD capability

Signed-off-by: Shalom Toledo <shalomt@mellanox.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
2017-11-23 02:11:52 +00:00
Yotam Gigi a4c72696f5 Mellanox: Add firmware for mlxsw_spectrum
Add first firmware for the Mellanox Spectrum switch, as a followup to the
recently added commit:
6b7421992b8d ("mlxsw: spectrum: Validate firmware revision on init")

The version of the firmware release is 13.1420.122

Signed-off-by: Yotam Gigi <yotamg@mellanox.com>
Signed-off-by: Kyle McMartin <kyle@kernel.org>
2017-06-01 10:18:00 -07:00