1SMP_PHY_CONTROL(8)                 SMP_UTILS                SMP_PHY_CONTROL(8)
2
3
4

NAME

6       smp_phy_control - invoke PHY CONTROL SMP function
7

SYNOPSIS

9       smp_phy_control   [--attached=ADN]   [--expected=EX]  [--help]  [--hex]
10       [--interface=PARAMS]   [--max=MA]   [--min=MI]   [--op=OP]   [--phy=ID]
11       [--pptv=TI]   [--pwrdis=PDC]   [--raw]   [--sa=SAS_ADDR]  [--sas_pa=CO]
12       [--sas_sl=CO]  [--sata_pa=CO]  [--sata_sl=CO]  [--verbose]  [--version]
13       SMP_DEVICE[,N]
14

DESCRIPTION

16       Sends  a  SAS  Serial  Management  Protocol  (SMP) PHY CONTROL function
17       request to  an  SMP  target.  The  SMP  target  is  identified  by  the
18       SMP_DEVICE  and  the SAS_ADDR. Depending on the interface, the SAS_ADDR
19       may be deduced from the SMP_DEVICE. The mpt interface  uses  SMP_DEVICE
20       to  identify  a  HBA  (an SMP initiator) and needs the additional ,N to
21       differentiate between HBAs if there are multiple present.
22
23       The PHY CONTROL function is used to change the state of a phy within an
24       SMP target. SMP targets are typically SAS expanders which have multiple
25       phys.  Certain operation values (e.g. 'lr' (link reset) and 'hr'  (hard
26       reset))  change  the  state of the attached phy. Sending such operation
27       values to the phy in the SMP target that is attached to the  originator
28       (i.e. the SMP initiator) may lead to a bad response.
29
30       Invoking  this  utility  with no arguments (other than SMP_DEVICE which
31       might be in an environment variable and --sa=SAS_ADDR which might be in
32       an  environment  variable  or not needed) is harmless. In other words a
33       phy's state is only changed when either --max=MA, --min=MI, --op=OP  or
34       --pptv=TI is given with a non default value.
35

OPTIONS

