]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
MFC r291939:
authorhselasky <hselasky@FreeBSD.org>
Mon, 14 Dec 2015 10:31:03 +0000 (10:31 +0000)
committerhselasky <hselasky@FreeBSD.org>
Mon, 14 Dec 2015 10:31:03 +0000 (10:31 +0000)
commit66d5de95eebbd7cecb4fa29594f14b49ca41a6ed
tree693a3fe179236c20f1a81758c0b161f93f9e94ec
parenta6b5a9040ca6586bc44bd5d6e9ac197c252b69aa
MFC r291939:
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

Sponsored by: Mellanox Technologies
Differential Revision: https://reviews.freebsd.org/D4411
sys/dev/mlx5/device.h
sys/dev/mlx5/driver.h
sys/dev/mlx5/eswitch_vacl.h [new file with mode: 0644]
sys/dev/mlx5/mlx5_core/mlx5_eq.c
sys/dev/mlx5/mlx5_core/mlx5_eswitch_vacl.c [new file with mode: 0644]
sys/dev/mlx5/mlx5_core/mlx5_vport.c
sys/dev/mlx5/vport.h
sys/modules/mlx5/Makefile