1. 27 1月, 2006 1 次提交
    • T
      [PATCH] ata_piix: fix MAP VALUE interpretation for for ICH6/7 · ff0fc146
      Tejun Heo 提交于
      Unlike their older siblings, ICH6 and 7 use different scheme for MAP
      VALUE.  This patch makes ata_piix interpret MV properly on ICH6/7.
      
      Pre-ICH6/7
      
       The value of these bits indicate the address range the SATA port
       responds to, and whether or not the SATA and IDE functions are
       combined.
      
       000 = Non-combined. P0 is primary master. P1 is secondary master.
       001 = Non-combined. P0 is secondary master. P1 is primary master.
       100 = Combined. P0 is primary master. P1 is primary slave. P-ATA is
             2:0 Map Value secondary.
       101 = Combined. P0 is primary slave. P1 is primary master. P-ATA is
             secondary.
       110 = Combined. P-ATA is primary. P0 is secondary master. P1 is
             secondary slave.
       111 = Combined. P-ATA is primary. P0 is secondary slave. P1 is
             secondary master.
      
      ICH6/7
      
       Map Value - R/W. Map Value (MV): The value in the bits below indicate
      the address range the SATA ports responds to, and whether or not the
      PATA and SATA functions are combined. When in combined mode, the AHCI
      memory space is not available and AHCI may not be used.
      
       00 = Non-combined. P0 is primary master, P2 is the primary slave. P1
            is secondary master, P3 is the 1:0 secondary slave (desktop
            only). P0 is primary master, P2 is the primary slave (mobile
            only).
       01 = Combined. IDE is primary. P1 is secondary master, P3 is the
            secondary slave. (desktop only)
       10 = Combined. P0 is primary master. P2 is primary slave. IDE is secondary
       11 = Reserved
      Signed-off-by: NTejun Heo <htejun@gmail.com>
      
      --
      
      Jeff, without this patch, ata_piix misdetects my ICH7's combined mode,
      ending up not applying bridge limits to PX-710SA and configuring IDE
      drive on 40-c cable to UDMA/66.
      
      Thanks.
      Signed-off-by: NJeff Garzik <jgarzik@pobox.com>
      ff0fc146
  2. 18 1月, 2006 1 次提交
  3. 07 1月, 2006 1 次提交
    • J
      [PATCH] Suspend support for libata · 9b847548
      Jens Axboe 提交于
      This patch adds suspend patch to libata, and ata_piix in particular. For
      most low level drivers, they should just need to add the 4 hooks to
      work. As I can only test ata_piix, I didn't enable it for more
      though.
      
      Suspend support is the single most important feature on a notebook, and
      most new notebooks have sata drives. It's quite embarrassing that we
      _still_ do not support this. Right now, it's perfectly possible to
      suspend the drive in mid-transfer.
      Signed-off-by: NJens Axboe <axboe@suse.de>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      9b847548
  4. 06 1月, 2006 1 次提交
  5. 13 12月, 2005 2 次提交
  6. 17 11月, 2005 1 次提交
  7. 15 11月, 2005 1 次提交
  8. 11 11月, 2005 1 次提交
  9. 10 11月, 2005 1 次提交
  10. 07 11月, 2005 1 次提交
  11. 30 10月, 2005 2 次提交
  12. 23 10月, 2005 1 次提交
  13. 16 9月, 2005 1 次提交
  14. 09 9月, 2005 1 次提交
  15. 08 9月, 2005 1 次提交
    • H
      [PATCH] scan all enabled ports on ata_piix · 6a690df5
      Hannes Reinecke 提交于
      ICH6 spec defines the PORT_ bits as:
      
      PORT_ENABLED (R/W):
      
        0 = Disabled.  The port is in the off state and cannot detect any
        devices.
      
        1 = Enabled.  The port can transition between the on, partial, and
        slumber states and can detect devices.
      
      PORT_PRESENT  (R/O)
      
        The status of this bit may change at any time.  This bit is cleared
        when the port is disabled via PORT_ENABLED.  This bit is not cleared upon
        surprise removal of a device.
      
      So from a textual view it is not necessary that PORT_PRESENT _must_ be set,
      especially if a device detection has to be done anyway.  And, in fact, this
      is the view that ACER has been taken with its new Laptops (e.g.  Travelmate
      4150).
      
      And the definition of PORT_ENABLED / PORT_PRESENT is mixed up, btw.
      Signed-off-by: NHannes Reinecke <hare@suse.de>
      Signed-off-by: NJens Axboe <axboe@suse.de>
      Cc: Jeff Garzik <jgarzik@pobox.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NJeff Garzik <jgarzik@pobox.com>
      6a690df5
  16. 30 8月, 2005 2 次提交
  17. 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
  18. 23 8月, 2005 1 次提交
  19. 01 8月, 2005 1 次提交
  20. 29 7月, 2005 1 次提交
  21. 31 5月, 2005 1 次提交
  22. 27 5月, 2005 1 次提交
    • J
      libata: Fix use-after-iounmap · aa8f0dc6
      Jeff Garzik 提交于
      Jens Axboe pointed out that the iounmap() call in libata was occurring
      too early, and some drivers (ahci, probably others) were using ioremap'd
      memory after it had been unmapped.
      
      The patch should address that problem by way of improving the libata
      driver API:
      
      * move ->host_stop() call after all ->port_stop() calls have occurred.
      
      * create default helper function ata_host_stop(), and move iounmap()
      call there.
      
      * add ->host_stop_prewalk() hook, use it in sata_qstor.c (hi Mark).
      sata_qstor appears to require the host-stop-before-port-stop ordering
      that existed prior to applying the attached patch.
      aa8f0dc6
  23. 17 4月, 2005 2 次提交