SMP_WRITE_GPIO

Section: SMP_UTILS (8)
Updated: January 2008
Index Return to Main Contents
 

NAME

smp_write_gpio - invoke WRITE GPIO REGISTER SMP function  

SYNOPSIS

smp_write_gpio [--count=CO] [--data=H,H...] [--help] [--hex] [--index=IN] [--interface=PARAMS] [--raw] [--sa=SAS_ADDR] [--type=TY] [--verbose] [--version] SMP_DEVICE[,N]  

DESCRIPTION

Sends a SAS Management Protocol (SMP) WRITE GPIO REGISTER request function to a SMP target. The SMP target is identified by the SMP_DEVICE and the SAS_ADDR. Depending on the interface, the SAS_ADDR may be deduced from the SMP_DEVICE. With one interface there is one SMP_DEVICE per machine so the SMP_DEVICE,N syntax is needed to differentiate between HBAs if there are multiple present.

This function is defined in SFF-8485 ( see www.sffcommittee.com ) together with its corresponding READ GPIO REGISTER SMP function. The other SMP functions are defined in SAS documents at www.t10.org . SFF-8485 defines a curious device called a "virtual SMP port" that lives in a host bus adapter (HBA) and allows SMP to manipulate the sideband signals in wide internal cables. To stop other initiators in a multi-initiator domain from accessing those sideband signals, the virtual SMP (target) port is not indicated in a DISCOVER response.

-c, --count=CO
where CO is the register count. This is the number of (4 byte) registers to send. The default value is 1.
-d, --data=H,H...
this option supplies a comma separated list of hexadecimal bytes (0 to ff inclusive) that will be used as write data in the WRITE GPIO REGISTER request. The number of bytes supplied should be four times --count=C The first 4 bytes will become the first register written.
-d, --data=-
reads string of hexadecimal bytes from stdin. Spaces, tabs and line feeds additionally are permitted as separators.
-h, --help
output the usage message then exit.
-H, --hex
output the response in hexadecimal.
-i, --index=IN
where IN is the register index. This value is origin zero and its default value is 0. The request will send --count=CO registers starting from --index=IN of the given --type=TY.
-I, --interface=PARAMS
interface specific parameters. In this case "interface" refers to the path through the operating system to the SMP initiator. See the smp_utils man page for more information.
-r, --raw
send the response to stdout in binary. All error messages are sent to stderr.
-s, --sa=SAS_ADDR
specifies the SAS address of the SMP target device. Typically this is an expander. This option may not be needed if the SMP_DEVICE has the target's SAS address within it. The SAS_ADDR is in decimal but most SAS addresses are shown in hexadecimal. To give a number in hexadecimal either prefix it with '0x' or put a trailing 'h' on it.
-t, --type=TY
where TY is the register type. The default value is 0 (GPIO_CFG). The request will send --count=CO registers starting from --index=IN of the given --type=TY.
-v, --verboseincrease the verbosity of the output. Can be used multiple times.
-V, --version
print the version string and then exit.
 

CONFORMING TO

The SMP WRITE GPIO REGISTER function is defined in SFF-8485 (see www.sffcommittee.com ) together with its corresponding READ GPIO REGISTER SMP function.  

AUTHORS

Written by Douglas Gilbert.  

REPORTING BUGS

Report bugs to <dgilbert at interlog dot com>.  

COPYRIGHT

Copyright © 2006-2008 Douglas Gilbert
This software is distributed under a FreeBSD license. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  

SEE ALSO

smp_utils, smp_read_gpio(smp_utils)


 

Index

NAME
SYNOPSIS
DESCRIPTION
CONFORMING TO
AUTHORS
REPORTING BUGS
COPYRIGHT
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 05:34:30 GMT, December 24, 2015