Linux-libre 5.7.6-gnu
[librecmc/linux-libre.git] / Documentation / networking / devlink / ice.rst
1 .. SPDX-License-Identifier: GPL-2.0
2
3 ===================
4 ice devlink support
5 ===================
6
7 This document describes the devlink features implemented by the ``ice``
8 device driver.
9
10 Info versions
11 =============
12
13 The ``ice`` driver reports the following versions
14
15 .. list-table:: devlink info versions implemented
16     :widths: 5 5 5 90
17
18     * - Name
19       - Type
20       - Example
21       - Description
22     * - ``board.id``
23       - fixed
24       - K65390-000
25       - The Product Board Assembly (PBA) identifier of the board.
26     * - ``fw.mgmt``
27       - running
28       - 2.1.7
29       - 3-digit version number of the management firmware that controls the
30         PHY, link, etc.
31     * - ``fw.mgmt.api``
32       - running
33       - 1.5
34       - 2-digit version number of the API exported over the AdminQ by the
35         management firmware. Used by the driver to identify what commands
36         are supported.
37     * - ``fw.mgmt.build``
38       - running
39       - 0x305d955f
40       - Unique identifier of the source for the management firmware.
41     * - ``fw.undi``
42       - running
43       - 1.2581.0
44       - Version of the Option ROM containing the UEFI driver. The version is
45         reported in ``major.minor.patch`` format. The major version is
46         incremented whenever a major breaking change occurs, or when the
47         minor version would overflow. The minor version is incremented for
48         non-breaking changes and reset to 1 when the major version is
49         incremented. The patch version is normally 0 but is incremented when
50         a fix is delivered as a patch against an older base Option ROM.
51     * - ``fw.psid.api``
52       - running
53       - 0.80
54       - Version defining the format of the flash contents.
55     * - ``fw.bundle_id``
56       - running
57       - 0x80002ec0
58       - Unique identifier of the firmware image file that was loaded onto
59         the device. Also referred to as the EETRACK identifier of the NVM.
60     * - ``fw.app.name``
61       - running
62       - ICE OS Default Package
63       - The name of the DDP package that is active in the device. The DDP
64         package is loaded by the driver during initialization. Each
65         variation of the DDP package has a unique name.
66     * - ``fw.app``
67       - running
68       - 1.3.1.0
69       - The version of the DDP package that is active in the device. Note
70         that both the name (as reported by ``fw.app.name``) and version are
71         required to uniquely identify the package.
72
73 Regions
74 =======
75
76 The ``ice`` driver enables access to the contents of the Non Volatile Memory
77 flash chip via the ``nvm-flash`` region.
78
79 Users can request an immediate capture of a snapshot via the
80 ``DEVLINK_CMD_REGION_NEW``
81
82 .. code:: shell
83
84     $ devlink region new pci/0000:01:00.0/nvm-flash snapshot 1
85     $ devlink region dump pci/0000:01:00.0/nvm-flash snapshot 1
86
87     $ devlink region dump pci/0000:01:00.0/nvm-flash snapshot 1
88     0000000000000000 0014 95dc 0014 9514 0035 1670 0034 db30
89     0000000000000010 0000 0000 ffff ff04 0029 8c00 0028 8cc8
90     0000000000000020 0016 0bb8 0016 1720 0000 0000 c00f 3ffc
91     0000000000000030 bada cce5 bada cce5 bada cce5 bada cce5
92
93     $ devlink region read pci/0000:01:00.0/nvm-flash snapshot 1 address 0 length 16
94     0000000000000000 0014 95dc 0014 9514 0035 1670 0034 db30
95
96     $ devlink region delete pci/0000:01:00.0/nvm-flash snapshot 1