SMP_PHY_CONTROL

Section: SMP_UTILS (8)
Updated: January 2008
Index Return to Main Contents
 

NAME

smp_phy_control - invoke PHY CONTROL SMP function  

SYNOPSIS

smp_phy_control [--attached=ADN] [--expected=EX] [--help] [--hex] [--interface=PARAMS] [--max=MA] [--min=MI] [--op=OP] [--phy=ID] [--pptv=TI] [--raw] [--sa=SAS_ADDR] [--verbose] [--version] SMP_DEVICE[,N]  

DESCRIPTION

Sends a SAS Management Protocol (SMP) PHY CONTROL request function to a SMP target. The SMP target is identified by the SMP_DEVICE and the SAS_ADDR. Depending on the interface, the SAS_ADDR may be deduced from the SMP_DEVICE. With one interface there is one SMP_DEVICE per machine so the SMP_DEVICE,N syntax is needed to differentiate between HBAs if there are multiple present.

The PHY CONTROL function is used to change the state of a phy within a SMP target. SMP targets are typically SAS expanders which have multiple phys. Certain operation values (e.g. 'lr' (link reset) and 'hr' (hard reset)) change the state of the attached phy. Sending such operation values to the phy in the SMP target that is attached to the originator (i.e. the SMP initiator) may lead to a bad response.

Invoking this utility with no arguments (other than SMP_DEVICE which might be in an environment variable and --sa=SAS_ADDR which might be in an environment variable or not needed) is harmless. In other words a phy's state is only changed when either --max=MA, --min=MI, --op=OP or --pptv=TI is given with a non default value.  

OPTIONS

Mandatory arguments to long options are mandatory for short options as well.
-a, --attached=ADN
specifies the attached device name (ADN). The default value is 0 . The ADN is in decimal but is likely to be a SAS address which is typically shown in hexadecimal. To specify a number in hexadecimal either prefix it with '0x' or put a trailing 'h' on it.
-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.
-h, --help
output the usage message then exit.
-H, --hex
output the response 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.
-M, --max=MA
permits the programmed maximum physical link rate to be changed on the gven phy. Permitted values are: 0 -> no change, 8 -> 1.5 Gbps, 9 -> 3 Gbps, 10 -> 6 Gbps. Default value is 0.
-m, --min=MI
permits the programmed minimum physical link rate to be changed on the given phy. Permitted values are: 0 -> no change, 8 -> 1.5 Gbps, 9 -> 3 Gbps, 10 -> 6 Gbps. Default value is 0.
-o, --op=OP
specifies the operation to be performed on the given phy. The OP argument can be either numeric or a string. If a number is given, it is put into the 'phy operation' field of the request. Allowable strings are abbreviations of which only the first two characters need to match. The supported strings are: 'nop' (no operation), 'lr' (link reset), 'hr' (hard reset), 'dis' (disable phy), 'cel' (clear error log), 'ca' (clear affiliation), 'tspss' (transmit SATA port selection signal), 'citnl' (clear STP I_T nexus loss (bit)), and 'sadn' (set attached device name). The default value is 0 (no operation).
-p, --phy=ID
phy identifier. ID is a value between 0 and 127. Default is 0.
-P, --pptv=TI
partial pathway timeout value. The units are microseconds and the permitted values are between 0 and 15 inclusive. 7 microseconds is recommended by sas2r07.
-r, --raw
send the response to stdout in binary. All error messages are sent to stderr.
-s, --sa=SAS_ADDR
specifies the SAS address of the SMP target device. Typically this is an expander. This option may not be needed if the SMP_DEVICE has the target's SAS address within it. 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.
-v, --verbose
increase the verbosity of the output. Can be used multiple times
-V, --version
print the version string and then exit.
 

CONFORMING TO

The SMP PHY CONTROL function was introduced in SAS-1 .  

AUTHORS

Written by Douglas Gilbert.  

REPORTING BUGS

Report bugs to <dgilbert at interlog dot com>.  

COPYRIGHT

Copyright © 2006-2008 Douglas Gilbert
This software is distributed under a FreeBSD license. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  

SEE ALSO

smp_utils, smp_discover(smp_utils)


 

Index

NAME
SYNOPSIS
DESCRIPTION
OPTIONS
CONFORMING TO
AUTHORS
REPORTING BUGS
COPYRIGHT
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 05:34:30 GMT, December 24, 2015