diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-07-23 13:55:50 -0400 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-07-23 13:55:50 -0400 |
commit | b2f951aabc9cc7d5fb987aeec9aef96ccce618a5 (patch) | |
tree | d388e9a44a153cee8395bd7ca9eff63492ff9cfd /drivers/ide/pci/scc_pata.c | |
parent | c97c6aca75fd5f718056fde7cff798b8cbdb07c0 (diff) |
ide: add ->read_sff_dma_status method
Add ->read_sff_dma_status method for reading DMA Status register
and use it instead of ->INB.
While at it:
* Use inb() directly in ns87415.c::ns87415_dma_end().
There should be no functional changes caused by this patch.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/pci/scc_pata.c')
-rw-r--r-- | drivers/ide/pci/scc_pata.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/ide/pci/scc_pata.c b/drivers/ide/pci/scc_pata.c index 328e2df66550..7a2a7b2a319a 100644 --- a/drivers/ide/pci/scc_pata.c +++ b/drivers/ide/pci/scc_pata.c | |||
@@ -126,6 +126,11 @@ static u8 scc_ide_inb(unsigned long port) | |||
126 | return (u8)data; | 126 | return (u8)data; |
127 | } | 127 | } |
128 | 128 | ||
129 | static u8 scc_read_sff_dma_status(ide_hwif_t *hwif) | ||
130 | { | ||
131 | return (u8)in_be32((void *)hwif->dma_status); | ||
132 | } | ||
133 | |||
129 | static void scc_ide_insw(unsigned long port, void *addr, u32 count) | 134 | static void scc_ide_insw(unsigned long port, void *addr, u32 count) |
130 | { | 135 | { |
131 | u16 *ptr = (u16 *)addr; | 136 | u16 *ptr = (u16 *)addr; |
@@ -773,6 +778,8 @@ static void __devinit init_mmio_iops_scc(ide_hwif_t *hwif) | |||
773 | 778 | ||
774 | ide_set_hwifdata(hwif, ports); | 779 | ide_set_hwifdata(hwif, ports); |
775 | 780 | ||
781 | hwif->read_sff_dma_status = scc_read_sff_dma_status; | ||
782 | |||
776 | hwif->tf_load = scc_tf_load; | 783 | hwif->tf_load = scc_tf_load; |
777 | hwif->tf_read = scc_tf_read; | 784 | hwif->tf_read = scc_tf_read; |
778 | 785 | ||