1. 11 3月, 2008 3 次提交
  2. 05 3月, 2008 2 次提交
  3. 04 3月, 2008 2 次提交
  4. 01 3月, 2008 1 次提交
  5. 29 2月, 2008 1 次提交
  6. 26 2月, 2008 2 次提交
  7. 24 2月, 2008 8 次提交
    • R
      libata-core: fix kernel-doc warning · 4cdfa1b3
      Randy Dunlap 提交于
      Fix libata-core kernel-doc warning:
      Warning(linux-2.6.25-rc2-git6//drivers/ata/libata-core.c:168): No description found for parameter 'ap'
      Signed-off-by: NRandy Dunlap <randy.dunlap@oracle.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      4cdfa1b3
    • A
      sata_fsl: fix build with ATA_VERBOSE_DEBUG · b1f5dc48
      Anton Vorontsov 提交于
      This patch fixes build and few warnings when ATA_VERBOSE_DEBUG
      is defined:
      
        CC      drivers/ata/sata_fsl.o
      drivers/ata/sata_fsl.c: In function ‘sata_fsl_fill_sg’:
      drivers/ata/sata_fsl.c:338: warning: format ‘%x’ expects type ‘unsigned int’, but argument 3 has type ‘void *’
      drivers/ata/sata_fsl.c:338: warning: format ‘%x’ expects type ‘unsigned int’, but argument 4 has type ‘struct prde *’
      drivers/ata/sata_fsl.c: In function ‘sata_fsl_qc_issue’:
      drivers/ata/sata_fsl.c:459: error: ‘csr_base’ undeclared (first use in this function)
      drivers/ata/sata_fsl.c:459: error: (Each undeclared identifier is reported only once
      drivers/ata/sata_fsl.c:459: error: for each function it appears in.)
      drivers/ata/sata_fsl.c: In function ‘sata_fsl_freeze’:
      drivers/ata/sata_fsl.c:525: error: ‘csr_base’ undeclared (first use in this function)
      make[2]: *** [drivers/ata/sata_fsl.o] Error 1
      Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      b1f5dc48
    • S
      [libata] ahci: AMD SB700/SB800 SATA support 64bit DMA · e39fc8c9
      Shane Huang 提交于
      SB700 SATA controller can support 64 bit DMA, the previous commit
      badc2341 was added with
      careless reference to SB600, which should be modified by this patch.
      Signed-off-by: NShane Huang <shane.huang@amd.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      e39fc8c9
    • M
      libata-pmp: clear hob for pmp register accesses · 39f25e70
      Mark Lord 提交于
      >> Mark Lord wrote:
      >>> Tejun, I've added PMP to sata_mv, and am now trying to get it
      >>> to work with a Marvell PM attached.
      
      > >>> And the behaviour I see is very bizarre.
      
      >>> After hard+soft resets, the PM signature is found,
      >>> and libata interrogates the PM registers.
      >>>
      >>> It successfully reads register 0, and then register 1.
      >>> But all subsequent registers read out (incorrectly) as zeros.
      ...
      
      This behavior has been confirmed by Marvell with a SATA analyzer.
      The Marvell port-multiplier apparently likes to see clean HOB
      information when accessing PMP registers.
      
      Since sata_mv uses PIO shadow register access, this doesn't happen
      automatically, as it might in a more purely FIS-based driver (eg. ahci).
      
      One way to fix this is to flag these commands with ATA_TFLAG_LBA48,
      forcing libata to write out the HOB fields with known (zero) values.
      Signed-off-by: NSaeed Bishara <saeed@marvell.com>
      Acked-by: NMark Lord <mlord@pobox.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      39f25e70
    • T
      libata: automatically use DMADIR if drive/bridge requires it · 91163006
      Tejun Heo 提交于
      Back in 2.6.17-rc2, a libata module parameter was added for atapi_dmadir.
      
      That's nice, but most SATA devices which need it will tell us about it
      in their IDENTIFY PACKET response, as bit-15 of word-62 of the
      returned data (as per ATA7, ATA8 specifications).
      
      So for those which specify it, we should automatically use the DMADIR bit.
      Otherwise, disc writing will fail by default on many SATA-ATAPI drives.
      
      This patch adds ATA_DFLAG_DMADIR and make ata_dev_configure() set it
      if atapi_dmadir is set or identify data indicates DMADIR is necessary.
      atapi_xlat() is converted to check ATA_DFLAG_DMADIR before setting
      DMADIR.
      
      Original patch is from Mark Lord.
      Signed-off-by: NTejun Heo <htejun@gmail.com>
      Cc: Mark Lord <mlord@pobox.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      91163006
    • P
      power_state: get rid of write-only variable in SATA · 559bbe6c
      Pavel Machek 提交于
      power_state is scheduled for removal, and libata uses it in write-only
      mode. Remove it.
      Signed-off-by: NPavel Machek <pavel@suse.cz>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      559bbe6c
    • A
      pata_atiixp: Use 255 sector limit · 635adc28
      Alan Cox 提交于
      AHCI needs sorting too but this deals with the old interface
      Signed-off-by: NAlan Cox <alan@redhat.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      635adc28
    • R
      PM: Introduce PM_EVENT_HIBERNATE callback state · 3a2d5b70
      Rafael J. Wysocki 提交于
      During the last step of hibernation in the "platform" mode (with the
      help of ACPI) we use the suspend code, including the devices'
      ->suspend() methods, to prepare the system for entering the ACPI S4
      system sleep state.
      
      But at least for some devices the operations performed by the
      ->suspend() callback in that case must be different from its operations
      during regular suspend.
      
      For this reason, introduce the new PM event type PM_EVENT_HIBERNATE and
      pass it to the device drivers' ->suspend() methods during the last phase
      of hibernation, so that they can distinguish this case and handle it as
      appropriate.  Modify the drivers that handle PM_EVENT_SUSPEND in a
      special way and need to handle PM_EVENT_HIBERNATE in the same way.
      
      These changes are necessary to fix a hibernation regression related
      to the i915 driver (ref. http://lkml.org/lkml/2008/2/22/488).
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Acked-by: NPavel Machek <pavel@ucw.cz>
      Tested-by: NJeff Chua <jeff.chua.linux@gmail.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      3a2d5b70
  8. 21 2月, 2008 6 次提交
  9. 19 2月, 2008 4 次提交
    • J
      libata: implement drain buffers · fa2fc7f4
      James Bottomley 提交于
      This just updates the libata slave configure routine to take advantage
      of the block layer drain buffers.  It also adjusts the size lengths in
      the atapi code to add the drain buffer to the DMA length so the driver
      knows it can rely on it.
      
      I suspect I should also be checking for AHCI as well as ATA_DEV_ATAPI,
      but I couldn't see how to do that easily.
      
      tj: * atapi_drain_needed() added such that draining is applied to only
            misc ATAPI commands.
          * q->bounce_gfp used when allocating drain buffer.
          * Now duplicate ATAPI PIO drain logic dropped.
          * ata_dev_printk() used instead of sdev_printk().
      Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
      Signed-off-by: NTejun Heo <htejun@gmail.com>
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      fa2fc7f4
    • J
      libata: eliminate the home grown dma padding in favour of · dde20207
      James Bottomley 提交于
      that provided by the block layer
      
      ATA requires that all DMA transfers begin and end on word boundaries.
      Because of this, a large amount of machinery grew up in ide to adjust
      scatterlists on this basis.  However, as of 2.5, the block layer has a
      dma_alignment variable which ensures both the beginning and length of a
      DMA transfer are aligned on the dma_alignment boundary.  Although the
      block layer does adjust the beginning of the transfer to ensure this
      happens, it doesn't actually adjust the length, it merely makes sure
      that space is allocated for transfers beyond the declared length.  The
      upshot of this is that scatterlists may be padded to any size between
      the actual length and the length adjusted to the dma_alignment safely
      knowing that memory is allocated in this region.
      
      Right at the moment, SCSI takes the default dma_aligment which is on a
      512 byte boundary.  Note that this aligment only applies to transfers
      coming in from user space.  However, since all kernel allocations are
      automatically aligned on a minimum of 32 byte boundaries, it is safe to
      adjust them in this manner as well.
      
      tj: * Adjusting sg after padding is done in block layer.  Make libata
            set queue alignment correctly for ATAPI devices and drop broken
            sg mangling from ata_sg_setup().
          * Use request->raw_data_len for ATAPI transfer chunk size.
          * Killed qc->raw_nbytes.
          * Separated out killing qc->n_iter.
      Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
      Signed-off-by: NTejun Heo <htejun@gmail.com>
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      dde20207
    • T
      libata: update ATAPI overflow draining · 56c819df
      Tejun Heo 提交于
      For misc ATAPI commands which transfer variable length data to the
      host, overflow can occur due to application or hardware bug.  Such
      overflows can be ignored safely as long as overflow data is properly
      drained.  libata HSM implementation has this implemented in
      __atapi_pio_bytes() and recently updated for 2.6.24-rc but it requires
      further improvements.  Improve drain logic such that...
      
      * Report overflow errors using ehi desc mechanism instead of printing
        directly.
      
      * Properly calculate the number of bytes to be drained considering
        actual number of consumed bytes for partial draining.
      Signed-off-by: NTejun Heo <htejun@gmail.com>
      Acked-by: NAlbert Lee <albertcc@tw.ibm.com>
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      56c819df
    • M
      ide/libata: ST310211A has buggy HPA too · b152fcd3
      Mikko Rapeli 提交于
      Signed-off-by: NMikko Rapeli <mikko.rapeli@teleca.com>
      Tested-by: NBart Champagne <bart@as35701.net>
      Cc: Jeff Garzik <jgarzik@pobox.com>
      Signed-off-by: NBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      b152fcd3
  10. 16 2月, 2008 11 次提交