Skip to content

Commit

Permalink
ide: ide_setup_dma() assumes 8 ports
Browse files Browse the repository at this point in the history
According to http://marc.info/?l=linux-ide&m=114346138611631, the drivers must
always register 8 DMA ports with ide_setup_dma(), so its last argument is not
needed. While at it, kill some useless parens in that function...

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
  • Loading branch information
Sergei Shtylyov authored and Bartlomiej Zolnierkiewicz committed Feb 1, 2008
1 parent 4e5a68a commit ecf3279
Show file tree
Hide file tree
Showing 6 changed files with 26 additions and 26 deletions.
40 changes: 20 additions & 20 deletions drivers/ide/ide-dma.c
Original file line number Diff line number Diff line change
Expand Up @@ -889,19 +889,19 @@ static int ide_allocate_dma_engine(ide_hwif_t *hwif)
return 1;
}

static int ide_mapped_mmio_dma(ide_hwif_t *hwif, unsigned long base, unsigned int ports)
static int ide_mapped_mmio_dma(ide_hwif_t *hwif, unsigned long base)
{
printk(KERN_INFO " %s: MMIO-DMA ", hwif->name);

return 0;
}

static int ide_iomio_dma(ide_hwif_t *hwif, unsigned long base, unsigned int ports)
static int ide_iomio_dma(ide_hwif_t *hwif, unsigned long base)
{
printk(KERN_INFO " %s: BM-DMA at 0x%04lx-0x%04lx",
hwif->name, base, base + ports - 1);
hwif->name, base, base + 7);

