1. 15 11月, 2005 3 次提交
    • J
      [libata] REQUEST SENSE handling fixes · c6e6e666
      Jeff Garzik 提交于
      - 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
    • J
      [libata] minor fixes, new helpers · 2c13b7ce
      Jeff Garzik 提交于
      - in ata_dev_identify(), don't assume that all devices are either
        ATA or ATAPI.  In the future, this code will see port multipliers
        and other devices.
      - make a debugging printk less verbose
      - add new helper ata_qc_reinit()
      - add new helper BPRINTK() and port flag ATA_FLAG_DEBUGMSG, for
        fine-grained debugging use.
      2c13b7ce
    • J
      [libata] fix bugs in ATAPI padding DMA mapping code · e1410f2d
      Jeff Garzik 提交于
      The ATAPI pad-to-next-32bit-boundary code modifies the scatterlist's
      length variable, sometimes to zero.  x86-64 platform would oops if a
      zero-length scatterlist entry was asked to be mapped.  Work around this
      by ensuring that we never DMA-map a zero length buffer or SG entry.
      e1410f2d
  2. 14 11月, 2005 1 次提交
  3. 11 11月, 2005 1 次提交
  4. 09 11月, 2005 2 次提交
  5. 07 11月, 2005 1 次提交
  6. 06 11月, 2005 1 次提交
  7. 05 11月, 2005 1 次提交
    • J
      [libata] ATAPI pad allocation fixes/cleanup · 6037d6bb
      Jeff Garzik 提交于
      Use ata_pad_{alloc,free} in two drivers, to factor out common code.
      
      Add ata_pad_{alloc,free} to two other drivers, which needed the padding
      but had not been updated.
      6037d6bb
  8. 31 10月, 2005 2 次提交
    • J
      [libata] locking rewrite (== fix) · 005a5a06
      Jeff Garzik 提交于
      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
    • J
      [libata] ata_tf_to_host cleanups · e5338254
      Jeff Garzik 提交于
      Integrate ata_exec() and ata_tf_to_host() into their only caller,
      ata_bus_edd().
      
      Rename ata_tf_to_host_nolock() to ata_tf_to_host().
      
      This makes locking a bit easier to review, and may help pave the way for
      future changes.
      e5338254
  9. 30 10月, 2005 6 次提交
  10. 27 10月, 2005 1 次提交
  11. 25 10月, 2005 1 次提交
  12. 23 10月, 2005 1 次提交
  13. 22 10月, 2005 2 次提交
  14. 19 10月, 2005 3 次提交
  15. 06 10月, 2005 2 次提交
  16. 05 10月, 2005 2 次提交
  17. 04 10月, 2005 2 次提交
    • A
      libata: bitmask based pci init functions for one or two ports · 47a86593
      Alan Cox 提交于
      This redoes the n_ports logic I proposed before as a bitmask.
      ata_pci_init_native_mode is now used with a mask allowing for mixed mode
      stuff later on. ata_pci_init_legacy_port is called with port number and
      does one port now not two. Instead it is called twice by the ata init
      logic which cleans both of them up.
      
      There are stil limits in the original code left over
      
      - IRQ/port mapping for legacy mode should be arch specific values
      - You can have one legacy mode IDE adapter per PCI root bridge on some systems
      - Doesn't handle mixed mode devices yet (but is now a lot closer to it)
      47a86593
    • J
      [libata] improve device scan · 644dd0cc
      Jeff Garzik 提交于
      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
  18. 28 9月, 2005 2 次提交
  19. 16 9月, 2005 2 次提交
  20. 07 9月, 2005 1 次提交
  21. 30 8月, 2005 2 次提交
  22. 29 8月, 2005 1 次提交
    • J
      [libata] license change, other bits · af36d7f0
      Jeff Garzik 提交于
      - 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