History log of /freebsd/sys/dev/mlx5/mlx5_core/mlx5_eq.c (Results 1 – 25 of 47)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 253a1fa1 31-Oct-2024 Ariel Ehrenberg <aehrenberg@nvidia.com>

mlx5: Fix handling of port_module_event

Remove the array of port module status and instead save module status
and module number.

At boot, for each PCI function driver get event from fw about module

mlx5: Fix handling of port_module_event

Remove the array of port module status and instead save module status
and module number.

At boot, for each PCI function driver get event from fw about module
status. The event contains module number and module status. Driver
stores module number and module status.. When user (ifconfig) ask for
modules information, for each pci function driver first queries fw to
get module number of current pci function, then driver compares the
module number to the module number it stored before and if it matches
and module status is "plugged and enabled" then driver queries fw for
the eprom information of that module number and return it to the
caller.

In fact fw could have concluded that required module number of the
current pci function, but fw is not implemented this way. current
design of PRM/FW is that MCIA register handling is only aware of
modules, not the pci function->module connections. FW is designed to
take the module number written to MCIA and write/read the content
to/from the associated module's EPROM.

So, based on current FW design, we must supply the module num so fw
can find the corresponding I2C interface of the module to write/read.

Sponsored by: NVidia networking
MFC after: 1 week

show more ...


Revision tags: release/13.4.0
# e23731db 22-Jul-2024 Konstantin Belousov <kib@FreeBSD.org>

mlx5en: add IPSEC_OFFLOAD support

Right now, only IPv4 transport mode, with aes-gcm ESP, is supported.
Driver also cooperates with NAT-T, and obeys socket policies, which
makes IKEd like StrongSwan

mlx5en: add IPSEC_OFFLOAD support

Right now, only IPv4 transport mode, with aes-gcm ESP, is supported.
Driver also cooperates with NAT-T, and obeys socket policies, which
makes IKEd like StrongSwan working.

Sponsored by: NVIDIA networking

show more ...


Revision tags: release/14.1.0, release/13.3.0, release/14.0.0
# 95ee2897 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

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

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


Revision tags: release/13.2.0, release/12.4.0, release/13.1.0
# 834533b9 09-Apr-2022 John Baldwin <jhb@FreeBSD.org>

mlx5: Remove unused variables.

Reviewed by: hselasky
Differential Revision: https://reviews.freebsd.org/D34827


# 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


Revision tags: release/12.3.0
# 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


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

ibcore: Kernel space update based on Linux 5.7-rc1.

Overview:

This is the first stage of a RDMA stack upgrade introducing kernel
changes only based on Linux 5.7-rc1.

This patch is based on about f

ibcore: Kernel space update based on Linux 5.7-rc1.

Overview:

This is the first stage of a RDMA stack upgrade introducing kernel
changes only based on Linux 5.7-rc1.

This patch is based on about four main areas of work:
- Update of the IB uobjects system:
- The memory holding so-called AH, CQ, PD, SRQ and UCONTEXT objects
is now managed by ibcore. This also require some changes in the
kernel verbs API. The updated verbs changes are typically about
initialize and deinitialize objects, and remove allocation and
free of memory.

- Update of the uverbs IOCTL framework:
- The parsing and handling of user-space commands has been
completely refactored to integrate with the updated IB uobjects
system.

- Various changes and updates to the generic uverbs interfaces in
device drivers including the new uAPI surface.

- The mlx5_ib_devx.c in mlx5ib and related mlx5 core changes.

Dependencies:

- The mlx4ib driver code has been updated with the minimum changes
needed.

- The mlx5ib driver code has been updated with the minimum changes
needed including DV support.

Compatibility:

- All user-space facing APIs are backwards compatible after this
change.

- All kernel-space facing RDMA APIs are backwards compatible after
this change, with exception of ib_create_ah() and ib_destroy_ah()
which takes a new flag.

- The "ib_device_ops" structure exist, but only contains the driver ID
and some structure sizes.

Differences from Linux:

- Infiniband drivers must use the INIT_IB_DEVICE_OPS() macro to set
the sizes needed for allocating various IB objects, when adding
IB device instances.

Security:

- PRIV_NET_RAW is needed to use raw ethernet transmit features.
- PRIV_DRIVER is needed to use other privileged operations.

Based on upstream Linux, Torvalds (5.7-rc1):
8632e9b5645bbc2331d21d892b0d6961c1a08429

MFC after: 1 week
Reviewed by: kib
Differential Revision: https://reviews.freebsd.org/D31149
Sponsored by: NVIDIA Networking

show more ...


Revision tags: release/13.0.0
# f8f5b459 08-Jan-2021 Hans Petter Selasky <hselasky@FreeBSD.org>

