看板 DFBSD_commit 關於我們 聯絡資訊
commit b4189e5ea6046a55933abfaf0db2300403fe01f3 Author: Matthew Dillon <dillon@apollo.backplane.com> Date: Thu Jun 4 22:37:24 2009 -0700 AHCI Driver - add initial ATAPI support, suppy fake SENSE for DISK support. Implement basic ATAPI probe and SCSI pass-through. ATAPI differs from DISK in that all commands are packetized and follow the SCSI standard for the most part. ATAPI does not follow the SCSI standard precisely. Many ATAPI implementations just can't handle READ_6, WRITE_6, or modern INQUIRY commands. To deal with this the following conversions are done by the layer: READ_6 -> READ_10 WRITE_6 -> WRITE_10 INQUIRY -> truncate length field to SHORT_INQUIRY_LENGTH and clear the SI_EVPD bit in the byte2 field if the page_code being requested is 0 (basic inquiry). Continue to work on the DISK support. If an error occurs fake AUTOSENSE data is constructed (is there a way to obtain real sense data?). Summary of changes: sys/dev/disk/ahci/ahci_cam.c | 456 +++++++++++++++++++++++++++++++++--------- sys/dev/disk/ahci/atascsi.h | 4 +- 2 files changed, 365 insertions(+), 95 deletions(-) http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/b4189e5ea6046a55933abfaf0db2300403fe01f3 -- DragonFly BSD source repository