Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
SMP_READ_GPIO(8)		   SMP_UTILS		      SMP_READ_GPIO(8)

NAME
       smp_read_gpio - invoke READ GPIO	REGISTER (ENHANCED) SMP	function

SYNOPSIS
       smp_read_gpio  [--count=CO]  [--enhanced] [--help] [--hex] [--index=IN]
       [--interface=PARAMS] [--raw]  [--sa=SAS_ADDR]  [--type=TY]  [--verbose]
       [--version] SMP_DEVICE[,N]

DESCRIPTION
       Sends a SAS Serial Management Protocol (SMP) READ GPIO REGISTER or READ
       GPIO REGISTER ENHANCED function request to an SMP target. The SMP  tar-
       get  is identified by the SMP_DEVICE and	the SAS_ADDR. Depending	on the
       interface, the SAS_ADDR may be deduced from the SMP_DEVICE. The mpt in-
       terface	uses SMP_DEVICE	to identify a HBA (an SMP initiator) and needs
       the additional ,N to differentiate between HBAs if there	 are  multiple
       present.

       This  function  is defined in SFF-8485 (	see www.sffcommittee.com ) to-
       gether with its corresponding WRITE 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	on wide	internal cables. To stop other initiators in a
       multi-initiator	domain from accessing those sideband signals, the vir-
       tual SMP	(target) port is not indicated in a DISCOVER response.

       For notes on the	SMP READ GPIO REGISTER ENHANCED	function see the  sec-
       tion on the ENHANCED FUNCTION below.

OPTIONS
       Mandatory  arguments to long options are	mandatory for short options as
       well.

       -c, --count=CO
	      where CO is the register count. This is the number of  (4	 byte)
	      registers	to request. The	default	value is 1.

       -E, --enhanced
	      sends  a	READ GPIO REGISTER ENHANCED function request (default:
	      send a READ GPIO REGISTER	function request).

       -h, --help
	      output the usage message then exit.

       -H, --hex
	      output the response (less	the CRC	field) in hexadecimal.

       -i, --index=IN
	      where IN is the register index. This value is  origin  zero  and
	      its default value	is 0. If the request succeeds, then --count=CO
	      registers	starting from --index=IN of the	given --type=TY	should
	      be in the	response.

       -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 (less the CRC field) 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).  If the request succeeds, then --count=CO  registers
	      starting from --index=IN of the given --type=TY should be	in the
	      response.

       -v, --verbose
	      increase the verbosity of	the output. Can	be used	multiple times

       -V, --version
	      print the	version	string and then	exit.

ENHANCED FUNCTION
       In the technical	review of SAS-2	prior to standardization in  this  t10
       document:  08-212r8.pdf	(page  871 or 552) there is a comment that the
       READ GPIO REGISTER and WRITE GPIO REGISTER function headers (i.e. first
       4 bytes)	do not comply with all the other SMP functions in SAS-2.

       There  is a suggestion that enhanced variants be	introduced in the next
       version of the SFF-8485 document. If that ever happened then it has not
       been  made  public.  In	SAS-2.1	 both the READ and WRITE GPIO REGISTER
       functions have been made	obsolete and the corresponding ENHANCED	 func-
       tion numbers are	"restricted" for SFF-8485.

       If  the --enhanced option is given then the ENHANCED function number is
       sent; the register type,	index and count	fields (1  byte	each) are  in-
       creased	by  two	 byte  positions  leaving enough space for a compliant
       SAS-2 SMP header	to be built.

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

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

AUTHORS
       Written by Douglas Gilbert.

REPORTING BUGS
       Report bugs to <dgilbert	at interlog dot	com>.

COPYRIGHT
       Copyright (C) 2006-2011 Douglas Gilbert
       This software is	distributed under a FreeBSD license. There is NO  war-
       ranty;  not  even  for MERCHANTABILITY or FITNESS FOR A PARTICULAR PUR-
       POSE.

SEE ALSO
       smp_utils, smp_write_gpio(smp_utils)

smp_utils-0.97			  August 2011		      SMP_READ_GPIO(8)

NAME | SYNOPSIS | DESCRIPTION | OPTIONS | ENHANCED FUNCTION | EXAMPLES | CONFORMING TO | AUTHORS | REPORTING BUGS | COPYRIGHT | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=smp_read_gpio&sektion=8&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help