1. 13 Dec, 2005 1 commit
    • Jeff Garzik's avatar
      [libata] mark certain hardware (or drivers) with a no-atapi flag · 50630195
      Jeff Garzik authored
      Some hardware does not support the PACKET command at all.
      Other hardware supports ATAPI, but the driver does something nasty such
      as calling BUG() when an ATAPI command is issued.
      
      For these such cases, we mark them with a new flag, ATA_FLAG_NO_ATAPI.
      
      Initial version contributed by Ben Collins.
      50630195
  2. 04 Dec, 2005 1 commit
  3. 14 Nov, 2005 1 commit
    • Jeff Garzik's avatar
      [libata] REQUEST SENSE handling fixes · c6e6e666
      Jeff Garzik authored
      - Move ATAPI check-condition handling out of the timeout handler
      - Use multi-qc-issue feature to issue REQUEST SENSE ATAPI PACKET
        command upon receiving an ATAPI check-condition.
      
      This cleans things up a lot, and eliminates a nasty recursion bug.
      c6e6e666
  4. 13 Nov, 2005 1 commit
  5. 11 Nov, 2005 1 commit
  6. 10 Nov, 2005 1 commit
  7. 09 Nov, 2005 1 commit
  8. 07 Nov, 2005 1 commit
  9. 31 Oct, 2005 1 commit
    • Jeff Garzik's avatar
      [libata] locking rewrite (== fix) · 005a5a06
      Jeff Garzik authored
      A lot of power packed into a little patch.
      
      This change eliminates the sharing between our controller-wide spinlock
      and the SCSI core's Scsi_Host lock.  As the locking in libata was
      already highly compartmentalized, always referencing our own lock, and
      never scsi_host::host_lock.
      
      As a side effect, this change eliminates a deadlock from calling
      scsi_finish_command() while inside our spinlock.
      005a5a06
  10. 30 Oct, 2005 1 commit
    • Jeff Garzik's avatar
      [libata] change ata_qc_complete() to take error mask as second arg · a7dac447
      Jeff Garzik authored
      The second argument to ata_qc_complete() was being used for two
      purposes: communicate the ATA Status register to the completion
      function, and indicate an error.  On legacy PCI IDE hardware, the latter
      is often implicit in the former.  On more modern hardware, the driver
      often completely emulated a Status register value, passing ATA_ERR as an
      indication that something went wrong.
      
      Now that previous code changes have eliminated the need to use drv_stat
      arg to communicate the ATA Status register value, we can convert it to a
      mask of possible error classes.
      
      This will lead to more flexible error handling in the future.
      a7dac447
  11. 28 Oct, 2005 1 commit
  12. 22 Oct, 2005 1 commit
  13. 18 Oct, 2005 2 commits
  14. 09 Oct, 2005 3 commits
  15. 06 Oct, 2005 1 commit
  16. 05 Oct, 2005 4 commits
  17. 04 Oct, 2005 5 commits
  18. 03 Oct, 2005 1 commit
    • Jeff Garzik's avatar
      [libata] improve device scan · 644dd0cc
      Jeff Garzik authored
      Replace SCSI's legacy "bang at the door" method of probing with one
      directly controlled by the underlying ATA transport layer.
      
      We now only call scsi_scan_target() for devices we find, rather than
      probing every possible channel/id within a certain range.
      644dd0cc
  19. 31 Aug, 2005 1 commit
  20. 30 Aug, 2005 1 commit
    • Jeff Garzik's avatar
      [libata] allow ATAPI to be enabled with new atapi_enabled module option · 1623c81e
      Jeff Garzik authored
      ATAPI is getting close to being ready.  To increase exposure, we enable
      the code in the upstream kernel, but default it to off (present
      behavior).  Users must pass atapi_enabled=1 as a module option (if
      module) or on the kernel command line (if built in) to turn on
      discovery of their ATAPI devices.
      1623c81e
  21. 29 Aug, 2005 1 commit
    • Jeff Garzik's avatar
      [libata] license change, other bits · af36d7f0
      Jeff Garzik authored
      - changes license of all code from OSL+GPL to plain ole GPL
        - except for NVIDIA, who hasn't yet responded about sata_nv
        - copyright holders were already contacted privately
      
      - adds info in each driver about where hardware/protocol docs may be
        obtained
      
      - where I have made major contributions, updated copyright dates
      af36d7f0
  22. 27 Aug, 2005 1 commit
    • Jeff Garzik's avatar
      [libata scsi] fix read/write translation edge cases · 13593265
      Jeff Garzik authored
      Fix bugs for unlikely edge cases noticed by Douglas Gilbert:
      
      - When READ(6)/WRITE(6) sector count == 0, treat it as 256 sectors
      
      - For other READ(x)/WRITE(x), when sector count == 0, error.
        We don't support successfully completing zero-length transfers at
        this time.
      13593265
  23. 11 Aug, 2005 1 commit
  24. 10 Aug, 2005 1 commit
  25. 27 Jun, 2005 1 commit
  26. 22 Jun, 2005 1 commit
  27. 30 May, 2005 1 commit
  28. 15 May, 2005 1 commit
  29. 12 May, 2005 2 commits