Commit a16a7cd8 authored by Bartlomiej Zolnierkiewicz's avatar Bartlomiej Zolnierkiewicz Committed by James Simmons

[PATCH] fix build with CONFIG_BLK_DEV_IDEDMA=n (once again)

My "__ide_dma_off()" cleanup uncovered some code that shouldn't be compiled
when CONFIG_BLK_DEV_IDEDMA=n.  Fix it and kill a warning in setup-pci.c.

Noticed by Martin Diehl <lists@mdiehl.de>.
parent c5910d7f
......@@ -1125,16 +1125,17 @@ static ide_startstop_t reset_pollfunc (ide_drive_t *drive)
return ide_stopped;
}
void check_dma_crc (ide_drive_t *drive)
static void check_dma_crc(ide_drive_t *drive)
{
#ifdef CONFIG_BLK_DEV_IDEDMA
if (drive->crc_count) {
(void) HWIF(drive)->ide_dma_off_quietly(drive);
ide_set_xfer_rate(drive, ide_auto_reduce_xfer(drive));
if (drive->current_speed >= XFER_SW_DMA_0)
(void) HWIF(drive)->ide_dma_on(drive);
} else {
} else
(void)__ide_dma_off(drive);
}
#endif
}
void pre_reset (ide_drive_t *drive)
......
......@@ -1320,6 +1320,7 @@ static int set_io_32bit(ide_drive_t *drive, int arg)
static int set_using_dma (ide_drive_t *drive, int arg)
{
#ifdef CONFIG_BLK_DEV_IDEDMA
if (!drive->id || !(drive->id->capability & 1))
return -EPERM;
if (HWIF(drive)->ide_dma_check == NULL)
......@@ -1332,6 +1333,9 @@ static int set_using_dma (ide_drive_t *drive, int arg)
return -EIO;
}
return 0;
#else
return -EPERM;
#endif
}
static int set_pio_mode (ide_drive_t *drive, int arg)
......
......@@ -150,6 +150,8 @@ static int ide_setup_pci_baseregs (struct pci_dev *dev, const char *name)
return 0;
}
#ifdef CONFIG_BLK_DEV_IDEDMA_PCI
#ifdef CONFIG_BLK_DEV_IDEDMA_FORCED
/*
* Long lost data from 2.0.34 that is now in 2.0.39
......@@ -279,6 +281,7 @@ static unsigned long ide_get_or_set_dma_base (ide_hwif_t *hwif)
}
return dma_base;
}
#endif /* CONFIG_BLK_DEV_IDEDMA_PCI */
void ide_setup_pci_noise (struct pci_dev *dev, ide_pci_device_t *d)
{
......
......@@ -1626,6 +1626,9 @@ extern ide_startstop_t __ide_dma_queued_read(ide_drive_t *drive);
extern ide_startstop_t __ide_dma_queued_write(ide_drive_t *drive);
extern ide_startstop_t __ide_dma_queued_start(ide_drive_t *drive);
#endif
#else
static inline int __ide_dma_off(ide_drive_t *drive) { return 0; }
#endif /* CONFIG_BLK_DEV_IDEDMA */
#ifndef CONFIG_BLK_DEV_IDEDMA_PCI
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment