Linux 6.7-rc7
[linux-modified.git] / Documentation / ABI / testing / sysfs-driver-intel_sdsi
1 What:           /sys/bus/auxiliary/devices/intel_vsec.sdsi.X
2 Date:           Feb 2022
3 KernelVersion:  5.18
4 Contact:        "David E. Box" <david.e.box@linux.intel.com>
5 Description:
6                 This directory contains interface files for accessing Intel
7                 On Demand (formerly Software Defined Silicon or SDSi) features
8                 on a CPU. X represents the socket instance (though not the
9                 socket ID). The socket ID is determined by reading the
10                 registers file and decoding it per the specification.
11
12                 Some files communicate with On Demand hardware through a
13                 mailbox. Should the operation fail, one of the following error
14                 codes may be returned:
15
16                 ==========      =====
17                 Error Code      Cause
18                 ==========      =====
19                 EIO             General mailbox failure. Log may indicate cause.
20                 EBUSY           Mailbox is owned by another agent.
21                 EPERM           On Demand capability is not enabled in hardware.
22                 EPROTO          Failure in mailbox protocol detected by driver.
23                                 See log for details.
24                 EOVERFLOW       For provision commands, the size of the data
25                                 exceeds what may be written.
26                 ESPIPE          Seeking is not allowed.
27                 ETIMEDOUT       Failure to complete mailbox transaction in time.
28                 ==========      =====
29
30 What:           /sys/bus/auxiliary/devices/intel_vsec.sdsi.X/guid
31 Date:           Feb 2022
32 KernelVersion:  5.18
33 Contact:        "David E. Box" <david.e.box@linux.intel.com>
34 Description:
35                 (RO) The GUID for the registers file. The GUID identifies
36                 the layout of the registers file in this directory.
37                 Information about the register layouts for a particular GUID
38                 is available at http://github.com/intel/intel-sdsi
39
40 What:           /sys/bus/auxiliary/devices/intel_vsec.sdsi.X/registers
41 Date:           Feb 2022
42 KernelVersion:  5.18
43 Contact:        "David E. Box" <david.e.box@linux.intel.com>
44 Description:
45                 (RO) Contains information needed by applications to provision
46                 a CPU and monitor status information. The layout of this file
47                 is determined by the GUID in this directory. Information about
48                 the layout for a particular GUID is available at
49                 http://github.com/intel/intel-sdsi
50
51 What:           /sys/bus/auxiliary/devices/intel_vsec.sdsi.X/provision_akc
52 Date:           Feb 2022
53 KernelVersion:  5.18
54 Contact:        "David E. Box" <david.e.box@linux.intel.com>
55 Description:
56                 (WO) Used to write an Authentication Key Certificate (AKC) to
57                 the On Demand NVRAM for the CPU. The AKC is used to authenticate
58                 a Capability Activation Payload. Mailbox command.
59
60 What:           /sys/bus/auxiliary/devices/intel_vsec.sdsi.X/provision_cap
61 Date:           Feb 2022
62 KernelVersion:  5.18
63 Contact:        "David E. Box" <david.e.box@linux.intel.com>
64 Description:
65                 (WO) Used to write a Capability Activation Payload (CAP) to the
66                 On Demand NVRAM for the CPU. CAPs are used to activate a given
67                 CPU feature. A CAP is validated by On Demand hardware using a
68                 previously provisioned AKC file. Upon successful authentication,
69                 the CPU configuration is updated. A cold reboot is required to
70                 fully activate the feature. Mailbox command.
71
72 What:           /sys/bus/auxiliary/devices/intel_vsec.sdsi.X/meter_certificate
73 Date:           Nov 2022
74 KernelVersion:  6.2
75 Contact:        "David E. Box" <david.e.box@linux.intel.com>
76 Description:
77                 (RO) Used to read back the current meter certificate for the CPU
78                 from Intel On Demand hardware. The meter certificate contains
79                 utilization metrics of On Demand enabled features. Mailbox
80                 command.
81
82 What:           /sys/bus/auxiliary/devices/intel_vsec.sdsi.X/state_certificate
83 Date:           Feb 2022
84 KernelVersion:  5.18
85 Contact:        "David E. Box" <david.e.box@linux.intel.com>
86 Description:
87                 (RO) Used to read back the current state certificate for the CPU
88                 from On Demand hardware. The state certificate contains
89                 information about the current licenses on the CPU. Mailbox
90                 command.