Update user access region, UAR, APIs in the core in mlx5core.

This change include several changes as listed below all related to UAR.
UAR is a special PCI memory area where the so-called doorbell re

Update user access region, UAR, APIs in the core in mlx5core.

This change include several changes as listed below all related to UAR.
UAR is a special PCI memory area where the so-called doorbell register and
blue flame register live. Blue flame is a feature for sending small packets
more efficiently via a PCI memory page, instead of using PCI DMA.

- All structures and functions named xxx_uuars were renamed into xxx_bfreg.
- Remove partially implemented Blueflame support from mlx5en(4) and mlx5ib.
- Implement blue flame register allocator.
- Use blue flame register allocator in mlx5ib.
- A common UAR page is now allocated by the core to support doorbell register
writes for all of mlx5en and mlx5ib, instead of allocating one UAR per
sendqueue.
- Add support for DEVX query UAR.
- Add support for 4K UAR for libmlx5.

Linux commits:
7c043e908a74ae0a935037cdd984d0cb89b2b970
2f5ff26478adaff5ed9b7ad4079d6a710b5f27e7
0b80c14f009758cefeed0edff4f9141957964211
30aa60b3bd12bd79b5324b7b595bd3446ab24b52
5fe9dec0d045437e48f112b8fa705197bd7bc3c0
0118717583cda6f4f36092853ad0345e8150b286
a6d51b68611e98f05042ada662aed5dbe3279c1e

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

show more ...


# f34f0a65 16-Nov-2020 Hans Petter Selasky <hselasky@FreeBSD.org>

Report EQE data upon CQ completion in mlx5core.

Report EQE data upon CQ completion to let upper layers use this data.

Linux commit:
4e0e2ea1886afe8c001971ff767f6670312a9b04

MFC after: 1 week
Spons

Report EQE data upon CQ completion in mlx5core.

Report EQE data upon CQ completion to let upper layers use this data.

Linux commit:
4e0e2ea1886afe8c001971ff767f6670312a9b04

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

show more ...


Revision tags: release/12.2.0
# 92d8df2f 02-Jul-2020 Konstantin Belousov <kib@FreeBSD.org>

mlx5_core: remove unneccessary LFENCE instruction.

Use fence instead of barrier, which is optimized to take advantage of
the x86 TSO memory model.

Reviewed by: hselasky
Sponsored by: Mellanox Techn

mlx5_core: remove unneccessary LFENCE instruction.

Use fence instead of barrier, which is optimized to take advantage of
the x86 TSO memory model.

Reviewed by: hselasky
Sponsored by: Mellanox Technologies
MFC after: 1 week

show more ...


Revision tags: release/11.4.0
# d0a40683 20-May-2020 Konstantin Belousov <kib@FreeBSD.org>

mlx5_core: add more port module event types to decode.

Reviewed by: hselasky
Sponsored by: Mellanox Technologies
MFC after: 3 days


# 6418350c 20-May-2020 Konstantin Belousov <kib@FreeBSD.org>

mlx5_core: add "PMD type not enabled" port module event type.

Reviewed by: hselasky
Sponsored by: Mellanox Technologies
MFC after: 3 days


# bbcb656a 18-Mar-2020 Konstantin Belousov <kib@FreeBSD.org>

mlx5: Route NIC_VPORT_CHANGE events to eswitch code.

Reviewed by: hselasky
Sponsored by: Mellanox Technologies
MFC after: 2 weeks


# 44e86fbd 13-Feb-2020 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r357662 through r357854.


# f14d8498 12-Feb-2020 Hans Petter Selasky <hselasky@FreeBSD.org>

Add support for disabling and polling MSIX interrupts in mlx5core.

MFC after: 1 week
Sponsored by: Mellanox Technologies


Revision tags: release/12.1.0
# 8b3bc70a 08-Oct-2019 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r352764 through r353315.


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

Print numeric error_type and module_status in mlx5core
in case the strings are not available.

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


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

Add missing blank line at the end of the print in mlx5core.

Submitted by: slavash@
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


Revision tags: release/11.3.0
# 7648bc9f 13-May-2019 Alan Somers <asomers@FreeBSD.org>

MFHead @347527

Sponsored by: The FreeBSD Foundation


# 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 ...


# 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 ...


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

Add temperature warning event to log in mlx5core.

Temperature warning event is sent by FW to indicate high temperature
as detected by one of the sensors on the board.
Add handling of this event by w

Add temperature warning event to log in mlx5core.

Temperature warning event is sent by FW to indicate high temperature
as detected by one of the sensors on the board.
Add handling of this event by writing the numbers of the alert sensors
to the kernel log.

Linux commit:
1865ea9adbfaf341c5cd5d8f7d384f19948b2fe9

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

show more ...


12