History log of /freebsd-current/sys/dev/mlx5/mlx5_core/mlx5_port.c
Revision Date Author Comments
# 95ee2897 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: two-line .h pattern

Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/


# 12c56d7d 01-Feb-2022 Hans Petter Selasky <hselasky@FreeBSD.org>

mlx5: idiomatic use of preprocessor, in particular paths

MFC after: 1 week
Sponsored by: NVIDIA Networking


# ee9d634b 14-Jun-2021 Konstantin Belousov <konstantinb@nvidia.com>

mlx5: normalize use of the opt_*.h files

MFC after: 1 week
Sponsored by: NVIDIA Networking


# a888087f 16-Jun-2021 Hans Petter Selasky <hselasky@FreeBSD.org>

mlx5en: Add missing media types for 100GBit/s, 200Gbit/s and 400Gbit/s.

Make the mlx5e_mode_table[] array one dimensional, because there is only
one entry, 10G ER/LR, which share the same protocol bit.

This patch only adds support for basic sub-type distinguishing for the
extended protocol bits. Use verbose ifconfig eeprom output to get actual
media type.

Remove write only "connector_type" variable while at it.

MFC after: 1 week
Reviewed by: kib
Sponsored by: Mellanox Technologies // NVIDIA Networking


# 2ea114b3 31-Aug-2020 Konstantin Belousov <kib@FreeBSD.org>

mlx5en: Implement SIOCGIFDOWNREASON.

Sponsored by: Mellanox Technologies - Nvidia
MFC after: 1 week


# 62daa4b6 31-Aug-2020 Konstantin Belousov <kib@FreeBSD.org>

mlx5_core: add mlx5_query_pddr().

And use it in mlx5_query_pddr_range_info() instead of direct register
access.

Sponsored by: Mellanox Technologies - Nvidia
MFC after: 1 week


# c28ef249 02-Oct-2019 Hans Petter Selasky <hselasky@FreeBSD.org>

Import Linux code to query/set buffer state in mlx5en(4).

Submitted by: kib@
MFC after: 3 days
Sponsored by: Mellanox Technologies


# a2f4f59c 02-Oct-2019 Hans Petter Selasky <hselasky@FreeBSD.org>

Unify prints in mlx5core.

All prints in mlx5core should use on of the macros:
mlx5_core_err/dbg/warn

Submitted by: slavash@
MFC after: 3 days
Sponsored by: Mellanox Technologies


# 939c79a2 08-May-2019 Hans Petter Selasky <hselasky@FreeBSD.org>

Add Firmware Reset Level, MFRL, register accessors in mlx5core.

Submitted by: kib@
MFC after: 3 days
Sponsored by: Mellanox Technologies


# ac87880a 08-May-2019 Hans Petter Selasky <hselasky@FreeBSD.org>

Add support for 200Gb ethernet speeds to mlx5core.

Submitted by: slavash@
MFC after: 3 days
Sponsored by: Mellanox Technologies


# 0358212d 08-May-2019 Hans Petter Selasky <hselasky@FreeBSD.org>

Implement PCAM, MCAM access register commands in mlx5core.

Introduced registers will expose capabilities of new registers and
features related to port/management.
Driver will query MCAM and PCAM in order to avoid failing on old
firmwares with lack of support.

Linux commit:
c835ad64683bd3e2d1b31ed2cb1ff4366932edb1

Submitted by: slavash@
MFC after: 3 days
Sponsored by: Mellanox Technologies


# 42390bb8 05-Dec-2018 Slava Shwartsman <slavash@FreeBSD.org>

mlx5en: Add support for IFM_10G_LR and IFM_40G_ER4 media types.

Inspect the ethernet compliance code to figure out actual cable type by reading
the PDDR module info register.

Submitted by: hselasky@
Approved by: hselasky (mentor)
MFC after: 1 week
Sponsored by: Mellanox Technologies


# e870c0ab 05-Dec-2018 Slava Shwartsman <slavash@FreeBSD.org>

mlx5en: Implement support for bandwidth limiting in by ratio, ETS.

Add support for setting the bandwidth limit as a ratio rather than in bits per
second. The ratio must be an integer number between 1 and 100 inclusivly.

Implement the needed firmware commands and SYSCTLs through mlx5en(4).

Submitted by: hselasky@
Approved by: hselasky (mentor)
MFC after: 1 week
Sponsored by: Mellanox Technologies


# b084af6c 05-Dec-2018 Slava Shwartsman <slavash@FreeBSD.org>

mlx5: Fix wrong size allocation for QoS ETC TC register

The driver allocates wrong size (due to wrong struct name) when issuing
a query/set request to NIC's register.

Linux commit:
d14fcb8d877caf1b8d6bd65d444bf62b21f2070c

Approved by: hselasky (mentor)
MFC after: 1 week
Sponsored by: Mellanox Technologies


# 7b9b93a8 18-Jul-2018 Hans Petter Selasky <hselasky@FreeBSD.org>

Update version information for the mlx5 and mlx5en(4) modules.

While at it bump some copyright dates.

MFC after: 1 week
Sponsored by: Mellanox Technologies


# ed0cee0b 17-Jul-2018 Hans Petter Selasky <hselasky@FreeBSD.org>

