#
96425f44 |
| 02-Oct-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Add sysctl(8) to get and set forward error correction, FEC, configuration in mlx5en(4).
MFC after: 3 days Sponsored by: Mellanox Technologies
|
#
207ff00e |
| 02-Oct-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Add definition for the Port Buffer Status Register in mlx5core.
Submitted by: kib@ MFC after: 3 days Sponsored by: Mellanox Technologies
|
#
8ae1c36f |
| 02-Oct-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Sort the ports registers definitions numerically in mlx5core.
Submitted by: kib@ MFC after: 3 days Sponsored by: Mellanox Technologies
|
#
47458190 |
| 02-Oct-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Read rege map from crdump scan space in mlx5core.
Submitted by: kib@ MFC after: 3 days Sponsored by: Mellanox Technologies
|
#
e456decc |
| 02-Oct-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Make the mlx5_vsc_wait_on_flag(9) function global.
Submitted by: kib@ MFC after: 3 days Sponsored by: Mellanox Technologies
|
#
111b57c3 |
| 02-Oct-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Add port module event software counters in mlx5core. While at it, fixup PME based on latest PRM defines.
Submitted by: slavash@ MFC after: 3 days Sponsored by: Mellanox Technologies
|
#
6226306b |
| 02-Oct-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Cleanup naming of IRQ vectors in mlx5en. Remove unused IRQ naming functions and arrays.
MFC after: 3 days Sponsored by: Mellanox Technologies
|
#
66b38bfe |
| 02-Oct-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Add support for Multi-Physical Function Switch, MPFS, in mlx5en.
MPFS is a logical switch in the Mellanox device which forward packets based on a hardware driven L2 address table, to one or more phy
Add support for Multi-Physical Function Switch, MPFS, in mlx5en.
MPFS is a logical switch in the Mellanox device which forward packets based on a hardware driven L2 address table, to one or more physical- or virtual- functions. The physical- or virtual- function is required to tell the MPFS by using the MPFS firmware commands, which unicast MAC addresses it is requesting from the physical port's traffic. Broadcast and multicast traffic however, is copied to all listening physical- and virtual- functions and does not need a rule in the MPFS switching table.
Linux commit: eeb66cdb682678bfd1f02a4547e3649b38ffea7e MFC after: 3 days Sponsored by: Mellanox Technologies
show more ...
|
Revision tags: release/11.3.0 |
|
#
7648bc9f |
| 13-May-2019 |
Alan Somers <asomers@FreeBSD.org> |
MFHead @347527
Sponsored by: The FreeBSD Foundation
|
#
8d1eeedb |
| 08-May-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Make command workqueue persistant in mlx5core.
There is no reason to re-create the command workqueue during healthcare. This also fixes an issue where a previous work struct may refer to a destroyed
Make command workqueue persistant in mlx5core.
There is no reason to re-create the command workqueue during healthcare. This also fixes an issue where a previous work struct may refer to a destroyed workqueue.
MFC after: 3 days Sponsored by: Mellanox Technologies
show more ...
|
#
cf551f95 |
| 08-May-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Fix race between driver unload and dumping firmware in mlx5core.
Present code uses lock-less accesses to the dump data to prevent top level ioctls from blocking bottom-level call to dump. Unfortuna
Fix race between driver unload and dumping firmware in mlx5core.
Present code uses lock-less accesses to the dump data to prevent top level ioctls from blocking bottom-level call to dump. Unfortunately, this depends on the type stability of the dump data structure, which makes it non-functional during driver teardown.
Switch to the mutex locking scheme where top levels use the mutex in the bound regions, while copyouts and drain for completion utilize condvars. The mutex lifetime is guaranteed to be strictly larger than the time interval where driver can initiate dump, and most of the control fields of the old struct mlx5_dump_data are directly embedded into struct mlx5_core_dev.
Submitted by: kib@ MFC after: 3 days Sponsored by: Mellanox Technologies
show more ...
|
#
a0a4fd77 |
| 08-May-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Flush command workqueue when command completion is triggered in mlx5core.
Avoid race for command completion when triggering a command completions event. Serialize operation by queueing all commands
Flush command workqueue when command completion is triggered in mlx5core.
Avoid race for command completion when triggering a command completions event. Serialize operation by queueing all commands on the same work queue. This can happen when healthcare triggers.
MFC after: 3 days Sponsored by: Mellanox Technologies
show more ...
|
#
4f227510 |
| 08-May-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Make command timeout way shorter in mlx5core.
The command timeout is terribly long, whole two hours. Make it 60s so if things do go wrong, the user gets feedback in relatively short time, so they ca
Make command timeout way shorter in mlx5core.
The command timeout is terribly long, whole two hours. Make it 60s so if things do go wrong, the user gets feedback in relatively short time, so they can take corrective actions and/or investigate using tools and such.
Linux commit: 6b6c07bdcdc97ccac2596063bfc32a5faddfe884
MFC after: 3 days Sponsored by: Mellanox Technologies
show more ...
|
#
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
|
#
adb6fd50 |
| 08-May-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Implement reading PCI power status in mlx5core.
Implement a watchdog as part of the healtcare subsystem which reads the PCI power status during startup and upon the PCI power status change event and
Implement reading PCI power status in mlx5core.
Implement a watchdog as part of the healtcare subsystem which reads the PCI power status during startup and upon the PCI power status change event and store it into the core device structure. This value is then exported to user-space via a read-only SYSCTL. A dmesg print has been added to inform the admin about the PCI power status.
MFC after: 3 days Sponsored by: Mellanox Technologies
show more ...
|
#
40218d73 |
| 08-May-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Move workqueue from mlx5en(4) to mlx5core.
This avoids creating more workqueues in mlx5core to do simple firmware command polling tasks.
MFC after: 3 days Sponsored by: Mellanox Technologies
|
#
6d1dc652 |
| 08-May-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Remove unused speed enums in mlx5core.
Submitted by: slavash@ MFC after: 3 days Sponsored by: Mellanox Technologies
|
#
d5d52dd7 |
| 08-May-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Add MCC (Management Component Control) register definitions in mlx5core.
MCC (Management Component Control) allows to control a firmware component update.
MCDA (Management Component Data Access) al
Add MCC (Management Component Control) register definitions in mlx5core.
MCC (Management Component Control) allows to control a firmware component update.
MCDA (Management Component Data Access) allows to read and write a firmware component.
MCQI (Management Component Query Information) allows to query information about firmware components.
Linux commit: 4717628938423fcba0aa8fa889e9fed4eb6a655f
Submitted by: slavash@ MFC after: 3 days Sponsored by: Mellanox Technologies
show more ...
|
#
5a8145f6 |
| 08-May-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Query and cache PCAM, MCAM registers on initialization in mlx5core.
On load_one, we now cache our capabilities registers internally, similar to QUERY_HCA_CAP. Capabilities can later be queried using
Query and cache PCAM, MCAM registers on initialization in mlx5core.
On load_one, we now cache our capabilities registers internally, similar to QUERY_HCA_CAP. Capabilities can later be queried using macros introduced in this patch.
Linux commit: 71862561f3a62015a11de16d1c306481e8415c08
Submitted by: slavash@ MFC after: 3 days Sponsored by: Mellanox Technologies
show more ...
|
#
ae73b041 |
| 08-May-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Expose PCAM, MCAM registers infrastructure in mlx5core.
PCAM: Ports capabilities mask register. MCAM: Management capabilities mask register.
PCAM and MCAM registers will provide information regardi
Expose PCAM, MCAM registers infrastructure in mlx5core.
PCAM: Ports capabilities mask register. MCAM: Management capabilities mask register.
PCAM and MCAM registers will provide information regarding firmware support for different features, in order to avoid cases where new driver combined with old firmware results in syndromes (for ex. PCIe counters before this patchset).
Linux commit: cfdcbceaeffc669b70d904d80a2df9c86c232566
Submitted by: slavash@ MFC after: 3 days Sponsored by: Mellanox Technologies
show more ...
|
#
5169fb81 |
| 08-May-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Protect from infinite sw-reset loop in mlx5core.
Avoid an infinite software firmware reset loop that may be caused by a hardware bug by limiting the maximum number of resets. The counter between res
Protect from infinite sw-reset loop in mlx5core.
Avoid an infinite software firmware reset loop that may be caused by a hardware bug by limiting the maximum number of resets. The counter between resets is reset by request for reset, and not by a successful reset. The interval between two resets can be configured via sysctl: hw.mlx5.sw_reset_timeout which is global to all mlx5 devices in the system.
Submitted by: slavash@ MFC after: 3 days Sponsored by: Mellanox Technologies
show more ...
|
#
192fc18d |
| 08-May-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Disable all MSIX interrupts before shutdown in mlx5.
Make sure the interrupt handlers don't race with the fast unload one code in the shutdown handler.
MFC after: 3 days Sponsored by: Mellanox Tech
Disable all MSIX interrupts before shutdown in mlx5.
Make sure the interrupt handlers don't race with the fast unload one code in the shutdown handler.
MFC after: 3 days Sponsored by: Mellanox Technologies
show more ...
|
#
7646dc23 |
| 08-May-2019 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Correctly define the interface state bits in mlx5en(4).
While at it remove unused interface state bits. This also fixes and issue during shutdown:
There is an issue where the firmware fails during
Correctly define the interface state bits in mlx5en(4).
While at it remove unused interface state bits. This also fixes and issue during shutdown:
There is an issue where the firmware fails during mlx5_load_one, the health_care timer detects the issue and schedules a health_care call. Then the mlx5_load_one detects the issue, cleans up and quits. Then the health_care starts and calls mlx5_unload_one to clean up the resources that no longer exist and causes kernel panic.
The root cause is that the bit MLX5_INTERFACE_STATE_DOWN is not set after mlx5_load_one fails. The solution is removing the bit MLX5_INTERFACE_STATE_DOWN and quit mlx5_unload_one if the bit MLX5_INTERFACE_STATE_UP is not set. The bit MLX5_INTERFACE_STATE_DOWN is redundant and we can use MLX5_INTERFACE_STATE_UP instead.
Linux commit: 10a8d00707082955b177164d4b4e758ffcbd4017 b3cb5388499c5e219324bfe7da2e46cbad82bfcf
MFC after: 3 days Sponsored by: Mellanox Technologies
show more ...
|
#
67350cb5 |
| 09-Dec-2018 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r340918 through r341763.
|
Revision tags: release/12.0.0 |
|
#
085b35bb |
| 05-Dec-2018 |
Slava Shwartsman <slavash@FreeBSD.org> |
mlx5fpga: IOCTL for FPGA temperature measurement
Submitted by: kib@ Approved by: hselasky (mentor) MFC after: 1 week Sponsored by: Mellanox Technologies
|