162306a36Sopenharmony_ciWhat:		/sys/class/mic/
262306a36Sopenharmony_ciDate:		October 2013
362306a36Sopenharmony_ciKernelVersion:	3.13
462306a36Sopenharmony_ciContact:	Sudeep Dutt <sudeep.dutt@intel.com>
562306a36Sopenharmony_ciDescription:
662306a36Sopenharmony_ci		The mic class directory belongs to Intel MIC devices and
762306a36Sopenharmony_ci		provides information per MIC device. An Intel MIC device is a
862306a36Sopenharmony_ci		PCIe form factor add-in Coprocessor card based on the Intel Many
962306a36Sopenharmony_ci		Integrated Core (MIC) architecture that runs a Linux OS.
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ciWhat:		/sys/class/mic/mic<X>
1262306a36Sopenharmony_ciDate:		October 2013
1362306a36Sopenharmony_ciKernelVersion:	3.13
1462306a36Sopenharmony_ciContact:	Sudeep Dutt <sudeep.dutt@intel.com>
1562306a36Sopenharmony_ciDescription:
1662306a36Sopenharmony_ci		The directories /sys/class/mic/mic0, /sys/class/mic/mic1 etc.,
1762306a36Sopenharmony_ci		represent MIC devices (0,1,..etc). Each directory has
1862306a36Sopenharmony_ci		information specific to that MIC device.
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ciWhat:		/sys/class/mic/mic<X>/family
2162306a36Sopenharmony_ciDate:		October 2013
2262306a36Sopenharmony_ciKernelVersion:	3.13
2362306a36Sopenharmony_ciContact:	Sudeep Dutt <sudeep.dutt@intel.com>
2462306a36Sopenharmony_ciDescription:
2562306a36Sopenharmony_ci		Provides information about the Coprocessor family for an Intel
2662306a36Sopenharmony_ci		MIC device. For example - "x100"
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_ciWhat:		/sys/class/mic/mic<X>/stepping
2962306a36Sopenharmony_ciDate:		October 2013
3062306a36Sopenharmony_ciKernelVersion:	3.13
3162306a36Sopenharmony_ciContact:	Sudeep Dutt <sudeep.dutt@intel.com>
3262306a36Sopenharmony_ciDescription:
3362306a36Sopenharmony_ci		Provides information about the silicon stepping for an Intel
3462306a36Sopenharmony_ci		MIC device. For example - "A0" or "B0"
3562306a36Sopenharmony_ci
3662306a36Sopenharmony_ciWhat:		/sys/class/mic/mic<X>/state
3762306a36Sopenharmony_ciDate:		October 2013
3862306a36Sopenharmony_ciKernelVersion:	3.13
3962306a36Sopenharmony_ciContact:	Sudeep Dutt <sudeep.dutt@intel.com>
4062306a36Sopenharmony_ciDescription:
4162306a36Sopenharmony_ci		When read, this entry provides the current state of an Intel
4262306a36Sopenharmony_ci		MIC device in the context of the card OS. Possible values that
4362306a36Sopenharmony_ci		will be read are:
4462306a36Sopenharmony_ci
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_ci		===============  ===============================================
4762306a36Sopenharmony_ci		"ready"		 The MIC device is ready to boot the card OS.
4862306a36Sopenharmony_ci				 On reading this entry after an OSPM resume,
4962306a36Sopenharmony_ci				 a "boot" has to be written to this entry if
5062306a36Sopenharmony_ci				 the card was previously shutdown during OSPM
5162306a36Sopenharmony_ci				 suspend.
5262306a36Sopenharmony_ci		"booting"	 The MIC device has initiated booting a card OS.
5362306a36Sopenharmony_ci		"online"	 The MIC device has completed boot and is online
5462306a36Sopenharmony_ci		"shutting_down"	 The card OS is shutting down.
5562306a36Sopenharmony_ci		"resetting"	 A reset has been initiated for the MIC device
5662306a36Sopenharmony_ci		"reset_failed"	 The MIC device has failed to reset.
5762306a36Sopenharmony_ci		===============  ===============================================
5862306a36Sopenharmony_ci
5962306a36Sopenharmony_ci		When written, this sysfs entry triggers different state change
6062306a36Sopenharmony_ci		operations depending upon the current state of the card OS.
6162306a36Sopenharmony_ci		Acceptable values are:
6262306a36Sopenharmony_ci
6362306a36Sopenharmony_ci
6462306a36Sopenharmony_ci		==========  ===================================================
6562306a36Sopenharmony_ci		"boot"      Boot the card OS image specified by the combination
6662306a36Sopenharmony_ci			    of firmware, ramdisk, cmdline and bootmode
6762306a36Sopenharmony_ci			    sysfs entries.
6862306a36Sopenharmony_ci		"reset"     Initiates device reset.
6962306a36Sopenharmony_ci		"shutdown"  Initiates card OS shutdown.
7062306a36Sopenharmony_ci		==========  ===================================================
7162306a36Sopenharmony_ci
7262306a36Sopenharmony_ciWhat:		/sys/class/mic/mic<X>/shutdown_status
7362306a36Sopenharmony_ciDate:		October 2013
7462306a36Sopenharmony_ciKernelVersion:	3.13
7562306a36Sopenharmony_ciContact:	Sudeep Dutt <sudeep.dutt@intel.com>
7662306a36Sopenharmony_ciDescription:
7762306a36Sopenharmony_ci		An Intel MIC device runs a Linux OS during its operation. This
7862306a36Sopenharmony_ci		OS can shutdown because of various reasons. When read, this
7962306a36Sopenharmony_ci		entry provides the status on why the card OS was shutdown.
8062306a36Sopenharmony_ci		Possible values are:
8162306a36Sopenharmony_ci
8262306a36Sopenharmony_ci		==========  ===================================================
8362306a36Sopenharmony_ci		"nop"       shutdown status is not applicable, when the card OS
8462306a36Sopenharmony_ci			    is "online"
8562306a36Sopenharmony_ci		"crashed"   Shutdown because of a HW or SW crash.
8662306a36Sopenharmony_ci		"halted"    Shutdown because of a halt command.
8762306a36Sopenharmony_ci		"poweroff"  Shutdown because of a poweroff command.
8862306a36Sopenharmony_ci		"restart"   Shutdown because of a restart command.
8962306a36Sopenharmony_ci		==========  ===================================================
9062306a36Sopenharmony_ci
9162306a36Sopenharmony_ciWhat:		/sys/class/mic/mic<X>/cmdline
9262306a36Sopenharmony_ciDate:		October 2013
9362306a36Sopenharmony_ciKernelVersion:	3.13
9462306a36Sopenharmony_ciContact:	Sudeep Dutt <sudeep.dutt@intel.com>
9562306a36Sopenharmony_ciDescription:
9662306a36Sopenharmony_ci		An Intel MIC device runs a Linux OS during its operation. Before
9762306a36Sopenharmony_ci		booting this card OS, it is possible to pass kernel command line
9862306a36Sopenharmony_ci		options to configure various features in it, similar to
9962306a36Sopenharmony_ci		self-bootable machines. When read, this entry provides
10062306a36Sopenharmony_ci		information about the current kernel command line options set to
10162306a36Sopenharmony_ci		boot the card OS. This entry can be written to change the
10262306a36Sopenharmony_ci		existing kernel command line options. Typically, the user would
10362306a36Sopenharmony_ci		want to read the current command line options, append new ones
10462306a36Sopenharmony_ci		or modify existing ones and then write the whole kernel command
10562306a36Sopenharmony_ci		line back to this entry.
10662306a36Sopenharmony_ci
10762306a36Sopenharmony_ciWhat:		/sys/class/mic/mic<X>/firmware
10862306a36Sopenharmony_ciDate:		October 2013
10962306a36Sopenharmony_ciKernelVersion:	3.13
11062306a36Sopenharmony_ciContact:	Sudeep Dutt <sudeep.dutt@intel.com>
11162306a36Sopenharmony_ciDescription:
11262306a36Sopenharmony_ci		When read, this sysfs entry provides the path name under
11362306a36Sopenharmony_ci		/lib/firmware/ where the firmware image to be booted on the
11462306a36Sopenharmony_ci		card can be found. The entry can be written to change the
11562306a36Sopenharmony_ci		firmware image location under /lib/firmware/.
11662306a36Sopenharmony_ci
11762306a36Sopenharmony_ciWhat:		/sys/class/mic/mic<X>/ramdisk
11862306a36Sopenharmony_ciDate:		October 2013
11962306a36Sopenharmony_ciKernelVersion:	3.13
12062306a36Sopenharmony_ciContact:	Sudeep Dutt <sudeep.dutt@intel.com>
12162306a36Sopenharmony_ciDescription:
12262306a36Sopenharmony_ci		When read, this sysfs entry provides the path name under
12362306a36Sopenharmony_ci		/lib/firmware/ where the ramdisk image to be used during card
12462306a36Sopenharmony_ci		OS boot can be found. The entry can be written to change
12562306a36Sopenharmony_ci		the ramdisk image location under /lib/firmware/.
12662306a36Sopenharmony_ci
12762306a36Sopenharmony_ciWhat:		/sys/class/mic/mic<X>/bootmode
12862306a36Sopenharmony_ciDate:		October 2013
12962306a36Sopenharmony_ciKernelVersion:	3.13
13062306a36Sopenharmony_ciContact:	Sudeep Dutt <sudeep.dutt@intel.com>
13162306a36Sopenharmony_ciDescription:
13262306a36Sopenharmony_ci		When read, this sysfs entry provides the current bootmode for
13362306a36Sopenharmony_ci		the card. This sysfs entry can be written with the following
13462306a36Sopenharmony_ci		valid strings:
13562306a36Sopenharmony_ci		a) linux - Boot a Linux image.
13662306a36Sopenharmony_ci		b) flash - Boot an image for flash updates.
13762306a36Sopenharmony_ci
13862306a36Sopenharmony_ciWhat:		/sys/class/mic/mic<X>/log_buf_addr
13962306a36Sopenharmony_ciDate:		October 2013
14062306a36Sopenharmony_ciKernelVersion:	3.13
14162306a36Sopenharmony_ciContact:	Sudeep Dutt <sudeep.dutt@intel.com>
14262306a36Sopenharmony_ciDescription:
14362306a36Sopenharmony_ci		An Intel MIC device runs a Linux OS during its operation. For
14462306a36Sopenharmony_ci		debugging purpose and early kernel boot messages, the user can
14562306a36Sopenharmony_ci		access the card OS log buffer via debugfs. When read, this entry
14662306a36Sopenharmony_ci		provides the kernel virtual address of the buffer where the card
14762306a36Sopenharmony_ci		OS log buffer can be read. This entry is written by the host
14862306a36Sopenharmony_ci		configuration daemon to set the log buffer address. The correct
14962306a36Sopenharmony_ci		log buffer address to be written can be found in the System.map
15062306a36Sopenharmony_ci		file of the card OS.
15162306a36Sopenharmony_ci
15262306a36Sopenharmony_ciWhat:		/sys/class/mic/mic<X>/log_buf_len
15362306a36Sopenharmony_ciDate:		October 2013
15462306a36Sopenharmony_ciKernelVersion:	3.13
15562306a36Sopenharmony_ciContact:	Sudeep Dutt <sudeep.dutt@intel.com>
15662306a36Sopenharmony_ciDescription:
15762306a36Sopenharmony_ci		An Intel MIC device runs a Linux OS during its operation. For
15862306a36Sopenharmony_ci		debugging purpose and early kernel boot messages, the user can
15962306a36Sopenharmony_ci		access the card OS log buffer via debugfs. When read, this entry
16062306a36Sopenharmony_ci		provides the kernel virtual address where the card OS log buffer
16162306a36Sopenharmony_ci		length can be read. This entry is written by host configuration
16262306a36Sopenharmony_ci		daemon to set the log buffer length address. The correct log
16362306a36Sopenharmony_ci		buffer length address to be written can be found in the
16462306a36Sopenharmony_ci		System.map file of the card OS.
16562306a36Sopenharmony_ci
16662306a36Sopenharmony_ciWhat:		/sys/class/mic/mic<X>/heartbeat_enable
16762306a36Sopenharmony_ciDate:		March 2015
16862306a36Sopenharmony_ciKernelVersion:	4.4
16962306a36Sopenharmony_ciContact:	Ashutosh Dixit <ashutosh.dixit@intel.com>
17062306a36Sopenharmony_ciDescription:
17162306a36Sopenharmony_ci		The MIC drivers detect and inform user space about card crashes
17262306a36Sopenharmony_ci		via a heartbeat mechanism (see the description of
17362306a36Sopenharmony_ci		shutdown_status above). User space can turn off this
17462306a36Sopenharmony_ci		notification by setting heartbeat_enable to 0 and enable it by
17562306a36Sopenharmony_ci		setting this entry to 1. If this notification is disabled it is
17662306a36Sopenharmony_ci		the responsibility of user space to detect card crashes via
17762306a36Sopenharmony_ci		alternative means such as a network ping. This setting is
17862306a36Sopenharmony_ci		enabled by default.
179