|
1 | 1 | /* |
2 | | - * Copyright (c) 2007-2014 Douglas Gilbert. |
| 2 | + * Copyright (c) 2007-2015 Douglas Gilbert. |
3 | 3 | * All rights reserved. |
4 | 4 | * Use of this source code is governed by a BSD-style |
5 | 5 | * license that can be found in the BSD_LICENSE file. |
|
17 | 17 | #endif |
18 | 18 |
|
19 | 19 |
|
20 | | -const char * sg_lib_version_str = "2.10 20141225"; /* spc5r00a, sbc4r02 */ |
| 20 | +const char * sg_lib_version_str = "2.11 20150115"; /* spc5r02, sbc4r02 */ |
21 | 21 |
|
22 | 22 |
|
23 | 23 | /* indexed by pdt; those that map to own index do not decay */ |
@@ -105,7 +105,7 @@ struct sg_lib_value_name_t sg_lib_normal_opcodes[] = { |
105 | 105 | {0x39, 0, "Compare"}, /* obsolete in SPC-4 r11 */ |
106 | 106 | {0x3a, 0, "Copy and verify"}, /* obsolete in SPC-4 r11 */ |
107 | 107 | {0x3b, 0, "Write buffer"}, |
108 | | - {0x3c, 0, "Read buffer"}, |
| 108 | + {0x3c, 0, "Read buffer(10)"}, |
109 | 109 | {0x3d, 0, "Update block"}, |
110 | 110 | {0x3e, 0, "Read long(10)"}, /* SBC-3 r31 recommends Read long(16) */ |
111 | 111 | {0x3f, 0, "Write long(10)"}, /* SBC-3 r31 recommends Write long(16) */ |
@@ -170,8 +170,9 @@ struct sg_lib_value_name_t sg_lib_normal_opcodes[] = { |
170 | 170 | {0x92, PDT_TAPE, "Locate(16)"}, |
171 | 171 | {0x93, 0, "Write same(16)"}, |
172 | 172 | {0x93, PDT_TAPE, "Erase(16)"}, |
173 | | - {0x94, PDT_ZBC, "Zoning out"}, /* new sbc4r04, has service actions */ |
174 | | - {0x95, PDT_ZBC, "Zoning in"}, /* new sbc4r04, has service actions */ |
| 173 | + {0x94, PDT_ZBC, "ZBC out"}, /* new sbc4r04, has service actions */ |
| 174 | + {0x95, PDT_ZBC, "ZBC in"}, /* new sbc4r04, has service actions */ |
| 175 | + {0x9b, 0, "Read buffer(16)"}, /* added spc5r02 */ |
175 | 176 | {0x9c, 0, "Write atomic(16)"}, |
176 | 177 | {0x9d, 0, "Service action bidirectional"}, /* added spc4r35 */ |
177 | 178 | {0x9e, 0, "Service action in(16)"}, |
@@ -549,7 +550,7 @@ struct sg_lib_value_name_t sg_lib_zoning_in_arr[] = { |
549 | 550 |
|
550 | 551 | /* A conveniently formatted list of SCSI ASC/ASCQ codes and their |
551 | 552 | * corresponding text can be found at: www.t10.org/lists/asc-num.txt |
552 | | - * The following should match asc-num.txt dated 20141224 */ |
| 553 | + * The following should match asc-num.txt dated 20150103 */ |
553 | 554 |
|
554 | 555 | #ifdef SG_SCSI_STRINGS |
555 | 556 | struct sg_lib_asc_ascq_range_t sg_lib_asc_ascq_range[] = |
@@ -662,6 +663,14 @@ struct sg_lib_asc_ascq_t sg_lib_asc_ascq[] = |
662 | 663 | {0x0B,0x07,"Warning - degraded power to non-volatile cache"}, |
663 | 664 | {0x0B,0x08,"Warning - power loss expected"}, |
664 | 665 | {0x0B,0x09,"Warning - device statistics notification active"}, |
| 666 | + {0x0B,0x0A,"Warning - high critical temperature limit exceeded"}, |
| 667 | + {0x0B,0x0B,"Warning - low critical temperature limit exceeded"}, |
| 668 | + {0x0B,0x0C,"Warning - high operating temperature limit exceeded"}, |
| 669 | + {0x0B,0x0D,"Warning - low operating temperature limit exceeded"}, |
| 670 | + {0x0B,0x0E,"Warning - high critical humidity limit exceeded"}, |
| 671 | + {0x0B,0x0F,"Warning - low critical humidity limit exceeded"}, |
| 672 | + {0x0B,0x10,"Warning - high operating humidity limit exceeded"}, |
| 673 | + {0x0B,0x11,"Warning - low operating humidity limit exceeded"}, |
665 | 674 | {0x0C,0x00,"Write error"}, |
666 | 675 | {0x0C,0x01,"Write error - recovered with auto reallocation"}, |
667 | 676 | {0x0C,0x02,"Write error - auto reallocation failed"}, |
@@ -830,6 +839,7 @@ struct sg_lib_asc_ascq_t sg_lib_asc_ascq[] = |
830 | 839 | {0x26,0x10,"Data decryption key fail limit reached"}, |
831 | 840 | {0x26,0x11,"Incomplete key-associated data set"}, |
832 | 841 | {0x26,0x12,"Vendor specific key reference not found"}, |
| 842 | + {0x26,0x13,"Application tag mode page is invalid"}, |
833 | 843 | {0x27,0x00,"Write protected"}, |
834 | 844 | {0x27,0x01,"Hardware write protected"}, |
835 | 845 | {0x27,0x02,"Logical unit software write protected"}, |
|
0 commit comments