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] [--raw] [--sa=SAS_ADDR] [--verbose] [--version]
12 SMP_DEVICE[,N]
13
15 Sends a SAS Management Protocol (SMP) PHY CONTROL request function to a
16 SMP target. The SMP target is identified by the SMP_DEVICE and the
17 SAS_ADDR. Depending on the interface, the SAS_ADDR may be deduced from
18 the SMP_DEVICE. With one interface there is one SMP_DEVICE per machine
19 so the SMP_DEVICE,N syntax is needed to differentiate between HBAs if
20 there are multiple present.
21
22 The PHY CONTROL function is used to change the state of a phy within a
23 SMP target. SMP targets are typically SAS expanders which have multiple
24 phys. Certain operation values (e.g. 'lr' (link reset) and 'hr' (hard
25 reset)) change the state of the attached phy. Sending such operation
26 values to the phy in the SMP target that is attached to the originator
27 (i.e. the SMP initiator) may lead to a bad response.
28
29 Invoking this utility with no arguments (other than SMP_DEVICE which
30 might be in an environment variable and --sa=SAS_ADDR which might be in
31 an environment variable or not needed) is harmless. In other words a
32 phy's state is only changed when either --max=MA, --min=MI, --op=OP or
33 --pptv=TI is given with a non default value.
34
36 Mandatory arguments to long options are mandatory for short options as
37 well.
38
39 -a, --attached=ADN
40 specifies the attached device name (ADN). The default value is 0
41 . The ADN is in decimal but is likely to be a SAS address which
42 is typically shown in hexadecimal. To specify a number in hexa‐
43 decimal either prefix it with '0x' or put a trailing 'h' on it.
44
45 -E, --expected=EX
46 set the 'expected expander change count' field in the SMP
47 request. The value EX is from 0 to 65535 inclusive with 0 being
48 the default value. When EX is greater than zero then if the
49 value doesn't match the expander change count of the SMP target
50 (i.e. the expander) when the request arrives then the target
51 ignores the request and sets a function result of "invalid
52 expander change count" in the response.
53
54 -h, --help
55 output the usage message then exit.
56
57 -H, --hex
58 output the response in hexadecimal.
59
60 -I, --interface=PARAMS
61 interface specific parameters. In this case "interface" refers
62 to the path through the operating system to the SMP initiator.
63 See the smp_utils man page for more information.
64
65 -M, --max=MA
66 permits the programmed maximum physical link rate to be changed
67 on the gven phy. Permitted values are: 0 -> no change, 8 -> 1.5
68 Gbps, 9 -> 3 Gbps, 10 -> 6 Gbps. Default value is 0.
69
70 -m, --min=MI
71 permits the programmed minimum physical link rate to be changed
72 on the given phy. Permitted values are: 0 -> no change, 8 -> 1.5
73 Gbps, 9 -> 3 Gbps, 10 -> 6 Gbps. Default value is 0.
74
75 -o, --op=OP
76 specifies the operation to be performed on the given phy. The OP
77 argument can be either numeric or a string. If a number is
78 given, it is put into the 'phy operation' field of the request.
79 Allowable strings are abbreviations of which only the first two
80 characters need to match. The supported strings are: 'nop' (no
81 operation), 'lr' (link reset), 'hr' (hard reset), 'dis' (disable
82 phy), 'cel' (clear error log), 'ca' (clear affiliation), 'tspss'
83 (transmit SATA port selection signal), 'citnl' (clear STP I_T
84 nexus loss (bit)), and 'sadn' (set attached device name). The
85 default value is 0 (no operation).
86
87 -p, --phy=ID
88 phy identifier. ID is a value between 0 and 127. Default is 0.
89
90 -P, --pptv=TI
91 partial pathway timeout value. The units are microseconds and
92 the permitted values are between 0 and 15 inclusive. 7 microsec‐
93 onds is recommended by sas2r07.
94
95 -r, --raw
96 send the response to stdout in binary. All error messages are
97 sent to stderr.
98
99 -s, --sa=SAS_ADDR
100 specifies the SAS address of the SMP target device. Typically
101 this is an expander. This option may not be needed if the
102 SMP_DEVICE has the target's SAS address within it. The SAS_ADDR
103 is in decimal but most SAS addresses are shown in hexadecimal.
104 To give a number in hexadecimal either prefix it with '0x' or
105 put a trailing 'h' on it.
106
107 -v, --verbose
108 increase the verbosity of the output. Can be used multiple times
109
110 -V, --version
111 print the version string and then exit.
112
114 The SMP PHY CONTROL function was introduced in SAS-1 .
115
117 Written by Douglas Gilbert.
118
120 Report bugs to <dgilbert at interlog dot com>.
121
123 Copyright © 2006-2008 Douglas Gilbert
124 This software is distributed under a FreeBSD license. There is NO war‐
125 ranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PUR‐
126 POSE.
127
129 smp_utils, smp_discover(smp_utils)
130
131
132
133smp_utils-0.93 January 2008 SMP_PHY_CONTROL(8)