| .TH SG_GET_CONFIG "8" "December 2012" "sg3_utils\-1.35" SG3_UTILS |
| .SH NAME |
| sg_get_config \- send SCSI GET CONFIGURATION command (MMC\-4 +) |
| .SH SYNOPSIS |
| .B sg_get_config |
| [\fI\-\-brief\fR] [\fI\-\-current\fR] [\fI\-\-help\fR] [\fI\-\-hex\fR] |
| [\fI\-\-inner\-hex\fR] [\fI\-\-list\fR] [\fI\-\-raw\fR] [\fI\-\-readonly\fR] |
| [\fI\-\-rt=RT\fR] [\fI\-\-starting=FC\fR] [\fI\-\-verbose\fR] |
| [\fI\-\-version\fR] \fIDEVICE\fR |
| .SH DESCRIPTION |
| .\" Add any additional description here |
| .PP |
| Sends a SCSI GET CONFIGURATION command to \fIDEVICE\fR and decodes the |
| response. The response includes the features and profiles of the device. |
| Typically these devices are CD, DVD, HD\-DVD and BD players that may (but |
| not necessarily) have media in them. These devices may well be connected via |
| ATAPI, USB or IEEE 1394 transports. In such cases they are "SCSI" devices |
| only in the sense that they use the "Multi\-Media command" set (MMC). |
| MMC is a specialized SCSI command set whose definition can be found |
| at https://www.t10.org . |
| .PP |
| This utility is based on the MMC\-4 and later draft standards. See section |
| 5 on "Features and Profile for Multi_Media devices" for more information on |
| specific feature parameters and profiles. The manufacturer's product manual |
| may also be useful. |
| .PP |
| Since modern DVD and BD writers support many features and profiles, the |
| decoded output from this utility can be large. There are various ways to cut |
| down the output. If the \fI\-\-brief\fR option is used only the feature names |
| are shown and the feature parameters are not decoded. Alternatively if only |
| one feature is of interest then this combination of options is |
| appropriate: "\-\-rt=2 \-\-starting=\fIFC\fR". Another possibility is to show |
| only the features that are relevant to the media in the drive (i.e. "current") |
| with the "\-\-rt=1" option. |
| .SH OPTIONS |
| Arguments to long options are mandatory for short options as well. |
| .TP |
| \fB\-b\fR, \fB\-\-brief\fR |
| show the feature names but don't decode the parameters of those features. |
| When used with \fI\-\-list\fR outputs known feature names but not known |
| profile names. |
| .TP |
| \fB\-c\fR, \fB\-\-current\fR |
| output features marked as current. This option is equivalent to '\-\-rt=1'. |
| .TP |
| \fB\-h\fR, \fB\-\-help\fR |
| output the usage message then exit. |
| .TP |
| \fB\-H\fR, \fB\-\-hex\fR |
| output the response in hex (don't decode response). |
| .TP |
| \fB\-i\fR, \fB\-\-inner\-hex\fR |
| decode to the feature name level then output each feature's data in hex. |
| .TP |
| \fB\-l\fR, \fB\-\-list\fR |
| list all known feature and profile names. Ignore the device name (if given). |
| Simply lists the feature names and profiles (followed by their hex values) |
| that this utility knows about. If \fI\-\-brief\fR is also given then only |
| feature names are listed. |
| .TP |
| \fB\-q\fR, \fB\-\-readonly\fR |
| opens the DEVICE read\-only rather than read\-write which is the |
| default. The Linux sg driver needs read\-write access for the SCSI |
| GET CONFIGURATION command but other access methods may require |
| read\-only access. |
| .TP |
| \fB\-r\fR, \fB\-\-rt\fR=\fIRT\fR |
| where \fIRT\fR is the field of that name in the GET CONFIGURATION cdb. |
| Allowable values are 0, 1, 2, or 3 . The command's action also depends on |
| the value given to the \fI\-\-starting=FC\fR option. The default value is 0. |
| When \fIRT\fR is 0 then all features, regardless of currency, are |
| returned (whose feature code is greater than or equal to \fIFC\fR given |
| to \fI\-\-starting=\fR). When \fIRT\fR is 1 then all current features are |
| returned (whose feature code is greater than or equal to \fIFC\fR). When |
| \fIRT\fR is 2 then the feature whose feature code is equal to \fIFC\fR, |
| if any, is returned. When \fIRT\fR is 3 the response is reserved (probably |
| yields an "illegal field in cdb" error). To simplify the meanings of the |
| \fIRT\fR values are: |
| .br |
| \fB0\fR : all features, current on not |
| .br |
| \fB1\fR : only current features |
| .br |
| \fB2\fR : only feature whose code is \fIFC\fR |
| .br |
| \fB3\fR : reserved |
| .br |
| .TP |
| \fB\-R\fR, \fB\-\-raw\fR |
| output response in binary (to stdout). Note that the short form is \fI\-R\fR |
| unlike most other utilities in this package that use \fI\-r\fR for this |
| action. |
| .TP |
| \fB\-s\fR, \fB\-\-starting\fR=\fIFC\fR |
| where \fIFC\fR is the feature code value. This option works closely with |
| the \fI\-\-rt=RT\fR option. The \fIFC\fR value is in the range 0 to |
| 65535 (0xffff) inclusive. Its default value is 0. A value prefixed |
| with "0x" (or a trailing 'h') is interpreted as hexadecimal. |
| .TP |
| \fB\-v\fR, \fB\-\-verbose\fR |
| increase the level of verbosity, (i.e. debug output). |
| .TP |
| \fB\-V\fR, \fB\-\-version\fR |
| print the version string and then exit. |
| .SH NOTES |
| There are multiple versions of the MMC (draft) standards: MMC [1997], |
| MMC\-2 [2000], MMC\-3 [2002], MMC\-4 and MMC\-5. The first three are now |
| ANSI INCITS standards with the year they became standards shown in |
| brackets. The draft immediately prior to standardization can |
| be found at https://www.t10.org . In the initial MMC standard there |
| was no GET CONFIGURATION command and the relevant information was |
| obtained from the "CD capabilities and mechanical status mode |
| page" (mode page 0x2a). It was later renamed the "MM capabilities and |
| mechanical status mode page" and has been made obsolete in MMC\-4 and |
| MMC\-5. The GET CONFIGURATION command was introduced in MMC\-2 and has |
| become a replacement for that mode page. New features such as support |
| for "BD" (blue ray) media type can only be found by using the |
| GET CONFIGURATION command. Hence older CD players may not support |
| the GET CONFIGURATION command in which case the "MM capabilities ..." |
| mode page can be checked with sdparm(8), sginfo(8) or sg_modes(8). |
| .PP |
| In the 2.4 series of Linux kernels the \fIDEVICE\fR must be |
| a SCSI generic (sg) device. In the 2.6 series block devices |
| can also be specified. For example "sg_get_config /dev/hdc" |
| will work in the 2.6 series kernels as long as /dev/hdc is |
| an ATAPI device. In the 2.6 series external DVD writers attached |
| via USB could be queried with "sg_get_config /dev/scd1" for example. |
| .SH EXIT STATUS |
| The exit status of sg_get_config is 0 when it is successful. Otherwise see |
| the sg3_utils(8) man page. |
| .SH AUTHORS |
| Written by Douglas Gilbert. |
| .SH "REPORTING BUGS" |
| Report bugs to <dgilbert at interlog dot com>. |
| .SH COPYRIGHT |
| Copyright \(co 2004\-2012 Douglas Gilbert |
| .br |
| This software is distributed under a BSD\-2\-Clause license. There is NO |
| warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
| .SH "SEE ALSO" |
| .B sginfo(8), sg_modes(8), sg_inq(8), sg_prevent(8), |
| .B sg_start(8) [all in sg3_utils], |
| .B sdparm(8) |