37       Mandatory  arguments to long options are mandatory for short options as
38       well.
39
40       -a, --attached=ADN
41              specifies the attached device name (ADN). The default value is 0
42              .  The ADN is in decimal but is likely to be a SAS address which
43              is typically shown in hexadecimal. To specify a number in  hexa‐
44              decimal  either prefix it with '0x' or put a trailing 'h' on it.
45              This option is ignored by the expander  unless  the  '--op=sadn'
46              option is also given.
47
48       -E, --expected=EX
49              set  the  'expected  expander  change  count'  field  in the SMP
50              request.  The value EX is from 0 to 65535 inclusive with 0 being
51              the  default  value.  When  EX  is greater than zero then if the
52              value doesn't match the expander change count of the SMP  target
53              (i.e.  the  expander)  when  the request arrives then the target
54              ignores the request and  sets  a  function  result  of  "invalid
55              expander change count" in the response.
56
57       -h, --help
58              output the usage message then exit.
59
60       -H, --hex
61              output the response (less the CRC field) in hexadecimal.
62
63       -I, --interface=PARAMS
64              interface  specific  parameters. In this case "interface" refers
65              to the path through the operating system to the  SMP  initiator.
66              See the smp_utils man page for more information.
67
68       -M, --max=MA
69              permits  the programmed maximum physical link rate to be changed
70              on the gven phy. Permitted values are:
71                0  : no change
72                8  : 1.5 Gbps
73                9  : 3 Gbps
74                10 : 6 Gbps
75                11 : 12 Gbps
76              Default value is 0.
77
78       -m, --min=MI
79              permits the programmed minimum physical link rate to be  changed
80              on the given phy. Permitted values are:
81                0  : no change
82                8  : 1.5 Gbps
83                9  : 3 Gbps
84                10 : 6 Gbps
85                11 : 12 Gbps
86              Default value is 0.
87
88       -o, --op=OP
89              specifies the operation to be performed on the given phy. The OP
90              argument can be either numeric or  a  string.  If  a  number  is
91              given,  it is put into the 'phy operation' field of the request.
92              Allowable strings are abbreviations of which only the first  two
93              characters  need  to match. Each line in the following list con‐
94              tains a numeric value, a string and then a brief explanation:
95                0 : nop  : no operation
96                1 : lr   : link reset
97                2 : hr   : hard reset
98                3 : dis  : disable phy
99                5 : cel  : clear error log
100                6 : ca   : clear affiliation
101                7 : tspss: transmit SATA port selection signal
102                8 : citnl: clear STP I_T nexus loss (bit)
103                9 : sadn : set attached device name
104              The default value is 0 (no operation).
105
106       -p, --phy=ID
107              phy identifier. ID is a value between 0 and 254. Default is 0.
108
109       -P, --pptv=TI
110              partial pathway timeout value. The units  are  microseconds  and
111              the permitted values are between 0 and 15 inclusive. 7 microsec‐
112              onds is recommended by sas2r07.
113
114       -D, --pwrdis=PDC
115              where PDC is the power disable control value. The default  value
116              is  0  which  means no change. The value of 1 is reserved; 2, if
117              supported, instructs the management device server to negate  the
118              POWER  DISABLE  signal;  while  3, if supported, instructs it to
119              assert that signal. This applies to the phy given by  ID  (which
120              defaults to 0).
121
122       -r, --raw
123              send  the response (less the CRC field) to stdout in binary. All
124              error messages are sent to stderr.
125
126       -s, --sa=SAS_ADDR
127              specifies the SAS address of the SMP  target  device.  Typically
128              this  is  an  expander.  This  option  may  not be needed if the
129              SMP_DEVICE has the target's SAS address within it. The  SAS_ADDR
130              is  in  decimal but most SAS addresses are shown in hexadecimal.
131              To give a number in hexadecimal either prefix it  with  '0x'  or
132              put a trailing 'h' on it.
133
134       -q, --sas_pa=CO
135              set  the  Enable SAS Partial field to CO which is two bits wide.
136              The defined values for CO are 0 for no change; 1 for manage par‐
137              tial  phy power conditions; 2 for disable partial phy power con‐
138              ditions.
139
140       -l, --sas_sl=CO
141              set the Enable SAS Slumber field to CO which is two  bits  wide.
142              The  defined  values  for  CO  are 0 for no change; 1 for manage
143              slumber phy power conditions; 2 for disable  slumber  phy  power
144              conditions.
145
146       -Q, --sata_pa=CO
147              set  the Enable SATA Partial field to CO which is two bits wide.
148              The defined values for CO are 0 for no change; 1 for manage par‐
149              tial  phy power conditions; 2 for disable partial phy power con‐
150              ditions.
151
152       -L, --sata_sl=CO
153              set the Enable SATA Slumber field to CO which is two bits  wide.
154              The  defined  values  for  CO  are 0 for no change; 1 for manage
155              slumber phy power conditions; 2 for disable  slumber  phy  power
156              conditions.
157
158       -v, --verbose
159              increase the verbosity of the output. Can be used multiple times
160
161       -V, --version
162              print the version string and then exit.
163

NOTES

165       Once  an  expander  phy  has been disabled with --op=dis then it can be
166       later re-enabled with a link reset or hard reset (e.g. --op=lr).
167

EXAMPLES

169       See "Examples" section in http://sg.danny.cz/sg/smp_utils.html
170

CONFORMING TO

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

AUTHORS

175       Written by Douglas Gilbert.
176

REPORTING BUGS

178       Report bugs to <dgilbert at interlog dot com>.
179
181       Copyright © 2006-2013 Douglas Gilbert
182       This software is distributed under a FreeBSD license. There is NO  war‐
183       ranty;  not  even  for MERCHANTABILITY or FITNESS FOR A PARTICULAR PUR‐
184       POSE.
185

SEE ALSO

187       smp_utils, smp_discover(smp_utils)
188
189
190
191smp_utils-0.98                     May 2013                 SMP_PHY_CONTROL(8)
Impressum