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                12 : 22.5 Gbps
77              Default value is 0.
78
79       -m, --min=MI
80              permits the programmed minimum physical link rate to be  changed
81              on the given phy. Permitted values are:
82                0  : no change
83                8  : 1.5 Gbps
84                9  : 3 Gbps
85                10 : 6 Gbps
86                11 : 12 Gbps
87                12 : 22.5 Gbps
88              Default value is 0.
89
90       -o, --op=OP
91              specifies the operation to be performed on the given phy. The OP
92              argument can be either numeric or  a  string.  If  a  number  is
93              given,  it is put into the 'phy operation' field of the request.
94              Allowable strings are abbreviations of which only the first  two
95              characters  need  to match. Each line in the following list con‐
96              tains a numeric value, a string and then a brief explanation:
97                0 : nop  : no operation
98                1 : lr   : link reset
99                2 : hr   : hard reset
100                3 : dis  : disable phy
101                5 : cel  : clear error log
102                6 : ca   : clear affiliation
103                7 : tspss: transmit SATA port selection signal
104                8 : citnl: clear STP I_T nexus loss (bit)
105                9 : sadn : set attached device name
106              The default value is 0 (no operation).
107
108       -p, --phy=ID
109              phy identifier. ID is a value between 0 and 254. Default is 0.
110
111       -P, --pptv=TI
112              partial pathway timeout value. The units  are  microseconds  and
113              the permitted values are between 0 and 15 inclusive. 7 microsec‐
114              onds is recommended by sas2r07.
115
116       -D, --pwrdis=PDC
117              where PDC is the power disable control value. The default  value
118              is  0  which  means no change. The value of 1 is reserved; 2, if
119              supported, instructs the management device server to negate  the
120              POWER  DISABLE  signal;  while  3, if supported, instructs it to
121              assert that signal. This applies to the phy given by  ID  (which
122              defaults to 0).
123
124       -r, --raw
125              send  the response (less the CRC field) to stdout in binary. All
126              error messages are sent to stderr.
127
128       -s, --sa=SAS_ADDR
129              specifies the SAS address of the SMP  target  device.  Typically
130              this  is  an  expander.  This  option  may  not be needed if the
131              SMP_DEVICE has the target's SAS address within it. The  SAS_ADDR
132              is  in  decimal but most SAS addresses are shown in hexadecimal.
133              To give a number in hexadecimal either prefix it  with  '0x'  or
134              put a trailing 'h' on it.
135
136       -q, --sas_pa=CO
137              set  the  Enable SAS Partial field to CO which is two bits wide.
138              The defined values for CO are 0 for no change; 1 for manage par‐
139              tial  phy power conditions; 2 for disable partial phy power con‐
140              ditions.
141
142       -l, --sas_sl=CO
143              set the Enable SAS Slumber field to CO which is two  bits  wide.
144              The  defined  values  for  CO  are 0 for no change; 1 for manage
145              slumber phy power conditions; 2 for disable  slumber  phy  power
146              conditions.
147
148       -Q, --sata_pa=CO
149              set  the Enable SATA Partial field to CO which is two bits wide.
150              The defined values for CO are 0 for no change; 1 for manage par‐
151              tial  phy power conditions; 2 for disable partial phy power con‐
152              ditions.
153
154       -L, --sata_sl=CO
155              set the Enable SATA Slumber field to CO which is two bits  wide.
156              The  defined  values  for  CO  are 0 for no change; 1 for manage
157              slumber phy power conditions; 2 for disable  slumber  phy  power
158              conditions.
159
160       -v, --verbose
161              increase the verbosity of the output. Can be used multiple times
162
163       -V, --version
164              print the version string and then exit.
165

NOTES

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

EXAMPLES

171       See "Examples" section in http://sg.danny.cz/sg/smp_utils.html
172

CONFORMING TO

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

AUTHORS

177       Written by Douglas Gilbert.
178

REPORTING BUGS

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

SEE ALSO

189       smp_utils, smp_discover(smp_utils)
190
191
192
193smp_utils-0.99                   November 2015              SMP_PHY_CONTROL(8)
Impressum