162306a36Sopenharmony_ciWhat:		/sys/bus/auxiliary/devices/intel_vsec.sdsi.X
262306a36Sopenharmony_ciDate:		Feb 2022
362306a36Sopenharmony_ciKernelVersion:	5.18
462306a36Sopenharmony_ciContact:	"David E. Box" <david.e.box@linux.intel.com>
562306a36Sopenharmony_ciDescription:
662306a36Sopenharmony_ci		This directory contains interface files for accessing Intel
762306a36Sopenharmony_ci		On Demand (formerly Software Defined Silicon or SDSi) features
862306a36Sopenharmony_ci		on a CPU. X represents the socket instance (though not the
962306a36Sopenharmony_ci		socket ID). The socket ID is determined by reading the
1062306a36Sopenharmony_ci		registers file and decoding it per the specification.
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_ci		Some files communicate with On Demand hardware through a
1362306a36Sopenharmony_ci		mailbox. Should the operation fail, one of the following error
1462306a36Sopenharmony_ci		codes may be returned:
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ci		==========	=====
1762306a36Sopenharmony_ci		Error Code	Cause
1862306a36Sopenharmony_ci		==========	=====
1962306a36Sopenharmony_ci		EIO		General mailbox failure. Log may indicate cause.
2062306a36Sopenharmony_ci		EBUSY		Mailbox is owned by another agent.
2162306a36Sopenharmony_ci		EPERM		On Demand capability is not enabled in hardware.
2262306a36Sopenharmony_ci		EPROTO		Failure in mailbox protocol detected by driver.
2362306a36Sopenharmony_ci				See log for details.
2462306a36Sopenharmony_ci		EOVERFLOW	For provision commands, the size of the data
2562306a36Sopenharmony_ci				exceeds what may be written.
2662306a36Sopenharmony_ci		ESPIPE		Seeking is not allowed.
2762306a36Sopenharmony_ci		ETIMEDOUT	Failure to complete mailbox transaction in time.
2862306a36Sopenharmony_ci		==========	=====
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ciWhat:		/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/guid
3162306a36Sopenharmony_ciDate:		Feb 2022
3262306a36Sopenharmony_ciKernelVersion:	5.18
3362306a36Sopenharmony_ciContact:	"David E. Box" <david.e.box@linux.intel.com>
3462306a36Sopenharmony_ciDescription:
3562306a36Sopenharmony_ci		(RO) The GUID for the registers file. The GUID identifies
3662306a36Sopenharmony_ci		the layout of the registers file in this directory.
3762306a36Sopenharmony_ci		Information about the register layouts for a particular GUID
3862306a36Sopenharmony_ci		is available at http://github.com/intel/intel-sdsi
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_ciWhat:		/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/registers
4162306a36Sopenharmony_ciDate:		Feb 2022
4262306a36Sopenharmony_ciKernelVersion:	5.18
4362306a36Sopenharmony_ciContact:	"David E. Box" <david.e.box@linux.intel.com>
4462306a36Sopenharmony_ciDescription:
4562306a36Sopenharmony_ci		(RO) Contains information needed by applications to provision
4662306a36Sopenharmony_ci		a CPU and monitor status information. The layout of this file
4762306a36Sopenharmony_ci		is determined by the GUID in this directory. Information about
4862306a36Sopenharmony_ci		the layout for a particular GUID is available at
4962306a36Sopenharmony_ci		http://github.com/intel/intel-sdsi
5062306a36Sopenharmony_ci
5162306a36Sopenharmony_ciWhat:		/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/provision_akc
5262306a36Sopenharmony_ciDate:		Feb 2022
5362306a36Sopenharmony_ciKernelVersion:	5.18
5462306a36Sopenharmony_ciContact:	"David E. Box" <david.e.box@linux.intel.com>
5562306a36Sopenharmony_ciDescription:
5662306a36Sopenharmony_ci		(WO) Used to write an Authentication Key Certificate (AKC) to
5762306a36Sopenharmony_ci		the On Demand NVRAM for the CPU. The AKC is used to authenticate
5862306a36Sopenharmony_ci		a Capability Activation Payload. Mailbox command.
5962306a36Sopenharmony_ci
6062306a36Sopenharmony_ciWhat:		/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/provision_cap
6162306a36Sopenharmony_ciDate:		Feb 2022
6262306a36Sopenharmony_ciKernelVersion:	5.18
6362306a36Sopenharmony_ciContact:	"David E. Box" <david.e.box@linux.intel.com>
6462306a36Sopenharmony_ciDescription:
6562306a36Sopenharmony_ci		(WO) Used to write a Capability Activation Payload (CAP) to the
6662306a36Sopenharmony_ci		On Demand NVRAM for the CPU. CAPs are used to activate a given
6762306a36Sopenharmony_ci		CPU feature. A CAP is validated by On Demand hardware using a
6862306a36Sopenharmony_ci		previously provisioned AKC file. Upon successful authentication,
6962306a36Sopenharmony_ci		the CPU configuration is updated. A cold reboot is required to
7062306a36Sopenharmony_ci		fully activate the feature. Mailbox command.
7162306a36Sopenharmony_ci
7262306a36Sopenharmony_ciWhat:		/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/meter_certificate
7362306a36Sopenharmony_ciDate:		Nov 2022
7462306a36Sopenharmony_ciKernelVersion:	6.2
7562306a36Sopenharmony_ciContact:	"David E. Box" <david.e.box@linux.intel.com>
7662306a36Sopenharmony_ciDescription:
7762306a36Sopenharmony_ci		(RO) Used to read back the current meter certificate for the CPU
7862306a36Sopenharmony_ci		from Intel On Demand hardware. The meter certificate contains
7962306a36Sopenharmony_ci		utilization metrics of On Demand enabled features. Mailbox
8062306a36Sopenharmony_ci		command.
8162306a36Sopenharmony_ci
8262306a36Sopenharmony_ciWhat:		/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/state_certificate
8362306a36Sopenharmony_ciDate:		Feb 2022
8462306a36Sopenharmony_ciKernelVersion:	5.18
8562306a36Sopenharmony_ciContact:	"David E. Box" <david.e.box@linux.intel.com>
8662306a36Sopenharmony_ciDescription:
8762306a36Sopenharmony_ci		(RO) Used to read back the current state certificate for the CPU
8862306a36Sopenharmony_ci		from On Demand hardware. The state certificate contains
8962306a36Sopenharmony_ci		information about the current licenses on the CPU. Mailbox
9062306a36Sopenharmony_ci		command.
91