Implement support for Differentiated Service Code Point, DSCP, in mlx5en(4).

The DSCP feature is controlled using a set of sysctl(8) fields under
the qos sysctl directory entry for mlx5en(4).

For Routable RoCE QPs, the DSCP should be set in the QP's address path.
The DSCP's value is derived from the traffic class.

Linux commit:
ed88451e1f2d400fd6a743d0a481631cf9f97550

MFC after: 1 week
Sponsored by: Mellanox Technologies


# 10b08045 08-Mar-2018 Hans Petter Selasky <hselasky@FreeBSD.org>

Add support for per priority flow control, PFC, to mlx5en(4).

Add support for PFC and implement reading the per priority statistics
using the sysctl(8) interface. PFC is used together with VLAN priority
and can be enabled and disabled on a per priority basis.

Global pause frames and PFC are incompatible features and surrounding
logic has been added to warn the user about misconfiguration.

Update relevant mlx5core APIs for PFC configuration.

MFC after: 1 week
Sponsored by: Mellanox Technologies


# 788333d9 08-Mar-2018 Hans Petter Selasky <hselasky@FreeBSD.org>

Use the autogenerated interface file for all commands in mlx5core.

This patch accumulates the following Linux commits:
- 90b3e38d048f09b22fb50bcd460cea65fd00b2d7
mlx5_core: Modify CQ moderation parameters
- 09a7d9eca1a6cf5eb4f9abfdf8914db9dbd96f08
mlx5_core: QP/XRCD commands via mlx5 ifc
- 1a412fb1caa2c1b77719ccb5ed8b0c3c2bc65da7
mlx5_core: Modify QP commands via mlx5 ifc
- ec22eb53106be1472ba6573dc900943f52f8fd1e
mlx5_core: MKey/PSV commands via mlx5 ifc
- 73b626c182dff06867ceba996a819e8372c9b2ce
mlx5_core: EQ commands via mlx5 ifc
- 20ed51c643b6296789a48adc3bc2cc875a1612cf
mlx5_core: Access register and MAD IFC commands via mlx5 ifc
- a533ed5e179cd15512d40282617909d3482a771c
mlx5_core: Pages management commands via mlx5 ifc
- b8a4ddb2e8f44f872fb93bbda2d541b27079fd2b
mlx5_core: Add MLX5_ARRAY_SET64 to fix BUILD_BUG_ON
- af1ba291c5e498973cc325c501dd8da80b234571
mlx5_core: Refactor internal SRQ API
- b06e7de8a9d8d1d540ec122bbdf2face2a211634
mlx5_core: Refactor device capability function
- c4f287c4a6ac489c18afc4acc4353141a8c53070
mlx5_core: Unify and improve command interface

Submitted by: Matthew Finlay <matt@mellanox.com>
MFC after: 1 week
Sponsored by: Mellanox Technologies


# 2e9c3a4f 07-Mar-2018 Hans Petter Selasky <hselasky@FreeBSD.org>

Implement priority to traffic class mapping in mlx5core.

Add support for mapping priority to traffic class via sysctl

Submitted by: Slava Shwartsman <slavash@mellanox.com>
MFC after: 1 week
Sponsored by: Mellanox Technologies


# cfc9c386 07-Mar-2018 Hans Petter Selasky <hselasky@FreeBSD.org>

Implement rate limit per traffic class in mlx5core.

Add support for rate limiting traffic class via sysctl.

Submitted by: Slava Shwartsman <slavash@mellanox.com>
MFC after: 1 week
Sponsored by: Mellanox Technologies


# d9142151 07-Mar-2018 Hans Petter Selasky <hselasky@FreeBSD.org>

Implement missing query for current port rate in mlx5ib(4).

- Factor out port speed definitions into new port.h header file,
similarly as done in Linux upstream.
- Correct two existing port speed definitions in mlx5en according to
Linux upstream.

MFC after: 1 week
Sponsored by: Mellanox Technologies


# 27c29bc4 10-Nov-2017 Hans Petter Selasky <hselasky@FreeBSD.org>

Add API functions to set and query dropless port mode in mlx5 core.

Sponsored by: Mellanox Technologies
MFC after: 1 week


# cb022443 07-Nov-2016 Hans Petter Selasky <hselasky@FreeBSD.org>

Add more firmware related structures and update existing ones in the
MLX5 core module. Update the set and query diagnostics counter API.

Sponsored by: Mellanox Technologies
MFC after: 1 week


# cb4e4a6e 16-Sep-2016 Hans Petter Selasky <hselasky@FreeBSD.org>

Update the MLX5 core module:
- Add new firmware commands and update existing ones.
- Add more firmware related structures and update existing ones.
- Some minor fixes, like adding missing \n to some prints.

Sponsored by: Mellanox Technologies
MFC after: 1 week


# dc7e38ac 09-Nov-2015 Hans Petter Selasky <hselasky@FreeBSD.org>

Add mlx5 and mlx5en driver(s) for ConnectX-4 and ConnectX-4LX cards
from Mellanox Technologies. The current driver supports ethernet
speeds up to and including 100 GBit/s. Infiniband support will be
done later.

The code added is not compiled by default, which will be done by a
separate commit.

Sponsored by: Mellanox Technologies
MFC after: 2 weeks