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