diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-26 16:44:19 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-26 16:44:19 -0400 |
| commit | a52b0d25a722e84da999005b75f972aa4824253c (patch) | |
| tree | 4a3a48305f744e6bde2e3fd663a4473dd712049c /drivers/ide/pci/cs5520.c | |
| parent | 539a5fe22620a1665cce504167953a71a43232ad (diff) | |
| parent | f37afdaca711838b50ecd89b9c15fc745270d77c (diff) | |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (46 commits)
ide: constify struct ide_dma_ops
ide: add struct ide_dma_ops (take 3)
ide: add IDE_HFLAG_SERIALIZE_DMA host flag
sl82c105: check bridge revision in sl82c105_init_one()
au1xxx-ide: use ->init_dma method
palm_bk3710: use ->init_dma method
sgiioc4: use ->init_dma method
icside: use ->init_dma method
ide-pmac: use ->init_dma method
ide: do complete DMA setup in ->init_dma method (take 2)
au1xxx-ide: fix MWDMA support
ide: cleanup ide_setup_dma()
ide: factor out setting PCI bus-mastering from ide_hwif_setup_dma()
ide: export ide_allocate_dma_engine()
ide: move ide_setup_dma() call out from ->init_dma method
alim15x3: skip DMA initialization completely on revs < 0x20
pdc202xx_old: remove init_dma_pdc202xx()
ide: don't display "BIOS" settings in ide_setup_dma()
ide: remove ->cds field from ide_hwif_t (take 2)
ide: remove ide_dma_iobase()
...
Diffstat (limited to 'drivers/ide/pci/cs5520.c')
| -rw-r--r-- | drivers/ide/pci/cs5520.c | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/drivers/ide/pci/cs5520.c b/drivers/ide/pci/cs5520.c index 01b37ecb5a5a..17669a434438 100644 --- a/drivers/ide/pci/cs5520.c +++ b/drivers/ide/pci/cs5520.c | |||
| @@ -103,21 +103,27 @@ static void cs5520_dma_host_set(ide_drive_t *drive, int on) | |||
| 103 | ide_dma_host_set(drive, on); | 103 | ide_dma_host_set(drive, on); |
| 104 | } | 104 | } |
| 105 | 105 | ||
| 106 | static void __devinit init_hwif_cs5520(ide_hwif_t *hwif) | 106 | static const struct ide_port_ops cs5520_port_ops = { |
| 107 | { | 107 | .set_pio_mode = cs5520_set_pio_mode, |
| 108 | hwif->set_pio_mode = &cs5520_set_pio_mode; | 108 | .set_dma_mode = cs5520_set_dma_mode, |
| 109 | hwif->set_dma_mode = &cs5520_set_dma_mode; | 109 | }; |
| 110 | |||
| 111 | if (hwif->dma_base == 0) | ||
| 112 | return; | ||
| 113 | 110 | ||
| 114 | hwif->dma_host_set = &cs5520_dma_host_set; | 111 | static const struct ide_dma_ops cs5520_dma_ops = { |
| 115 | } | 112 | .dma_host_set = cs5520_dma_host_set, |
| 113 | .dma_setup = ide_dma_setup, | ||
| 114 | .dma_exec_cmd = ide_dma_exec_cmd, | ||
| 115 | .dma_start = ide_dma_start, | ||
| 116 | .dma_end = __ide_dma_end, | ||
| 117 | .dma_test_irq = ide_dma_test_irq, | ||
| 118 | .dma_lost_irq = ide_dma_lost_irq, | ||
| 119 | .dma_timeout = ide_dma_timeout, | ||
| 120 | }; | ||
| 116 | 121 | ||
| 117 | #define DECLARE_CS_DEV(name_str) \ | 122 | #define DECLARE_CS_DEV(name_str) \ |
| 118 | { \ | 123 | { \ |
| 119 | .name = name_str, \ | 124 | .name = name_str, \ |
| 120 | .init_hwif = init_hwif_cs5520, \ | 125 | .port_ops = &cs5520_port_ops, \ |
| 126 | .dma_ops = &cs5520_dma_ops, \ | ||
| 121 | .host_flags = IDE_HFLAG_ISA_PORTS | \ | 127 | .host_flags = IDE_HFLAG_ISA_PORTS | \ |
| 122 | IDE_HFLAG_CS5520 | \ | 128 | IDE_HFLAG_CS5520 | \ |
| 123 | IDE_HFLAG_VDMA | \ | 129 | IDE_HFLAG_VDMA | \ |
