xref: /linux/Documentation/ABI/testing/sysfs-driver-intel_sdsi (revision 7ae9fb1b7ecbb5d85d07857943f677fd1a559b18)
12546c600SDavid E. BoxWhat:		/sys/bus/auxiliary/devices/intel_vsec.sdsi.X
22546c600SDavid E. BoxDate:		Feb 2022
32546c600SDavid E. BoxKernelVersion:	5.18
42546c600SDavid E. BoxContact:	"David E. Box" <david.e.box@linux.intel.com>
52546c600SDavid E. BoxDescription:
62546c600SDavid E. Box		This directory contains interface files for accessing Intel
74ea62915SDavid E. Box		On Demand (formerly Software Defined Silicon or SDSi) features
84ea62915SDavid E. Box		on a CPU. X represents the socket instance (though not the
94ea62915SDavid E. Box		socket ID). The socket ID is determined by reading the
104ea62915SDavid E. Box		registers file and decoding it per the specification.
112546c600SDavid E. Box
124ea62915SDavid E. Box		Some files communicate with On Demand hardware through a
134ea62915SDavid E. Box		mailbox. Should the operation fail, one of the following error
144ea62915SDavid E. Box		codes may be returned:
152546c600SDavid E. Box
16c5547574SHans de Goede		==========	=====
172546c600SDavid E. Box		Error Code	Cause
18c5547574SHans de Goede		==========	=====
192546c600SDavid E. Box		EIO		General mailbox failure. Log may indicate cause.
202546c600SDavid E. Box		EBUSY		Mailbox is owned by another agent.
214ea62915SDavid E. Box		EPERM		On Demand capability is not enabled in hardware.
222546c600SDavid E. Box		EPROTO		Failure in mailbox protocol detected by driver.
232546c600SDavid E. Box				See log for details.
242546c600SDavid E. Box		EOVERFLOW	For provision commands, the size of the data
252546c600SDavid E. Box				exceeds what may be written.
262546c600SDavid E. Box		ESPIPE		Seeking is not allowed.
272546c600SDavid E. Box		ETIMEDOUT	Failure to complete mailbox transaction in time.
28c5547574SHans de Goede		==========	=====
292546c600SDavid E. Box
302546c600SDavid E. BoxWhat:		/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/guid
312546c600SDavid E. BoxDate:		Feb 2022
322546c600SDavid E. BoxKernelVersion:	5.18
332546c600SDavid E. BoxContact:	"David E. Box" <david.e.box@linux.intel.com>
342546c600SDavid E. BoxDescription:
352546c600SDavid E. Box		(RO) The GUID for the registers file. The GUID identifies
362546c600SDavid E. Box		the layout of the registers file in this directory.
372546c600SDavid E. Box		Information about the register layouts for a particular GUID
382546c600SDavid E. Box		is available at http://github.com/intel/intel-sdsi
392546c600SDavid E. Box
402546c600SDavid E. BoxWhat:		/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/registers
412546c600SDavid E. BoxDate:		Feb 2022
422546c600SDavid E. BoxKernelVersion:	5.18
432546c600SDavid E. BoxContact:	"David E. Box" <david.e.box@linux.intel.com>
442546c600SDavid E. BoxDescription:
452546c600SDavid E. Box		(RO) Contains information needed by applications to provision
462546c600SDavid E. Box		a CPU and monitor status information. The layout of this file
472546c600SDavid E. Box		is determined by the GUID in this directory. Information about
482546c600SDavid E. Box		the layout for a particular GUID is available at
492546c600SDavid E. Box		http://github.com/intel/intel-sdsi
502546c600SDavid E. Box
512546c600SDavid E. BoxWhat:		/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/provision_akc
522546c600SDavid E. BoxDate:		Feb 2022
532546c600SDavid E. BoxKernelVersion:	5.18
542546c600SDavid E. BoxContact:	"David E. Box" <david.e.box@linux.intel.com>
552546c600SDavid E. BoxDescription:
562546c600SDavid E. Box		(WO) Used to write an Authentication Key Certificate (AKC) to
574ea62915SDavid E. Box		the On Demand NVRAM for the CPU. The AKC is used to authenticate
584ea62915SDavid E. Box		a Capability Activation Payload. Mailbox command.
592546c600SDavid E. Box
602546c600SDavid E. BoxWhat:		/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/provision_cap
612546c600SDavid E. BoxDate:		Feb 2022
622546c600SDavid E. BoxKernelVersion:	5.18
632546c600SDavid E. BoxContact:	"David E. Box" <david.e.box@linux.intel.com>
642546c600SDavid E. BoxDescription:
652546c600SDavid E. Box		(WO) Used to write a Capability Activation Payload (CAP) to the
664ea62915SDavid E. Box		On Demand NVRAM for the CPU. CAPs are used to activate a given
674ea62915SDavid E. Box		CPU feature. A CAP is validated by On Demand hardware using a
684ea62915SDavid E. Box		previously provisioned AKC file. Upon successful authentication,
694ea62915SDavid E. Box		the CPU configuration is updated. A cold reboot is required to
704ea62915SDavid E. Box		fully activate the feature. Mailbox command.
712546c600SDavid E. Box
72*a96f1b9cSDavid E. BoxWhat:		/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/meter_certificate
73*a96f1b9cSDavid E. BoxDate:		Nov 2022
74*a96f1b9cSDavid E. BoxKernelVersion:	6.2
75*a96f1b9cSDavid E. BoxContact:	"David E. Box" <david.e.box@linux.intel.com>
76*a96f1b9cSDavid E. BoxDescription:
77*a96f1b9cSDavid E. Box		(RO) Used to read back the current meter certificate for the CPU
78*a96f1b9cSDavid E. Box		from Intel On Demand hardware. The meter certificate contains
79*a96f1b9cSDavid E. Box		utilization metrics of On Demand enabled features. Mailbox
80*a96f1b9cSDavid E. Box		command.
81*a96f1b9cSDavid E. Box
822546c600SDavid E. BoxWhat:		/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/state_certificate
832546c600SDavid E. BoxDate:		Feb 2022
842546c600SDavid E. BoxKernelVersion:	5.18
852546c600SDavid E. BoxContact:	"David E. Box" <david.e.box@linux.intel.com>
862546c600SDavid E. BoxDescription:
874ea62915SDavid E. Box		(RO) Used to read back the current state certificate for the CPU
884ea62915SDavid E. Box		from On Demand hardware. The state certificate contains
894ea62915SDavid E. Box		information about the current licenses on the CPU. Mailbox
904ea62915SDavid E. Box		command.
91