diff options
author | mav <mav@FreeBSD.org> | 2009-11-24 12:47:58 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2009-11-24 12:47:58 +0000 |
commit | b24d810911ca1e67681fbadffbba2d75d47fb1cf (patch) | |
tree | 31e803922647a1513999571920a38125262f4b93 /sys/cam/cam_ccb.h | |
parent | cdd3b43ca83628c61d1cbcb1a11c9ade61daf720 (diff) | |
download | FreeBSD-src-b24d810911ca1e67681fbadffbba2d75d47fb1cf.zip FreeBSD-src-b24d810911ca1e67681fbadffbba2d75d47fb1cf.tar.gz |
MFp4:
- Extend XPT-SIM transfer settings control API. Now it allows to report to
SATA SIM number of tags supported by each device, implement ATA mode and
SATA revision negotiation for both SATA and PATA SIMs.
- Make ahci(4) and siis(4) to use submitted maximum tag number, when
scheduling requests. It allows to support NCQ on devices with lower tags
count then controller supports.
- Make PMP driver to report attached devices connection speeds.
- Implement ATA mode negotiation between user settings, device and
controller capabilities.
Diffstat (limited to 'sys/cam/cam_ccb.h')
-rw-r--r-- | sys/cam/cam_ccb.h | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/sys/cam/cam_ccb.h b/sys/cam/cam_ccb.h index 815da9d..5cae7d3 100644 --- a/sys/cam/cam_ccb.h +++ b/sys/cam/cam_ccb.h @@ -819,19 +819,23 @@ struct ccb_trans_settings_sas { struct ccb_trans_settings_ata { u_int valid; /* Which fields to honor */ #define CTS_ATA_VALID_MODE 0x01 -#define CTS_ATA_VALID_BYTECOUNT 0x04 - u_int32_t mode; +#define CTS_ATA_VALID_BYTECOUNT 0x02 + int mode; /* Mode */ u_int bytecount; /* Length of PIO transaction */ }; struct ccb_trans_settings_sata { u_int valid; /* Which fields to honor */ -#define CTS_SATA_VALID_SPEED 0x01 -#define CTS_SATA_VALID_PM 0x02 -#define CTS_SATA_VALID_BYTECOUNT 0x04 - u_int32_t bitrate; /* Mbps */ - u_int pm_present; /* PM is present (XPT->SIM) */ +#define CTS_SATA_VALID_MODE 0x01 +#define CTS_SATA_VALID_BYTECOUNT 0x02 +#define CTS_SATA_VALID_REVISION 0x04 +#define CTS_SATA_VALID_PM 0x08 +#define CTS_SATA_VALID_TAGS 0x10 + int mode; /* Legacy PATA mode */ u_int bytecount; /* Length of PIO transaction */ + u_int revision; /* SATA revision */ + u_int pm_present; /* PM is present (XPT->SIM) */ + u_int tags; /* Number of allowed tags */ }; /* Get/Set transfer rate/width/disconnection/tag queueing settings */ |