1ledctl(8)         Intel(R) Enclosure LED Control Application         ledctl(8)
2
3
4

NAME

6       ledctl - Intel(R) LED control application for a storage enclosures.
7

SYNOPSIS

9       ledctl [OPTIONS] pattern_name=list_of_devices ...
10

DESCRIPTION

12       The ledctl is an user space application designed to control LEDs
13       associated with each slot in an enclosure or a drive bay. The LEDs of
14       devices listed in list_of_devices are set to the given pattern
15       pattern_name and all other LEDs are turned off.  User must have root
16       privileges to use this application.
17
18       There are two types of systems: 2-LEDs systems (Activity LED, Status
19       LED) and 3-LEDs systems (Activity LED, Locate LED, Fail LED).
20
21       The ledctl application supports LED management of the SAS/SATA and PCIe
22       storages.
23
24       Supported protocols/methods for LED management are:
25
26       ·   SES-2 and SMP for SAS devices,
27
28       ·   LED messages over SGPIO for SATA,
29
30       ·   VMD and NPEM for PCIe.
31
32       SAF-TE protocol is not supported.
33
34       For SAS/SATA storages supporting controllers may transmit LED
35       management information to the backplane controllers via the SGPIO
36       interface. The SGPIO bus carries bit patterns, which translate into LED
37       blink patterns in accordance with the International Blinking Pattern
38       Interpretation (IBPI) of SFF-8489 specification for SGPIO.  Please note
39       some enclosures do not stick close to the SFF-8489 specification. It
40       might happen that the enclosure processor will accept the IBPI pattern
41       but it will blink LEDs not according to SFF-8489 specification or it
42       has a limited number of patterns supported.
43
44       The ledctl application has been verified to work with Intel(R) storage
45       controllers (i.e. Intel(R) AHCI controller and Intel(R) SAS
46       controller).  The application might work with storage controllers of
47       other vendors (especially SCSI/SAS controllers). However, storage
48       controllers of other vendors have not been tested.
49
50       The ledmon application has the highest priority when accessing LEDs.
51       It means that some patterns set by ledctl may have no effect if ledmon
52       is running (except Locate pattern).
53
54       The ledctl application is a part of Intel(R) Enclosure LED Utilities.
55
56       The ledctl utilizes the following documents as references:
57
58       ·   SGPIO (Serial GPIO) - SFF-8485
59
60       ·   IBPI (International Blinking Pattern Interpretation) - SFF-8489
61
62       ·   LED Enclosure management messages - AHCI specification rev 1.3,
63           section 12.2.1.
64
65       ·   SAS (Serial Attached SCSI) - T10/1760-D
66
67       ·   SES-2 (SCSI Enclosure Services-2) - T10/1559-D
68
69       ·   SMP (Serial Management Protocol) - T10/1760-D
70
71       ·   NPEM (Native PCIe Enclosure Management) - PCIe base specification
72           rev 4.0
73
74       ·   VMD (Intel(R) Volume Management Device) - Intel(R) VROC (VMD NVMe
75           RAID) Quick
76
77           Configuration Guide rev 1.2
78
79   Pattern Names
80       The ledctl application accepts the following names for pattern_name
81       argument according to SFF-8489 specification.
82
83       locate  Turns Locate LED associated with the given device(s) on.
84
85       locate_off
86               Turns only Locate LED off.
87
88       normal  Turns Status LED, Failure LED and Locate LED off.
89
90       off     Turns only Status LED and Failure LED off.
91
92       ica or degraded
93               Visualizes "In a Critical Array" pattern.
94
95       rebuild Visualizes "Rebuild" pattern.
96
97       ifa or failed_array
98               Visualizes "In a Failed Array" pattern.
99
100       hotspare
101               Visualizes "Hotspare" pattern.
102
103       pfa     Visualizes "Predicted Failure Analysis" pattern.
104
105       failure or disk_failed
106               Visualizes "Failure" pattern.
107
108       ses_abort
109               SES-2 R/R ABORD
110
111       ses_rebuild
112               SES-2 REBUILD/REMAP
113
114       ses_ifa SES-2 IN FAILED ARRAY
115
116       ses_ica SES-2 IN CRIT ARRAY
117
118       ses_cons_check
119               SES-2 CONS CHECK
120
121       ses_hotspare
122               SES-2 HOT SPARE
123
124       ses_rsvd_dev
125               SES-2 RSVD DEVICE
126
127       ses_ok  SES-2 OK
128
129       ses_ident
130               SES-2 IDENT
131
132       ses_rm  SES-2 REMOVE
133
134       ses_insert
135               SES-2 INSERT
136
137       ses_missing
138               SES-2 MISSING
139
140       ses_dnr SES-2 DO NOT REMOVE
141
142       ses_active
143               SES-2 ACTIVE
144
145       ses_enable_bb
146               SES-2 ENABLE BYP B
147
148       ses_enable_ba
149               SES-2 ENABLE BYP A
150
151       ses_devoff
152               SES-2 DEVICE OFF
153
154       ses_fault
155               SES-2 FAULT
156
157       ses_prdfail
158               SES-2 PRDFAIL
159
160   Patterns Translation
161       When non SES-2 pattern is send to device in enclosure automatic
162       translation is being done.
163
164       locate  locate is translated to ses_ident
165
166       locate_off
167               locate_off is translated to ~ses_ident
168
169       normal or off
170               normal or off is translated to ses_ok
171
172       ica or degraded
173               ica or degraded is translated to ses_ica
174
175       rebuild rebuild is translated to ses_rebuild
176
177       ifa or failed_array
178               ifa or failed_array is translated to ses_ifa
179
180       hotspare
181               hotspare is translated to ses_hotspare
182
183       pfa     pfa is translated to ses_prdfail
184
185       failure or disk_failed
186               failure or disk_failed is translated to ses_fault
187
188   List of Devices
189       The application accepts a list of devices in two formats. The first
190       format is a list with comma separated elements. The second format is
191       a list in curly braces and elements are separated by space. See
192       examples section below for details.
193
194       A device is a path to file in /dev directory or in /sys/block
195       directory.  It may identify a block device, a RAID device or a
196       container device.  In case of a RAID device or a container device a
197       state will be set for all block devices associated, respectively.
198
199       The LEDs of devices listed in list_of_devices are set to the given
200       pattern pattern_name and all other LEDs are turned off (unless
201       --listed-only option is given).
202

