1SMP_PHY_CONTROL(8) SMP_UTILS SMP_PHY_CONTROL(8)
2
3
4
6 smp_phy_control - invoke PHY CONTROL SMP function
7
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
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
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
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
171 See "Examples" section in http://sg.danny.cz/sg/smp_utils.html
172
174 The SMP PHY CONTROL function was introduced in SAS-1 .
175
177 Written by Douglas Gilbert.
178
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
189 smp_utils, smp_discover(smp_utils)
190
191
192
193smp_utils-0.99 November 2015 SMP_PHY_CONTROL(8)