xref: /OK3568_Linux_fs/kernel/Documentation/networking/devlink/mlx4.rst (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun.. SPDX-License-Identifier: GPL-2.0
2*4882a593Smuzhiyun
3*4882a593Smuzhiyun====================
4*4882a593Smuzhiyunmlx4 devlink support
5*4882a593Smuzhiyun====================
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunThis document describes the devlink features implemented by the ``mlx4``
8*4882a593Smuzhiyundevice driver.
9*4882a593Smuzhiyun
10*4882a593SmuzhiyunParameters
11*4882a593Smuzhiyun==========
12*4882a593Smuzhiyun
13*4882a593Smuzhiyun.. list-table:: Generic parameters implemented
14*4882a593Smuzhiyun
15*4882a593Smuzhiyun   * - Name
16*4882a593Smuzhiyun     - Mode
17*4882a593Smuzhiyun   * - ``internal_err_reset``
18*4882a593Smuzhiyun     - driverinit, runtime
19*4882a593Smuzhiyun   * - ``max_macs``
20*4882a593Smuzhiyun     - driverinit
21*4882a593Smuzhiyun   * - ``region_snapshot_enable``
22*4882a593Smuzhiyun     - driverinit, runtime
23*4882a593Smuzhiyun
24*4882a593SmuzhiyunThe ``mlx4`` driver also implements the following driver-specific
25*4882a593Smuzhiyunparameters.
26*4882a593Smuzhiyun
27*4882a593Smuzhiyun.. list-table:: Driver-specific parameters implemented
28*4882a593Smuzhiyun   :widths: 5 5 5 85
29*4882a593Smuzhiyun
30*4882a593Smuzhiyun   * - Name
31*4882a593Smuzhiyun     - Type
32*4882a593Smuzhiyun     - Mode
33*4882a593Smuzhiyun     - Description
34*4882a593Smuzhiyun   * - ``enable_64b_cqe_eqe``
35*4882a593Smuzhiyun     - Boolean
36*4882a593Smuzhiyun     - driverinit
37*4882a593Smuzhiyun     - Enable 64 byte CQEs/EQEs, if the FW supports it.
38*4882a593Smuzhiyun   * - ``enable_4k_uar``
39*4882a593Smuzhiyun     - Boolean
40*4882a593Smuzhiyun     - driverinit
41*4882a593Smuzhiyun     - Enable using the 4k UAR.
42*4882a593Smuzhiyun
43*4882a593SmuzhiyunThe ``mlx4`` driver supports reloading via ``DEVLINK_CMD_RELOAD``
44*4882a593Smuzhiyun
45*4882a593SmuzhiyunRegions
46*4882a593Smuzhiyun=======
47*4882a593Smuzhiyun
48*4882a593SmuzhiyunThe ``mlx4`` driver supports dumping the firmware PCI crspace and health
49*4882a593Smuzhiyunbuffer during a critical firmware issue.
50*4882a593Smuzhiyun
51*4882a593SmuzhiyunIn case a firmware command times out, firmware getting stuck, or a non zero
52*4882a593Smuzhiyunvalue on the catastrophic buffer, a snapshot will be taken by the driver.
53*4882a593Smuzhiyun
54*4882a593SmuzhiyunThe ``cr-space`` region will contain the firmware PCI crspace contents. The
55*4882a593Smuzhiyun``fw-health`` region will contain the device firmware's health buffer.
56*4882a593SmuzhiyunSnapshots for both of these regions are taken on the same event triggers.
57