if (!request_region(base, ports, hwif->name)) {
if (!request_region(base, 8, hwif->name)) {
printk(" -- Error, ports in use.\n");
return 1;
}
Expand All @@ -913,7 +913,7 @@ static int ide_iomio_dma(ide_hwif_t *hwif, unsigned long base, unsigned int port
if (!request_region(hwif->extra_base,
hwif->cds->extra, hwif->cds->name)) {
printk(" -- Error, extra ports in use.\n");
release_region(base, ports);
release_region(base, 8);
return 1;
}
hwif->extra_ports = hwif->cds->extra;
Expand All @@ -923,19 +923,19 @@ static int ide_iomio_dma(ide_hwif_t *hwif, unsigned long base, unsigned int port
return 0;
}

static int ide_dma_iobase(ide_hwif_t *hwif, unsigned long base, unsigned int ports)
static int ide_dma_iobase(ide_hwif_t *hwif, unsigned long base)
{
if (hwif->mmio)
return ide_mapped_mmio_dma(hwif, base,ports);
return ide_mapped_mmio_dma(hwif, base);

return ide_iomio_dma(hwif, base, ports);
return ide_iomio_dma(hwif, base);
}

void ide_setup_dma(ide_hwif_t *hwif, unsigned long base, unsigned num_ports)
void ide_setup_dma(ide_hwif_t *hwif, unsigned long base)
{
u8 dma_stat;

if (ide_dma_iobase(hwif, base, num_ports))
if (ide_dma_iobase(hwif, base))
return;

if (ide_allocate_dma_engine(hwif)) {
Expand All @@ -945,16 +945,16 @@ void ide_setup_dma(ide_hwif_t *hwif, unsigned long base, unsigned num_ports)

hwif->dma_base = base;

if (!(hwif->dma_command))
hwif->dma_command = hwif->dma_base;
if (!(hwif->dma_vendor1))
hwif->dma_vendor1 = (hwif->dma_base + 1);
if (!(hwif->dma_status))
hwif->dma_status = (hwif->dma_base + 2);
if (!(hwif->dma_vendor3))
hwif->dma_vendor3 = (hwif->dma_base + 3);
if (!(hwif->dma_prdtable))
hwif->dma_prdtable = (hwif->dma_base + 4);
if (!hwif->dma_command)
hwif->dma_command = hwif->dma_base + 0;
if (!hwif->dma_vendor1)
hwif->dma_vendor1 = hwif->dma_base + 1;
if (!hwif->dma_status)
hwif->dma_status = hwif->dma_base + 2;
if (!hwif->dma_vendor3)
hwif->dma_vendor3 = hwif->dma_base + 3;
if (!hwif->dma_prdtable)
hwif->dma_prdtable = hwif->dma_base + 4;

if (!hwif->dma_host_set)
hwif->dma_host_set = &ide_dma_host_set;
Expand Down
2 changes: 1 addition & 1 deletion drivers/ide/pci/alim15x3.c
Original file line number Diff line number Diff line change
Expand Up @@ -745,7 +745,7 @@ static void __devinit init_dma_ali15x3 (ide_hwif_t *hwif, unsigned long dmabase)
return;
if (!hwif->channel)
outb(inb(dmabase + 2) & 0x60, dmabase + 2);
ide_setup_dma(hwif, dmabase, 8);
ide_setup_dma(hwif, dmabase);
}

static const struct ide_port_info ali15x3_chipset __devinitdata = {
Expand Down
2 changes: 1 addition & 1 deletion drivers/ide/pci/hpt366.c
Original file line number Diff line number Diff line change
Expand Up @@ -1413,7 +1413,7 @@ static void __devinit init_dma_hpt366(ide_hwif_t *hwif, unsigned long dmabase)

local_irq_restore(flags);

ide_setup_dma(hwif, dmabase, 8);
ide_setup_dma(hwif, dmabase);
}

static void __devinit hpt374_init(struct pci_dev *dev, struct pci_dev *dev2)
Expand Down
4 changes: 2 additions & 2 deletions drivers/ide/pci/pdc202xx_old.c
Original file line number Diff line number Diff line change
Expand Up @@ -334,7 +334,7 @@ static void __devinit init_dma_pdc202xx(ide_hwif_t *hwif, unsigned long dmabase)
u8 udma_speed_flag = 0, primary_mode = 0, secondary_mode = 0;

if (hwif->channel) {
ide_setup_dma(hwif, dmabase, 8);
ide_setup_dma(hwif, dmabase);
return;
}

Expand All @@ -358,7 +358,7 @@ static void __devinit init_dma_pdc202xx(ide_hwif_t *hwif, unsigned long dmabase)
}
#endif /* CONFIG_PDC202XX_BURST */

ide_setup_dma(hwif, dmabase, 8);
ide_setup_dma(hwif, dmabase);
}

static void __devinit pdc202ata4_fixup_irq(struct pci_dev *dev,
Expand Down
2 changes: 1 addition & 1 deletion drivers/ide/setup-pci.c
Original file line number Diff line number Diff line change
Expand Up @@ -451,7 +451,7 @@ static void ide_hwif_setup_dma(struct pci_dev *dev, const struct ide_port_info *
if (d->init_dma) {
d->init_dma(hwif, dma_base);
} else {
ide_setup_dma(hwif, dma_base, 8);
ide_setup_dma(hwif, dma_base);
}
} else {
printk(KERN_INFO "%s: %s Bus-Master DMA disabled "
Expand Down
2 changes: 1 addition & 1 deletion include/linux/ide.h
Original file line number Diff line number Diff line change
Expand Up @@ -1155,7 +1155,7 @@ extern int ide_build_sglist(ide_drive_t *, struct request *);
extern int ide_build_dmatable(ide_drive_t *, struct request *);
extern void ide_destroy_dmatable(ide_drive_t *);
extern int ide_release_dma(ide_hwif_t *);
extern void ide_setup_dma(ide_hwif_t *, unsigned long, unsigned int);
extern void ide_setup_dma(ide_hwif_t *, unsigned long);

void ide_dma_host_set(ide_drive_t *, int);
extern int ide_dma_setup(ide_drive_t *);
Expand Down

0 comments on commit ecf3279

Please sign in to comment.