1*2dfaaae5SJacob Keller.. SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*2dfaaae5SJacob Keller 3*2dfaaae5SJacob Keller============ 4*2dfaaae5SJacob KellerDevlink Info 5*2dfaaae5SJacob Keller============ 6*2dfaaae5SJacob Keller 7*2dfaaae5SJacob KellerThe ``devlink-info`` mechanism enables device drivers to report device 8*2dfaaae5SJacob Kellerinformation in a generic fashion. It is extensible, and enables exporting 9*2dfaaae5SJacob Kellereven device or driver specific information. 10*2dfaaae5SJacob Keller 11*2dfaaae5SJacob Kellerdevlink supports representing the following types of versions 12*2dfaaae5SJacob Keller 13*2dfaaae5SJacob Keller.. list-table:: List of version types 14*2dfaaae5SJacob Keller :widths: 5 95 15*2dfaaae5SJacob Keller 16*2dfaaae5SJacob Keller * - Type 17*2dfaaae5SJacob Keller - Description 18*2dfaaae5SJacob Keller * - ``fixed`` 19*2dfaaae5SJacob Keller - Represents fixed versions, which cannot change. For example, 20*2dfaaae5SJacob Keller component identifiers or the board version reported in the PCI VPD. 21*2dfaaae5SJacob Keller * - ``running`` 22*2dfaaae5SJacob Keller - Represents the version of the currently running component. For 23*2dfaaae5SJacob Keller example the running version of firmware. These versions generally 24*2dfaaae5SJacob Keller only update after a reboot. 25*2dfaaae5SJacob Keller * - ``stored`` 26*2dfaaae5SJacob Keller - Represents the version of a component as stored, such as after a 27*2dfaaae5SJacob Keller flash update. Stored values should update to reflect changes in the 28*2dfaaae5SJacob Keller flash even if a reboot has not yet occurred. 29*2dfaaae5SJacob Keller 30*2dfaaae5SJacob KellerGeneric Versions 31*2dfaaae5SJacob Keller================ 32*2dfaaae5SJacob Keller 33*2dfaaae5SJacob KellerIt is expected that drivers use the following generic names for exporting 34*2dfaaae5SJacob Kellerversion information. Other information may be exposed using driver-specific 35*2dfaaae5SJacob Kellernames, but these should be documented in the driver-specific file. 36*2dfaaae5SJacob Keller 37*2dfaaae5SJacob Kellerboard.id 38*2dfaaae5SJacob Keller-------- 39*2dfaaae5SJacob Keller 40*2dfaaae5SJacob KellerUnique identifier of the board design. 41*2dfaaae5SJacob Keller 42*2dfaaae5SJacob Kellerboard.rev 43*2dfaaae5SJacob Keller--------- 44*2dfaaae5SJacob Keller 45*2dfaaae5SJacob KellerBoard design revision. 46*2dfaaae5SJacob Keller 47*2dfaaae5SJacob Kellerasic.id 48*2dfaaae5SJacob Keller------- 49*2dfaaae5SJacob Keller 50*2dfaaae5SJacob KellerASIC design identifier. 51*2dfaaae5SJacob Keller 52*2dfaaae5SJacob Kellerasic.rev 53*2dfaaae5SJacob Keller-------- 54*2dfaaae5SJacob Keller 55*2dfaaae5SJacob KellerASIC design revision. 56*2dfaaae5SJacob Keller 57*2dfaaae5SJacob Kellerboard.manufacture 58*2dfaaae5SJacob Keller----------------- 59*2dfaaae5SJacob Keller 60*2dfaaae5SJacob KellerAn identifier of the company or the facility which produced the part. 61*2dfaaae5SJacob Keller 62*2dfaaae5SJacob Kellerfw 63*2dfaaae5SJacob Keller-- 64*2dfaaae5SJacob Keller 65*2dfaaae5SJacob KellerOverall firmware version, often representing the collection of 66*2dfaaae5SJacob Kellerfw.mgmt, fw.app, etc. 67*2dfaaae5SJacob Keller 68*2dfaaae5SJacob Kellerfw.mgmt 69*2dfaaae5SJacob Keller------- 70*2dfaaae5SJacob Keller 71*2dfaaae5SJacob KellerControl unit firmware version. This firmware is responsible for house 72*2dfaaae5SJacob Kellerkeeping tasks, PHY control etc. but not the packet-by-packet data path 73*2dfaaae5SJacob Kelleroperation. 74*2dfaaae5SJacob Keller 75*2dfaaae5SJacob Kellerfw.app 76*2dfaaae5SJacob Keller------ 77*2dfaaae5SJacob Keller 78*2dfaaae5SJacob KellerData path microcode controlling high-speed packet processing. 79*2dfaaae5SJacob Keller 80*2dfaaae5SJacob Kellerfw.undi 81*2dfaaae5SJacob Keller------- 82*2dfaaae5SJacob Keller 83*2dfaaae5SJacob KellerUNDI software, may include the UEFI driver, firmware or both. 84*2dfaaae5SJacob Keller 85*2dfaaae5SJacob Kellerfw.ncsi 86*2dfaaae5SJacob Keller------- 87*2dfaaae5SJacob Keller 88*2dfaaae5SJacob KellerVersion of the software responsible for supporting/handling the 89*2dfaaae5SJacob KellerNetwork Controller Sideband Interface. 90*2dfaaae5SJacob Keller 91*2dfaaae5SJacob Kellerfw.psid 92*2dfaaae5SJacob Keller------- 93*2dfaaae5SJacob Keller 94*2dfaaae5SJacob KellerUnique identifier of the firmware parameter set. 95