1What:		/sys/class/mic/
2Date:		October 2013
3KernelVersion:	3.13
4Contact:	Sudeep Dutt <sudeep.dutt@intel.com>
5Description:
6		The mic class directory belongs to Intel MIC devices and
7		provides information per MIC device. An Intel MIC device is a
8		PCIe form factor add-in Coprocessor card based on the Intel Many
9		Integrated Core (MIC) architecture that runs a Linux OS.
10
11What:		/sys/class/mic/mic(x)
12Date:		October 2013
13KernelVersion:	3.13
14Contact:	Sudeep Dutt <sudeep.dutt@intel.com>
15Description:
16		The directories /sys/class/mic/mic0, /sys/class/mic/mic1 etc.,
17		represent MIC devices (0,1,..etc). Each directory has
18		information specific to that MIC device.
19
20What:		/sys/class/mic/mic(x)/family
21Date:		October 2013
22KernelVersion:	3.13
23Contact:	Sudeep Dutt <sudeep.dutt@intel.com>
24Description:
25		Provides information about the Coprocessor family for an Intel
26		MIC device. For example - "x100"
27
28What:		/sys/class/mic/mic(x)/stepping
29Date:		October 2013
30KernelVersion:	3.13
31Contact:	Sudeep Dutt <sudeep.dutt@intel.com>
32Description:
33		Provides information about the silicon stepping for an Intel
34		MIC device. For example - "A0" or "B0"
35
36What:		/sys/class/mic/mic(x)/state
37Date:		October 2013
38KernelVersion:	3.13
39Contact:	Sudeep Dutt <sudeep.dutt@intel.com>
40Description:
41		When read, this entry provides the current state of an Intel
42		MIC device in the context of the card OS. Possible values that
43		will be read are:
44		"ready" - The MIC device is ready to boot the card OS. On
45		reading this entry after an OSPM resume, a "boot" has to be
46		written to this entry if the card was previously shutdown
47		during OSPM suspend.
48		"booting" - The MIC device has initiated booting a card OS.
49		"online" - The MIC device has completed boot and is online
50		"shutting_down" - The card OS is shutting down.
51		"resetting" - A reset has been initiated for the MIC device
52		"reset_failed" - The MIC device has failed to reset.
53
54		When written, this sysfs entry triggers different state change
55		operations depending upon the current state of the card OS.
56		Acceptable values are:
57		"boot" - Boot the card OS image specified by the combination
58			 of firmware, ramdisk, cmdline and bootmode
59			sysfs entries.
60		"reset" - Initiates device reset.
61		"shutdown" - Initiates card OS shutdown.
62
63What:		/sys/class/mic/mic(x)/shutdown_status
64Date:		October 2013
65KernelVersion:	3.13
66Contact:	Sudeep Dutt <sudeep.dutt@intel.com>
67Description:
68		An Intel MIC device runs a Linux OS during its operation. This
69		OS can shutdown because of various reasons. When read, this
70		entry provides the status on why the card OS was shutdown.
71		Possible values are:
72		"nop" -  shutdown status is not applicable, when the card OS is
73			"online"
74		"crashed" - Shutdown because of a HW or SW crash.
75		"halted" - Shutdown because of a halt command.
76		"poweroff" - Shutdown because of a poweroff command.
77		"restart" - Shutdown because of a restart command.
78
79What:		/sys/class/mic/mic(x)/cmdline
80Date:		October 2013
81KernelVersion:	3.13
82Contact:	Sudeep Dutt <sudeep.dutt@intel.com>
83Description:
84		An Intel MIC device runs a Linux OS during its operation. Before
85		booting this card OS, it is possible to pass kernel command line
86		options to configure various features in it, similar to
87		self-bootable machines. When read, this entry provides
88		information about the current kernel command line options set to
89		boot the card OS. This entry can be written to change the
90		existing kernel command line options. Typically, the user would
91		want to read the current command line options, append new ones
92		or modify existing ones and then write the whole kernel command
93		line back to this entry.
94
95What:		/sys/class/mic/mic(x)/firmware
96Date:		October 2013
97KernelVersion:	3.13
98Contact:	Sudeep Dutt <sudeep.dutt@intel.com>
99Description:
100		When read, this sysfs entry provides the path name under
101		/lib/firmware/ where the firmware image to be booted on the
102		card can be found. The entry can be written to change the
103		firmware image location under /lib/firmware/.
104
105What:		/sys/class/mic/mic(x)/ramdisk
106Date:		October 2013
107KernelVersion:	3.13
108Contact:	Sudeep Dutt <sudeep.dutt@intel.com>
109Description:
110		When read, this sysfs entry provides the path name under
111		/lib/firmware/ where the ramdisk image to be used during card
112		OS boot can be found. The entry can be written to change
113		the ramdisk image location under /lib/firmware/.
114
115What:		/sys/class/mic/mic(x)/bootmode
116Date:		October 2013
117KernelVersion:	3.13
118Contact:	Sudeep Dutt <sudeep.dutt@intel.com>
119Description:
120		When read, this sysfs entry provides the current bootmode for
121		the card. This sysfs entry can be written with the following
122		valid strings:
123		a) linux - Boot a Linux image.
124		b) flash - Boot an image for flash updates.
125
126What:		/sys/class/mic/mic(x)/log_buf_addr
127Date:		October 2013
128KernelVersion:	3.13
129Contact:	Sudeep Dutt <sudeep.dutt@intel.com>
130Description:
131		An Intel MIC device runs a Linux OS during its operation. For
132		debugging purpose and early kernel boot messages, the user can
133		access the card OS log buffer via debugfs. When read, this entry
134		provides the kernel virtual address of the buffer where the card
135		OS log buffer can be read. This entry is written by the host
136		configuration daemon to set the log buffer address. The correct
137		log buffer address to be written can be found in the System.map
138		file of the card OS.
139
140What:		/sys/class/mic/mic(x)/log_buf_len
141Date:		October 2013
142KernelVersion:	3.13
143Contact:	Sudeep Dutt <sudeep.dutt@intel.com>
144Description:
145		An Intel MIC device runs a Linux OS during its operation. For
146		debugging purpose and early kernel boot messages, the user can
147		access the card OS log buffer via debugfs. When read, this entry
148		provides the kernel virtual address where the card OS log buffer
149		length can be read. This entry is written by host configuration
150		daemon to set the log buffer length address. The correct log
151		buffer length address to be written can be found in the
152		System.map file of the card OS.
153
154What:		/sys/class/mic/mic(x)/heartbeat_enable
155Date:		March 2015
156KernelVersion:	4.4
157Contact:	Ashutosh Dixit <ashutosh.dixit@intel.com>
158Description:
159		The MIC drivers detect and inform user space about card crashes
160		via a heartbeat mechanism (see the description of
161		shutdown_status above). User space can turn off this
162		notification by setting heartbeat_enable to 0 and enable it by
163		setting this entry to 1. If this notification is disabled it is
164		the responsibility of user space to detect card crashes via
165		alternative means such as a network ping. This setting is
166		enabled by default.
167