.TH SG_SAT_IDENTIFY "8" "November 2014" "sg3_utils\-1.40" SG3_UTILS
.SH NAME
sg_sat_identify \- send ATA IDENTIFY DEVICE command via SCSI to ATA
Translation (SAT) layer
.SH SYNOPSIS
.B sg_sat_identify
[\fI\-\-ck_cond\fR] [\fI\-\-extend\fR] [\fI\-\-help\fR] [\fI\-\-hex\fR]
[\fI\-\-indent\fR] [\fI\-\-len=\fR{16|12}] [\fI\-\-packet\fR] [\fI\-\-raw\fR]
[\fI\-\-readonly\fR] [\fI\-\-verbose\fR] [\fI\-\-version\fR] \fIDEVICE\fR
.SH DESCRIPTION
.\" Add any additional description here
.PP
This utility sends either an ATA IDENTIFY DEVICE command or an ATA IDENTIFY
PACKET DEVICE command to \fIDEVICE\fR and outputs the response. The devices
that respond to these commands are ATA disks and ATAPI devices respectively.
Rather than send these commands directly to the device they are sent via a
SCSI transport which is assumed to contain a SCSI to ATA Translation (SAT)
Layer (SATL). The SATL may be in an operating system driver, in host bus
adapter firmware or in some external enclosure.
.PP
The SAT standard (SAT ANSI INCITS 431\-2007, prior draft: sat\-r09.pdf at
www.t10.org) defines two SCSI "ATA PASS\-THROUGH" commands: one using a 16
byte "cdb" and the other with a 12 byte cdb. This utility defaults to using
the 16 byte cdb variant. SAT\-2 is also a standard: SAT\-2 ANSI INCITS
465\-2010 and the draft prior to that is sat2r09.pdf . The SAT/-3 project
has started and the most recent draft is sat3r01.pdf .
.SH OPTIONS
Arguments to long options are mandatory for short options as well.
.TP
\fB\-c\fR, \fB\-\-ck_cond\fR
sets the CK_COND bit in the ATA PASS\-THROUGH SCSI cdb. The
default setting is clear (i.e. 0). When set the SATL should yield a
sense buffer containing a ATA Result descriptor irrespective of whether
the command succeeded or failed. When clear the SATL should only yield
a sense buffer containing a ATA Result descriptor if the command failed.
.TP
\fB\-e\fR, \fB\-\-extend\fR
sets the EXTEND bit in the ATA PASS\-THROUGH SCSI cdb. The
default setting is clear (i.e. 0). When set a 48 bit LBA command is sent
to the device. This option has no effect when \fI\-\-len=12\fR.
.TP
\fB\-h\fR, \fB\-\-help\fR
outputs the usage message summarizing command line options
then exits. Ignores \fIDEVICE\fR if given.
.TP
\fB\-H\fR, \fB\-\-hex\fR
outputs the ATA IDENTIFY (PACKET) DEVICE response in hex. The default
action (i.e. without any '\-H' options) is to output the response in
hex, grouped in 16 bit words (i.e. the ATA standard's preference).
When given once, the response is output in ASCII hex bytes (i.e. the
SCSI standard's preference). When given twice (i.e. '\-HH') the output
is in hex, grouped in 16 bit words, the same as the default but without
a header. When given thrice (i.e. '\-HHH') the output is in hex, grouped in
16 bit words, in a format that is acceptable for 'hdparm \-\-Istdin' to
process. '\-HHHH' simply outputs hex data bytes, space separated, 16 per
line.
.TP
\fB\-i\fR, \fB\-\-indent\fR
outputs the World Wide Name (WWN) of the device. This should be a NAA\-5
64 bit number. It is output in hex prefixed with "0x". If not available
then "0x0000000000000000" is output. The equivalent for a SCSI disk (i.e. its
logical unit name) can be found with "sg_vpd \-ii".
.TP
\fB\-l\fR, \fB\-\-len\fR={16|12}
this is the length of the SCSI cdb used for the ATA PASS\-THROUGH commands.
The argument can either be 16 or 12. The default is 16. The larger cdb
size is needed for 48 bit LBA addressing of ATA devices. On the other
hand some SCSI transports cannot convey SCSI commands longer than 12 bytes.
.TP
\fB\-p\fR, \fB\-\-packet\fR
send an ATA IDENTIFY PACKET DEVICE command (via the SATL). The default
action is to send an ATA IDENTIFY DEVICE command.
.TP
\fB\-r\fR, \fB\-\-raw\fR
output the ATA IDENTIFY (PACKET) DEVICE response in binary. The output
should be piped to a file or another utility when this option is used.
The binary is sent to stdout, and errors are sent to stderr.
.TP
\fB\-R\fR, \fB\-\-readonly\fR
open the \fIDEVICE\fR read\-only (e.g. in Unix with the O_RDONLY flag).
The default is to open it read\-write.
.TP
\fB\-v\fR, \fB\-\-verbose\fR
increases the level or verbosity.
.TP
\fB\-V\fR, \fB\-\-version\fR
print out version string
.SH NOTES
Since the response to the IDENTIFY (PACKET) DEVICE command is very
important for the correct use of an ATA(PI) device (and is typically the
first command sent), a SATL should provide an ATA Information VPD page
which contains the similar information.
.PP
The SCSI ATA PASS\-THROUGH (12) command's opcode is 0xa1 and it clashes with
the MMC set's BLANK command used by cd/dvd writers. So a SATL in front
of an ATAPI device that uses MMC (i.e. has peripheral device type 5)
probably should treat opcode 0xa1 as a BLANK command and send it through
to the cd/dvd drive. The ATA PASS\-THROUGH (16) command's opcode (0x85)
does not clash with anything so it is a better choice.
.PP
Prior to Linux kernel 2.6.29 USB mass storage limited sense data to 18 bytes
which made the \fB\-\-ck_cond\fR option yield strange (truncated) results.
.SH EXIT STATUS
The exit status of sg_sat_identify is 0 when it is successful. Otherwise
see the sg3_utils(8) man page.
.SH AUTHOR
Written by Douglas Gilbert
.SH "REPORTING BUGS"
Report bugs to <dgilbert at interlog dot com>.
.SH COPYRIGHT
Copyright \(co 2006\-2014 Douglas Gilbert
.br
This software is distributed under a FreeBSD license. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
.SH "SEE ALSO"
.B sg_vpd(sg3_utils), sg_inq(sg3_utils), sdparm(sdparm), hdparm(hdparm)