OPTIONS

204       -l or --log=path
205               Sets a path to local log file. If this option is specified the
206               global log file /var/log/ledctl.log is not used.
207
208       -h or --help
209               Prints this text out and exits.
210
211       -v or --version
212               Displays version of ledctl and information about the license
213               and exits.
214
215       -L or --list-controllers
216               Prints information (system path and type) of all controllers
217               detected by ledmon and exits.
218
219       -x or --listed-only
220               With this option ledctl will change state only on devices
221               listed in CLI. The rest of devices will not be touched.
222
223       --quiet or --error or --warning or --info or --debug or --all
224               Verbose level - 'quiet' means no logging at all and 'all' means
225               to log everything. The levels are given in order. If user
226               specifies more then one verbose option the last option comes
227               into effect. The default level is 'warning'. Verbose level also
228               can be set by --log-level=level.
229

FILES

231       /var/log/ledctl.log
232               Global log file, used by all instances of ledctl application.
233               To force logging to user defined file use -l option switch.
234

EXAMPLES

236       The following example illustrates how to locate a single block device.
237
238           ledctl locate=/dev/sda
239
240       The following example illustrates how to turn Locate LED off for the
241       same block device.
242
243           ledctl locate_off=/dev/sda
244
245       The following example illustrates how to locate disks of a RAID device
246       and how to set rebuild pattern for two block devices at the same time.
247       This example uses both formats of device list.
248
249            ledctl locate=/dev/md127 rebuild={ /sys/block/sd[a-b] }
250
251       The following example illustrates how to turn Status LED and Failure
252       LED off for the given device(s).
253
254            ledctl off={ /dev/sda /dev/sdb }
255
256       The following example illustrates how to locate a three block devices.
257       This example uses the first format of device list.
258
259            ledctl locate=/dev/sda,/dev/sdb,/dev/sdc
260

LICENSE

262       Copyright (c) 2009-2021 Intel Corporation.
263
264       This program is distributed under the terms of the GNU General Public
265       License as published by the Free Software Foundation. See the built-in
266       help for details on the License and the lack of warranty.
267

SEE ALSO

269       ledmon(8), ledmon.conf(5)
270

AUTHOR

272       This manual page was written by Artur Wojcik <artur.wojcik@intel.com>.
273       It may be used by others.
274
275
276
277LEDCTL Version 0.95              January 2021                        ledctl(8)
Impressum