1What:		/sys/bus/fcoe/
2Date:		August 2012
3KernelVersion:	TBD
4Contact:	Robert Love <robert.w.love@intel.com>, devel@open-fcoe.org
5Description:	The FCoE bus. Attributes in this directory are control interfaces.
6
7Attributes:
8
9	ctlr_create:
10		     'FCoE Controller' instance creation interface. Writing an
11		     <ifname> to this file will allocate and populate sysfs with a
12		     fcoe_ctlr_device (ctlr_X). The user can then configure any
13		     per-port settings and finally write to the fcoe_ctlr_device's
14		     'start' attribute to begin the kernel's discovery and login
15		     process.
16
17	ctlr_destroy:
18		       'FCoE Controller' instance removal interface. Writing a
19		       fcoe_ctlr_device's sysfs name to this file will log the
20		       fcoe_ctlr_device out of the fabric or otherwise connected
21		       FCoE devices. It will also free all kernel memory allocated
22		       for this fcoe_ctlr_device and any structures associated
23		       with it, this includes the scsi_host.
24
25What:		/sys/bus/fcoe/devices/ctlr_X
26Date:		March 2012
27KernelVersion:	TBD
28Contact:	Robert Love <robert.w.love@intel.com>, devel@open-fcoe.org
29Description:	'FCoE Controller' instances on the fcoe bus.
30		The FCoE Controller now has a three stage creation process.
31		1) Write interface name to ctlr_create 2) Configure the FCoE
32		Controller (ctlr_X) 3) Enable the FCoE Controller to begin
33		discovery and login. The FCoE Controller is destroyed by
34		writing it's name, i.e. ctlr_X to the ctlr_delete file.
35
36Attributes:
37
38	fcf_dev_loss_tmo:
39			  Device loss timeout period (see below). Changing
40			  this value will change the dev_loss_tmo for all
41			  FCFs discovered by this controller.
42
43	mode:
44			  Display or change the FCoE Controller's mode. Possible
45			  modes are 'Fabric' and 'VN2VN'. If a FCoE Controller
46			  is started in 'Fabric' mode then FIP FCF discovery is
47			  initiated and ultimately a fabric login is attempted.
48			  If a FCoE Controller is started in 'VN2VN' mode then
49			  FIP VN2VN discovery and login is performed. A FCoE
50			  Controller only supports one mode at a time.
51
52	enabled:
53			  Whether an FCoE controller is enabled or disabled.
54			  0 if disabled, 1 if enabled. Writing either 0 or 1
55			  to this file will enable or disable the FCoE controller.
56
57	lesb/link_fail:
58			  Link Error Status Block (LESB) link failure count.
59
60	lesb/vlink_fail:
61		          Link Error Status Block (LESB) virtual link
62			  failure count.
63
64	lesb/miss_fka:
65			  Link Error Status Block (LESB) missed FCoE
66			  Initialization Protocol (FIP) Keep-Alives (FKA).
67
68	lesb/symb_err:
69			  Link Error Status Block (LESB) symbolic error count.
70
71	lesb/err_block:
72			  Link Error Status Block (LESB) block error count.
73
74	lesb/fcs_error:
75			  Link Error Status Block (LESB) Fibre Channel
76			  Services error count.
77
78Notes: ctlr_X (global increment starting at 0)
79
80What:		/sys/bus/fcoe/devices/fcf_X
81Date:		March 2012
82KernelVersion:	TBD
83Contact:	Robert Love <robert.w.love@intel.com>, devel@open-fcoe.org
84Description:	'FCoE FCF' instances on the fcoe bus. A FCF is a Fibre Channel
85		Forwarder, which is a FCoE switch that can accept FCoE
86		(Ethernet) packets, unpack them, and forward the embedded
87		Fibre Channel frames into a FC fabric. It can also take
88		outbound FC frames and pack them in Ethernet packets to
89		be sent to their destination on the Ethernet segment.
90
91Attributes:
92
93	fabric_name:
94		     Identifies the fabric that the FCF services.
95
96	switch_name:
97		     Identifies the FCF.
98
99	priority:
100		     The switch's priority amongst other FCFs on the same
101		     fabric.
102
103	selected:
104		     1 indicates that the switch has been selected for use;
105		     0 indicates that the switch will not be used.
106
107	fc_map:
108		     The Fibre Channel MAP
109
110	vfid:
111		     The Virtual Fabric ID
112
113	mac:
114		     The FCF's MAC address
115
116	fka_period:
117		     The FIP Keep-Alive period
118
119	fabric_state: The internal kernel state
120
121		      - "Unknown" - Initialization value
122		      - "Disconnected" - No link to the FCF/fabric
123		      - "Connected" - Host is connected to the FCF
124		      - "Deleted" - FCF is being removed from the system
125
126	dev_loss_tmo: The device loss timeout period for this FCF.
127
128Notes: A device loss infrastructure similar to the FC Transport's
129       is present in fcoe_sysfs. It is nice to have so that a
130       link flapping adapter doesn't continually advance the count
131       used to identify the discovered FCF. FCFs will exist in a
132       "Disconnected" state until either the timer expires and the
133       FCF becomes "Deleted" or the FCF is rediscovered and becomes
134       "Connected."
135
136
137Users: The first user of this interface will be the fcoeadm application,
138       which is commonly packaged in the fcoe-utils package.
139