diff options
author | Alexander Motin <mav@FreeBSD.org> | 2010-02-02 11:09:28 +0000 |
---|---|---|
committer | Alexander Motin <mav@FreeBSD.org> | 2010-02-02 11:09:28 +0000 |
commit | 4cca153030fd8932b30d1fee8ab1d698c75fcdae (patch) | |
tree | 37197ad5ae0872a11e1bc6a7828374ebc3770e16 /sys/cam/cam_ccb.h | |
parent | 56d27fa22b757a15d3996a4b820bd3879f6bfcac (diff) | |
download | src-4cca153030fd8932b30d1fee8ab1d698c75fcdae.tar.gz src-4cca153030fd8932b30d1fee8ab1d698c75fcdae.zip |
- Give ATA/SATA SIMs info about ATAPI packet size, supported by device.
- Make ATA XPT to reject longer SCSI CDBs then supported by device, or
any SCSI CDBs, if device doesn't support ATAPI.
Notes
Notes:
svn path=/head/; revision=203376
Diffstat (limited to 'sys/cam/cam_ccb.h')
-rw-r--r-- | sys/cam/cam_ccb.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/cam/cam_ccb.h b/sys/cam/cam_ccb.h index 4c5adba54189..2810c545f71a 100644 --- a/sys/cam/cam_ccb.h +++ b/sys/cam/cam_ccb.h @@ -823,8 +823,10 @@ struct ccb_trans_settings_ata { u_int valid; /* Which fields to honor */ #define CTS_ATA_VALID_MODE 0x01 #define CTS_ATA_VALID_BYTECOUNT 0x02 +#define CTS_ATA_VALID_ATAPI 0x20 int mode; /* Mode */ u_int bytecount; /* Length of PIO transaction */ + u_int atapi; /* Length of ATAPI CDB */ }; struct ccb_trans_settings_sata { @@ -834,11 +836,13 @@ struct ccb_trans_settings_sata { #define CTS_SATA_VALID_REVISION 0x04 #define CTS_SATA_VALID_PM 0x08 #define CTS_SATA_VALID_TAGS 0x10 +#define CTS_SATA_VALID_ATAPI 0x20 int mode; /* Legacy PATA mode */ u_int bytecount; /* Length of PIO transaction */ int revision; /* SATA revision */ u_int pm_present; /* PM is present (XPT->SIM) */ u_int tags; /* Number of allowed tags */ + u_int atapi; /* Length of ATAPI CDB */ }; /* Get/Set transfer rate/width/disconnection/tag queueing settings */ |