#
341972 |
|
12-Dec-2018 |
hselasky |
MFC r341579: mlx5en: Fix for inlining issues in transmit path
1) Don't exceed the drivers own hardcoded TX inline limit.
The blueflame register size can be much greater than the hardcoded limit for inlining. Make sure we don't exceed the drivers own limit, because this also means that the maximum number of TX fragments becomes invalid and then memory size assumptions in the TX path no longer hold up.
2) Make sure the mlx5_query_min_inline() function returns an error code.
3) Header inlining is required when using TSO.
4) Catch failure to compute inline header size for TSO.
5) Add support for UDP when computing inline header size.
6) Fix for inlining issues with regards to DSCP.
Make sure we inline 4 bytes beyond the ethernet and/or VLAN header to workaround a hardware bug extracting the DSCP field from the IPv4/v6 header.
Sponsored by: Mellanox Technologies
|
#
341926 |
|
12-Dec-2018 |
hselasky |
MFC r341556: mlx5: Fix for potential memory leaks.
Make sure allocated data gets freed in error cases.
Sponsored by: Mellanox Technologies
|
#
337114 |
|
02-Aug-2018 |
hselasky |
MFC r336450: Do not inline transmit headers and use HW VLAN tagging if supported by mlx5en(4).
Query the minimal inline mode supported by the card. When creating a send queue, cache the queried mode and optimize the transmit if no inlining is required. In this case, we can avoid touching the headers cache line and avoid dirtying several more lines by copying headers into the send WQEs. Also, if no inline headers are used, hardware assists in the VLAN tag framing.
Submitted by: kib@, slavash@ Sponsored by: Mellanox Technologies
|
#
331807 |
|
30-Mar-2018 |
hselasky |
MFC r330647: 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> Sponsored by: Mellanox Technologies
|
#
329203 |
|
13-Feb-2018 |
hselasky |
MFC r325657: Add API function to query port performance counters for infiniband and RoCE traffic in mlx5 core.
Sponsored by: Mellanox Technologies
|
#
329202 |
|
13-Feb-2018 |
hselasky |
MFC r325656: Add API functions to query and modify local loopback of multicast and unicast traffic in mlx5 core.
Sponsored by: Mellanox Technologies
|
#
329201 |
|
13-Feb-2018 |
hselasky |
MFC r325655: Add API function to query virtual port counters in mlx5 core.
Sponsored by: Mellanox Technologies
|
#
306233 |
|
23-Sep-2016 |
hselasky |
MFC r305867: 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
|
#
302408 |
|
07-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
302139 |
|
23-Jun-2016 |
hselasky |
Use correct Q-counter output array.
Sponsored by: Mellanox Technologies Approved by: re (kib) MFC after: 3 days
|
#
301545 |
|
07-Jun-2016 |
hselasky |
Add SR-IOV guest support to the mlx5en driver.
This patch adds the missing pieces needed for device setup using the mlx5en driver inside a virtual machine which is providing hardware access through SR-IOV.
Sponsored by: Mellanox Technologies MFC after: 1 week
|
#
291939 |
|
07-Dec-2015 |
hselasky |
Update the mlx5 shared driver code to the latest version, which include the following list of changes:
- Added eswitch ACL table management Introduce API for managing ACL table. This API include the following features: 1) vlan filter - for VST/VGT+ support. 2) spoofcheck. 3) robust functionality to allow/drop general untagged/tagged traffic. 4) support for both ingress and egress ACL types.
- Added loopback filter to the vacl table.
- Added multicast list set in the vPort context
- Added promiscuous mode set in the vPort context
- Set the vlan list in vPort context 1) Check caps if VLAN list is not longer than FW supports 2) Set MODIFY_NIC_VPORT_CONTEXT command
- Changed MLX5_EEPROM_MAX_BYTES from 48 to 32 so that a single EEPROM reading cannot cross the 128-byte boundary. Previously reading the MCIA register was done in batches of 48 bytes. The third reading would then by-pass the 127th byte, which means that part of the low page and part of the high page would be read at the same time, which created a bug: 1st: 0-47 bytes 2nd: 48-95 bytes 3rd: 96-143 bytes
MFC after: 1 week Sponsored by: Mellanox Technologies Differential Revision: https://reviews.freebsd.org/D4411
|
#
290650 |
|
10-Nov-2015 |
hselasky |
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
|