smp_conf_phy_event - invoke CONFIGURE PHY EVENT function
smp_conf_phy_event [--clear] [--enumerate]
[--expected=EX] [--file=FILE] [--help] [--hex]
[--interface=PARAMS] [--pes=PES,PES...] [--phy=ID]
[--raw] [--sa=SAS_ADDR] [--thres=THR,THR...]
[--verbose] [--version] SMP_DEVICE[,N]
Sends a SAS Serial Management Protocol (SMP) CONFIGURE PHY EVENT
function request to an SMP target. The SMP target is identified by the
SMP_DEVICE and the --sa=SAS_ADDR. Depending on the interface,
the SAS_ADDR may be deduced from the SMP_DEVICE. The mpt
interface uses SMP_DEVICE to identify a HBA (an SMP initiator) and
needs the additional ,N to differentiate between HBAs if there are
multiple present.
The function request contains zero or more phy event configuration
descriptors. Each descriptor is 8 byte long and contains a phy event source
(one byte long) and optionally a peak value detector threshold which is 32
bits long (4 bytes). These values can either be supplied on the command line
as the arguments to the --pes and --thres options, or within a
FILE given to the --file option.
Once a phy event source has been configured by this function, its
counters should be readable with the REPORT PHY EVENT or REPORT PHY EVENT
LIST functions. Peak value detector thresholds should only be non-zero for
phy event sources whose type is "peak value detector". If the
threshold value is exceeded the expander will originate a
Broadcast(Expander).
Mandatory arguments to long options are mandatory for short
options as well.
- -C, --clear
- sets the CLEAR PEAKS bit the in function request. This will cause all peak
value detectors associated with this phy (i.e. ID) to be cleared to
zero.
- -e,
--enumerate
- enumerate all of the known Phy Event Source names, one per line preceded
by its value in hex. Ignores SMP_DEVICE if it is given; most other
options are also ignored. Exits after displaying the names.
- -E,
--expected=EX
- set the 'expected expander change count' field in the SMP request. The
value EX is from 0 to 65535 inclusive with 0 being the default
value. When EX is greater than zero then if the value doesn't match
the expander change count of the SMP target (i.e. the expander) when the
request arrives then the target ignores the request and sets a function
result of "invalid expander change count" in the response.
- -f,
--file=FILE
- where FILE is a file name containing pairs of values. The first
member of each pair is a phy event source and the second member of the
pair is a peak value detector threshold. Values are interpreted as decimal
unless prefixed by '0x' or '0X' (or it has a trailing 'h' or 'H').
Everything from and including a "#" on a line is ignored as are
blank lines. Values may be comma, space and tab separated or appear on
separate lines. This option cannot be present with the --pes
option.
- -h, --help
- output the usage message then exit.
- -H, --hex
- output the response (less the CRC field) in hexadecimal.
- -I,
--interface=PARAMS
- interface specific parameters. In this case "interface" refers
to the path through the operating system to the SMP initiator. See the
smp_utils man page for more information.
- -p,
--phy=ID
- phy identifier. ID is a value between 0 and 254 (default 0).
- -P,
--pes=PES,PES...
- where PES,PES... is a string of comma (or space) separated values
that are interpreted as phy event sources (each a value from 0 to 255).
Each number is interpreted as decimal unless prefixed by '0x' or '0X' (or
it has a trailing 'h' or 'H'). An argument that contains any space
separators needs to be quoted (or otherwise escaped). When this option is
given then the --thres option may also be given and they should
contain the same number of elements in their arguments.
- -r, --raw
- send the response (less the CRC field) to stdout in binary. All error
messages are sent to stderr.
- -s,
--sa=SAS_ADDR
- specifies the SAS address of the SMP target device. The mpt interface
needs this option and it will typically be an expander's SAS address. The
SAS_ADDR is in decimal but most SAS addresses are shown in
hexadecimal. To give a number in hexadecimal either prefix it with '0x' or
put a trailing 'h' on it.
- -T,
--thres=THR,THR...
- where THR,THR... is a string of comma (or space) separated values
that are interpreted as peak value detector thresholds (each a 32 bit
value). Each number is interpreted as decimal unless prefixed by '0x' or
'0X' (or it has a trailing 'h' or 'H'). An argument that contains any
space separators needs to be quoted (or otherwise escaped). When this
option is given then the --pes option must also be given and they
should contain the same number of elements in their arguments.
- -v, --verbose
- increase the verbosity of the output. Can be used multiple times.
- -V, --version
- print the version string and then exit.
The SMP CONFIGURE PHY EVENT function was introduced in SAS-2 .
Written by Douglas Gilbert.
Report bugs to <dgilbert at interlog dot com>.
Copyright © 2011 Douglas Gilbert
This software is distributed under a FreeBSD license. There is NO warranty;
not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
smp_utils, smp_rep_phy_event, smp_rep_phy_event_list