1. 03 Jan, 2013 1 commit
    • Greg Kroah-Hartman's avatar
      Drivers: ide: remove __dev* attributes. · fe31edc8
      Greg Kroah-Hartman authored
      CONFIG_HOTPLUG is going away as an option.  As a result, the __dev*
      markings need to be removed.
      
      This change removes the use of __devinit, __devexit_p, __devinitdata,
      __devinitconst, and __devexit from these drivers.
      
      Based on patches originally written by Bill Pemberton, but redone by me
      in order to handle some of the coding style issues better, by hand.
      
      Cc: Bill Pemberton <wfp5p@virginia.edu>
      Cc: "David S. Miller" <davem@davemloft.net>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      fe31edc8
  2. 05 Oct, 2012 1 commit
  3. 19 Jan, 2010 5 commits
  4. 03 Dec, 2009 1 commit
  5. 29 Oct, 2009 1 commit
    • Mikulas Patocka's avatar
      ide: Serialize CMD643 and CMD646 to fix a hardware bug with SSD · 9bd7496f
      Mikulas Patocka authored
      CMD646 corrupts data on concurrent transfers on both channels when IDE SSD is
      connected to one of the channels.
      
      Setup that demonstrates this hardware bug: Ultra 5, onboard CMD646, rev 3.
      /dev/hda is 8GB Seagate ST38410A in MWDMA2
      /dev/hdd is 32GB SSD SiliconHardDisk in MWDMA2
      
      - When reading /dev/hdd (for example with dd or fsck), reads from /dev/hda
        are corrupted, there are twiddled single bits 1->0 and some full 32-bit
        words corrupted, sometimes commands fail (which switches /dev/hda to
        PIO mode but the corruptions happen even in PIO).
      - Reads from /dev/hdd don't seem to be corrupted (i.e. fsck passes fine).
      - When I connected normal rotating harddisk to /dev/hdd, there was no
        corruption, so the corruption is something specific to SSD.
      - I tried the same setup on a PCI card with CMD649 and saw no corruption.
      
      This patch serializes the operation for CMD646 and 643 (I didn't test
      CMD643 but it may have the same hw bug too because it's earlier design).
      CMD649 is good. I don't know anything about CMD 648.
      Signed-off-by: default avatarMikulas Patocka <mpatocka@redhat.com>
      Tested-by: default avatarFrans Pop <elendil@planet.nl>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      9bd7496f
  6. 21 Jun, 2009 1 commit
  7. 15 Jun, 2009 3 commits
  8. 31 Mar, 2009 3 commits
  9. 27 Mar, 2009 1 commit
    • Bartlomiej Zolnierkiewicz's avatar
      ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) · 22117d6e
      Bartlomiej Zolnierkiewicz authored
      * Rename dma_timer_expiry() to ide_dma_sff_timer_expiry() and export it.
      
      * Add ->dma_timer_expiry method and use it to set hwif->expiry for
        ATA_PROT_DMA protocol in do_rw_taskfile().
      
      * Initialize ->dma_timer_expiry to ide_dma_sff_timer_expiry() for SFF hosts.
      
      * Move setting hwif->expiry from ide_execute_command() to its users and drop
        'expiry' argument.
      
      * Use ide_execute_command() instead of ->dma_exec_cmd in do_rw_taskfile().
      
      * Remove ->dma_exec_cmd method and its implementations.
      
      * Unexport ide_execute_command() and ide_dma_intr().
      
      v2:
      * Fix CONFIG_BLK_DEV_IDEDMA=n build (noticed by Randy Dunlap).
      
      * Fix *dma_expiry naming (suggested by Sergei Shtylyov).
      
      There should be no functional changes caused by this patch.
      
      Cc: Randy Dunlap <randy.dunlap@oracle.com>
      Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      22117d6e
  10. 24 Mar, 2009 1 commit
  11. 06 Jan, 2009 3 commits
  12. 29 Dec, 2008 1 commit
  13. 21 Oct, 2008 1 commit
  14. 13 Oct, 2008 2 commits
  15. 10 Oct, 2008 2 commits
    • Bartlomiej Zolnierkiewicz's avatar
      ide: add proper PCI PM support (v2) · feb22b7f
      Bartlomiej Zolnierkiewicz authored
      * Keep pointer to ->init_chipset method also in
        struct ide_host and set it in ide_host_alloc_all().
      
      * Add ide_pci_suspend() and ide_pci_resume() helpers
        (default ->suspend and ->resume implementations).
      
      * ->init_chipset can no longer be marked __devinit.
      
      * Add proper PCI PM support to IDE PCI host drivers
        (rz1000.c and tc86c001.c are skipped for now since
        they need to be converted from using ->init_hwif
        to use ->init_chipset instead).
      
      v2:
      * Cleanup CONFIG_PM #ifdef-s per akpm's suggestion.
      
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: "Rafael J. Wysocki" <rjw@sisk.pl>
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      feb22b7f
    • Bartlomiej Zolnierkiewicz's avatar
      ide: include <linux/hdreg.h> only when needed · 3ceca727
      Bartlomiej Zolnierkiewicz authored
      * Include <linux/ata.h> directly in <linux/ide.h>
        instead of through <linux/hdreg.h>.
      
      * Include <linux/hdreg.h> only when needed.
      
      Cc: Christoph Hellwig <hch@infradead.org>
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      3ceca727
  16. 05 Aug, 2008 1 commit
  17. 24 Jul, 2008 5 commits
  18. 23 Jul, 2008 1 commit
  19. 16 Jul, 2008 1 commit
  20. 15 Jul, 2008 1 commit
  21. 27 Apr, 2008 1 commit
  22. 26 Apr, 2008 3 commits
    • Bartlomiej Zolnierkiewicz's avatar
      ide: constify struct ide_dma_ops · f37afdac
      Bartlomiej Zolnierkiewicz authored
      * Export ide_dma_exec_cmd() and __ide_dma_test_irq().
      
      * Constify struct ide_dma_ops.
      
      * Always set hwif->dma_ops to &sff_dma_ops in ide_setup_dma()
        (it is later overriden by ide_init_port() if needed) and drop
        'const struct ide_port_info *d' argument.
      
      While at it:
      
      * Rename __ide_dma_test_irq() to ide_dma_test_irq().
      Acked-by: default avatarSergei Shtylyov <sshtylyov@ru.mvista.com>
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      f37afdac
    • Bartlomiej Zolnierkiewicz's avatar
      ide: add struct ide_dma_ops (take 3) · 5e37bdc0
      Bartlomiej Zolnierkiewicz authored
      Add struct ide_dma_ops and convert core code + drivers to use it.
      
      While at it:
      
      * Drop "ide_" prefix from ->ide_dma_end and ->ide_dma_test_irq methods.
      
      * Drop "ide_" "infixes" from DMA methods.
      
      * au1xxx-ide.c:
        - use auide_dma_{test_irq,end}() directly in auide_dma_timeout()
      
      * pdc202xx_old.c:
        - drop "old_" "infixes" from DMA methods
      
      * siimage.c:
        - add siimage_dma_test_irq() helper
        - print SATA warning in siimage_init_one()
      
      * Remove no longer needed ->init_hwif implementations.
      
      v2:
      * Changes based on review from Sergei:
        - s/siimage_ide_dma_test_irq/siimage_dma_test_irq/
        - s/drive->hwif/hwif/ in idefloppy_pc_intr().
        - fix patch description w.r.t. au1xxx-ide changes
        - fix au1xxx-ide build
        - fix naming for cmd64*_dma_ops
        - drop "ide_" and "old_" infixes
        - s/hpt3xxx_dma_ops/hpt37x_dma_ops/
        - s/hpt370x_dma_ops/hpt370_dma_ops/
        - use correct DMA ops for HPT302/N, HPT371/N and HPT374
        - s/it821x_smart_dma_ops/it821x_pass_through_dma_ops/
      
      v3:
      * Two bugs slipped in v2 (noticed by Sergei):
        - use correct DMA ops for HPT374 (for real this time)
        - handle HPT370/HPT370A properly
      Acked-by: default avatarSergei Shtylyov <sshtylyov@ru.mvista.com>
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      5e37bdc0
    • Bartlomiej Zolnierkiewicz's avatar
      ide: add struct ide_port_ops (take 2) · ac95beed
      Bartlomiej Zolnierkiewicz authored
      * Move hooks for port/host specific methods from ide_hwif_t to
        'struct ide_port_ops'.
      
      * Add 'const struct ide_port_ops *port_ops' to 'struct ide_port_info'
        and ide_hwif_t.
      
      * Update host drivers and core code accordingly.
      
      While at it:
      
      * Rename ata66_*() cable detect functions to *_cable_detect() to match
        the standard naming. (Suggested by Sergei Shtylyov)
      
      v2:
      * Fix build for bast-ide. (Noticed by Andrew Morton)
      Acked-by: default avatarSergei Shtylyov <sshtylyov@ru.mvista.com>
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      ac95beed