DragonFly- master sys/dev/disk/ahci TODO ahci.c ahci.h ahci_cam.c atascsi.h

Matthew Dillon dillon at crater.dragonflybsd.org
Sat Jun 6 10:53:03 PDT 2009

commit fd8bd95799cbcda4b7a5a16d41683d25ffc69422
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Sat Jun 6 10:44:31 2009 -0700

    AHCI - Hot Plug support, ATAPI IDENTIFY, CAM bus scan issues, etc
    * Split some code out of ahci_port_alloc() into its own procedure,
      ahci_port_init().  This procedure will be used to init/reinit a
      port for Hot-Plug.
    * Do not free ports which have device problems, hot-plug can still
      operate on such ports.
    * Re-detect ap_type when resetting a port.  Create a helper routine
      called ahci_port_signature_detect() to reduce code duplication.
    * Augment ahci_cam_changed() so hot-plug can tell it whether a device
      is being added or removed.
    * Scan the CAM bus asynchronously to fix reentrancy issues.
    * Consolidate most of the ATAPI and DISK probe code back into one routine.
      Use ATA_C_ATAPI_IDENTIFY when probing an ATAPI device and also probe
      for NCQ on ATAPI devices (though nobody knows if it would actually work
      if an ATAPI device said it could do it).
    * Do not try to set the security freeze-lock if the identify info
      indicates that the freeze-lock is already active.  This fixes a
      command timeout that occurs when re-plugging devices whos freeze-lock
      remains intact from a previous use.
    * Add defines for ATA_C_ATAPI_IDENTIFY and ATA_SECURE_* identify bits.

Summary of changes:
 sys/dev/disk/ahci/TODO       |   23 ++++--
 sys/dev/disk/ahci/ahci.c     |  178 +++++++++++++++++++++++++++-----------
 sys/dev/disk/ahci/ahci.h     |    5 +-
 sys/dev/disk/ahci/ahci_cam.c |  199 ++++++++++++++++++++++++++---------------
 sys/dev/disk/ahci/atascsi.h  |    3 +
 5 files changed, 276 insertions(+), 132 deletions(-)


DragonFly BSD source repository

More information about the Commits mailing list