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/tc86c001.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/tc86c001.c')
| -rw-r--r-- | drivers/ide/pci/tc86c001.c | 26 |
1 files changed, 19 insertions, 7 deletions
diff --git a/drivers/ide/pci/tc86c001.c b/drivers/ide/pci/tc86c001.c index c15435182e3c..9b4b27a4c711 100644 --- a/drivers/ide/pci/tc86c001.c +++ b/drivers/ide/pci/tc86c001.c | |||
| @@ -157,11 +157,6 @@ static void __devinit init_hwif_tc86c001(ide_hwif_t *hwif) | |||
| 157 | /* Store the system control register base for convenience... */ | 157 | /* Store the system control register base for convenience... */ |
| 158 | hwif->config_data = sc_base; | 158 | hwif->config_data = sc_base; |
| 159 | 159 | ||
| 160 | hwif->set_pio_mode = &tc86c001_set_pio_mode; | ||
| 161 | hwif->set_dma_mode = &tc86c001_set_mode; | ||
| 162 | |||
| 163 | hwif->cable_detect = tc86c001_cable_detect; | ||
| 164 | |||
| 165 | if (!hwif->dma_base) | 160 | if (!hwif->dma_base) |
| 166 | return; | 161 | return; |
| 167 | 162 | ||
| @@ -173,8 +168,6 @@ static void __devinit init_hwif_tc86c001(ide_hwif_t *hwif) | |||
| 173 | 168 | ||
| 174 | /* Sector Count Register limit */ | 169 | /* Sector Count Register limit */ |
| 175 | hwif->rqsize = 0xffff; | 170 | hwif->rqsize = 0xffff; |
| 176 | |||
| 177 | hwif->dma_start = &tc86c001_dma_start; | ||
| 178 | } | 171 | } |
| 179 | 172 | ||
| 180 | static unsigned int __devinit init_chipset_tc86c001(struct pci_dev *dev, | 173 | static unsigned int __devinit init_chipset_tc86c001(struct pci_dev *dev, |
| @@ -187,10 +180,29 @@ static unsigned int __devinit init_chipset_tc86c001(struct pci_dev *dev, | |||
| 187 | return err; | 180 | return err; |
| 188 | } | 181 | } |
| 189 | 182 | ||
| 183 | static const struct ide_port_ops tc86c001_port_ops = { | ||
| 184 | .set_pio_mode = tc86c001_set_pio_mode, | ||
| 185 | .set_dma_mode = tc86c001_set_mode, | ||
| 186 | .cable_detect = tc86c001_cable_detect, | ||
| 187 | }; | ||
| 188 | |||
| 189 | static const struct ide_dma_ops tc86c001_dma_ops = { | ||
| 190 | .dma_host_set = ide_dma_host_set, | ||
| 191 | .dma_setup = ide_dma_setup, | ||
| 192 | .dma_exec_cmd = ide_dma_exec_cmd, | ||
| 193 | .dma_start = tc86c001_dma_start, | ||
| 194 | .dma_end = __ide_dma_end, | ||
| 195 | .dma_test_irq = ide_dma_test_irq, | ||
| 196 | .dma_lost_irq = ide_dma_lost_irq, | ||
| 197 | .dma_timeout = ide_dma_timeout, | ||
| 198 | }; | ||
| 199 | |||
| 190 | static const struct ide_port_info tc86c001_chipset __devinitdata = { | 200 | static const struct ide_port_info tc86c001_chipset __devinitdata = { |
| 191 | .name = "TC86C001", | 201 | .name = "TC86C001", |
| 192 | .init_chipset = init_chipset_tc86c001, | 202 | .init_chipset = init_chipset_tc86c001, |
| 193 | .init_hwif = init_hwif_tc86c001, | 203 | .init_hwif = init_hwif_tc86c001, |
| 204 | .port_ops = &tc86c001_port_ops, | ||
| 205 | .dma_ops = &tc86c001_dma_ops, | ||
| 194 | .host_flags = IDE_HFLAG_SINGLE | IDE_HFLAG_OFF_BOARD | | 206 | .host_flags = IDE_HFLAG_SINGLE | IDE_HFLAG_OFF_BOARD | |
| 195 | IDE_HFLAG_ABUSE_SET_DMA_MODE, | 207 | IDE_HFLAG_ABUSE_SET_DMA_MODE, |
| 196 | .pio_mask = ATA_PIO4, | 208 | .pio_mask = ATA_PIO4, |
