1SMP_READ_GPIO(8) SMP_UTILS SMP_READ_GPIO(8)
2
3
4
6 smp_read_gpio - invoke READ GPIO REGISTER SMP function
7
9 smp_read_gpio [--count=CO] [--help] [--hex] [--index=IN] [--inter‐
10 face=PARAMS] [--raw] [--sa=SAS_ADDR] [--type=TY] [--verbose] [--ver‐
11 sion] SMP_DEVICE[,N]
12
14 Sends a SAS Management Protocol (SMP) READ GPIO REGISTER request to a
15 SMP target. The SMP target is identified by the SMP_DEVICE and the
16 SAS_ADDR. Depending on the interface, the SAS_ADDR may be deduced from
17 the SMP_DEVICE. With one interface there is one SMP_DEVICE per machine
18 so the SMP_DEVICE,N syntax is needed to differentiate between HBAs if
19 there are multiple present.
20
21 This function is defined in SFF-8485 ( see www.sffcommittee.com )
22 together with its corresponding WRITE GPIO REGISTER SMP function. The
23 other SMP functions are defined in SAS documents at www.t10.org .
24 SFF-8485 defines a curious device called a "virtual SMP port" that
25 lives in a host bus adapter (HBA) and allows SMP to manipulate the
26 sideband signals on wide internal cables. To stop other initiators in a
27 multi-initiator domain from accessing those sideband signals, the vir‐
28 tual SMP (target) port is not indicated in a DISCOVER response.
29
31 Mandatory arguments to long options are mandatory for short options as
32 well.
33
34 -c, --count=CO
35 where CO is the register count. This is the number of (4 byte)
36 registers to request. The default value is 1.
37
38 -h, --help
39 output the usage message then exit.
40
41 -H, --hex
42 output the response in hexadecimal.
43
44 -i, --index=IN
45 where IN is the register index. This value is origin zero and
46 its default value is 0. If the request succeeds, then --count=CO
47 registers starting from --index=IN of the given --type=TY should
48 be in the response.
49
50 -I, --interface=PARAMS
51 interface specific parameters. In this case "interface" refers
52 to the path through the operating system to the SMP initiator.
53 See the smp_utils man page for more information.
54
55 -r, --raw
56 send the response to stdout in binary. All error messages are
57 sent to stderr.
58
59 -s, --sa=SAS_ADDR
60 specifies the SAS address of the SMP target device. Typically
61 this is an expander. This option may not be needed if the
62 SMP_DEVICE has the target's SAS address within it. The SAS_ADDR
63 is in decimal but most SAS addresses are shown in hexadecimal.
64 To give a number in hexadecimal either prefix it with '0x' or
65 put a trailing 'h' on it.
66
67 -t, --type=TY
68 where TY is the register type. The default value is 0
69 (GPIO_CFG). If the request succeeds, then --count=CO registers
70 starting from --index=IN of the given --type=TY should be in the
71 response.
72
73 -v, --verbose
74 increase the verbosity of the output. Can be used multiple times
75
76 -V, --version
77 print the version string and then exit.
78
80 The SMP READ GPIO REGISTER function is defined in SFF-8485 (see
81 www.sffcommittee.com ) together with its corresponding WRITE GPIO REG‐
82 ISTER SMP function.
83
85 Written by Douglas Gilbert.
86
88 Report bugs to <dgilbert at interlog dot com>.
89
91 Copyright © 2006-2008 Douglas Gilbert
92 This software is distributed under a FreeBSD license. There is NO war‐
93 ranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PUR‐
94 POSE.
95
97 smp_utils, smp_write_gpio(smp_utils)
98
99
100
101smp_utils-0.93 January 2008 SMP_READ_GPIO(8)