1. 30 10月, 2005 2 次提交
    • J
      [libata] change ata_qc_complete() to take error mask as second arg · a7dac447
      Jeff Garzik 提交于
      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
    • J
      [libata] remove ata_chk_err(), ->check_err() hook. · 0169e284
      Jeff Garzik 提交于
      We now depend on ->tf_read() to provide us with the contents
      of the Error shadow register.
      0169e284
  2. 23 10月, 2005 1 次提交
  3. 21 10月, 2005 1 次提交
  4. 06 10月, 2005 3 次提交
  5. 04 10月, 2005 1 次提交
    • B
      [PATCH] libata: Marvell SATA support (DMA mode) (resend: v0.22) · 31961943
      Brett Russ 提交于
      This is my libata compatible low level driver for the Marvell SATA
      family.  Currently it runs in DMA mode on a 6081 chip.
      
      The 5xxx series parts are not yet DMA capable in this driver because
      the registers have differences that haven't been accounted for yet.
      Basically, I'm focused on the 6xxx series right now.  I apologize for
      those seeing problems on the 5xxx series, I've not had a chance to
      look at those problems yet.
      
      For those curious, the previous bug causing the SCSI timeout and
      subsequent panics was caused by an improper clear of hc_irq_cause in
      mv_host_intr().
      
      This version is running well in my environment (6081 chips,
      with/without SW raid1) and is showing equal or better performance
      compared to the Marvell driver (mv_sata) in my initial tests (timed
      dd's of reads/writes to/from memory/disk).
      
      I still need to look at the causes of occasional problems such as this:
      
      ata11: translating stat 0x35 err 0x00 to sense
      ata11: status=0x35 { DeviceFault SeekComplete CorrectedError Error }
      SCSI error : <10 0 0 0> return code = 0x8000002
      Current sda: sense key Hardware Error
      end_request: I/O error, dev sda, sector 3155010
      
      and this, seen at init time:
      
      ATA: abnormal status 0x80 on port 0xE093911C
      
      but they aren't showstoppers.
      Signed-off-by: NBrett Russ <russb@emc.com>
      Signed-off-by: NJeff Garzik <jgarzik@pobox.com>
      31961943
  6. 09 9月, 2005 1 次提交
    • J
      [libata] minor fixes · 8add7885
      Jeff Garzik 提交于
      * sata_mv: remove pci_intx(), now that the same function is in PCI core
      * sata_sis: fix variable initialization bug, trim trailing whitespace
      8add7885
  7. 07 9月, 2005 2 次提交