diff options
author | Ben Efros <ben@pc-doctor.com> | 2008-11-18 16:31:13 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2009-01-07 12:59:55 -0500 |
commit | 1537e0ad944acf3a4c2b311a646d7993b89499f7 (patch) | |
tree | 991031a1d14089ba4a0794806c9d702d9764941b /include/linux/usb_usual.h | |
parent | a658367dae9dc572480f41817dbe1088a1a049ee (diff) |
USB: storage devices and SAT
Add the SANE SENSE flag to indicate that a device is capable of handling
more than 18-bytes of sense data. This functionality is required for
USB-ATA bridges implementing SAT. A future patch will actually enable this
function for several devices.
The logic behind this is that we can detect support for SANE_SENSE in a few ways:
1) ATA PASS THROUGH (12) or (16) execute successfully
2) SPC-3 or higher is in use
3) A previous CHECK CONDITION occurred with sense format 70-73 and had
a length greater than 18-bytes total
Signed-off-by: Ben Efros <ben@pc-doctor.com>
Signed-off-by: Matthew Dharm <mdharm-usb@one-eyed-alien.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'include/linux/usb_usual.h')
-rw-r--r-- | include/linux/usb_usual.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/include/linux/usb_usual.h b/include/linux/usb_usual.h index d9a3bbe38e6b..998e5cbbf29e 100644 --- a/include/linux/usb_usual.h +++ b/include/linux/usb_usual.h | |||
@@ -52,8 +52,9 @@ | |||
52 | US_FLAG(MAX_SECTORS_MIN,0x00002000) \ | 52 | US_FLAG(MAX_SECTORS_MIN,0x00002000) \ |
53 | /* Sets max_sectors to arch min */ \ | 53 | /* Sets max_sectors to arch min */ \ |
54 | US_FLAG(BULK_IGNORE_TAG,0x00004000) \ | 54 | US_FLAG(BULK_IGNORE_TAG,0x00004000) \ |
55 | /* Ignore tag mismatch in bulk operations */ | 55 | /* Ignore tag mismatch in bulk operations */ \ |
56 | 56 | US_FLAG(SANE_SENSE, 0x00008000) | |
57 | /* Sane Sense (> 18 bytes) */ | ||
57 | 58 | ||
58 | #define US_FLAG(name, value) US_FL_##name = value , | 59 | #define US_FLAG(name, value) US_FL_##name = value , |
59 | enum { US_DO_ALL_FLAGS }; | 60 | enum { US_DO_ALL_FLAGS }; |