diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2007-10-16 16:29:55 -0400 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2007-10-16 16:29:55 -0400 |
commit | 0ae2e178652753ae1797d407755a3505f7c1d2a7 (patch) | |
tree | fa725edcfb4b9752ebf2aa49a3e42e158537d4ed /drivers/ide/cris/ide-cris.c | |
parent | b8b739d3361c16773a30fe5c0360336bbc19f435 (diff) |
ide: remove ->ide_dma_check (take 2)
* Add IDE_HFLAG_TRUST_BIOS_FOR_DMA host flag for host drivers that depend
on BIOS for programming device/controller for DMA. Set it in cy82c693,
generic, ns87415, opti621 and trm290 host drivers.
* Add IDE_HFLAG_VDMA host flag for host drivers using VDMA. Set it in cs5520
host driver.
* Teach ide_tune_dma() about IDE_HFLAG_TRUST_BIOS_FOR_DMA flag.
* Add generic ide_dma_check() helper and remove all open coded ->ide_dma_check
implementations. Fix all places checking for presence of ->ide_dma_check
hook to check for ->ide_dma_on instead.
* Remove no longer needed code from config_drive_for_dma().
* Make ide_tune_dma() static.
v2:
* Fix config_drive_for_dma() return values.
* Fix ide-dma.c build for CONFIG_BLK_DEV_IDEDMA_PCI=n by adding
dummy config_drive_for_dma() inline.
* Fix IDE_HFLAG_TRUST_BIOS_FOR_DMA handling in ide_dma_check().
* Fix init_hwif_it8213() comment.
There should be no functionality changes caused by this patch.
Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/cris/ide-cris.c')
-rw-r--r-- | drivers/ide/cris/ide-cris.c | 12 |
1 files changed, 0 insertions, 12 deletions
diff --git a/drivers/ide/cris/ide-cris.c b/drivers/ide/cris/ide-cris.c index 303f26559db8..1ee078d43dbf 100644 --- a/drivers/ide/cris/ide-cris.c +++ b/drivers/ide/cris/ide-cris.c | |||
@@ -664,7 +664,6 @@ cris_ide_inb(unsigned long reg) | |||
664 | return (unsigned char)cris_ide_inw(reg); | 664 | return (unsigned char)cris_ide_inw(reg); |
665 | } | 665 | } |
666 | 666 | ||
667 | static int cris_dma_check (ide_drive_t *drive); | ||
668 | static int cris_dma_end (ide_drive_t *drive); | 667 | static int cris_dma_end (ide_drive_t *drive); |
669 | static int cris_dma_setup (ide_drive_t *drive); | 668 | static int cris_dma_setup (ide_drive_t *drive); |
670 | static void cris_dma_exec_cmd (ide_drive_t *drive, u8 command); | 669 | static void cris_dma_exec_cmd (ide_drive_t *drive, u8 command); |
@@ -792,7 +791,6 @@ init_e100_ide (void) | |||
792 | hwif->ata_output_data = &cris_ide_output_data; | 791 | hwif->ata_output_data = &cris_ide_output_data; |
793 | hwif->atapi_input_bytes = &cris_atapi_input_bytes; | 792 | hwif->atapi_input_bytes = &cris_atapi_input_bytes; |
794 | hwif->atapi_output_bytes = &cris_atapi_output_bytes; | 793 | hwif->atapi_output_bytes = &cris_atapi_output_bytes; |
795 | hwif->ide_dma_check = &cris_dma_check; | ||
796 | hwif->ide_dma_end = &cris_dma_end; | 794 | hwif->ide_dma_end = &cris_dma_end; |
797 | hwif->dma_setup = &cris_dma_setup; | 795 | hwif->dma_setup = &cris_dma_setup; |
798 | hwif->dma_exec_cmd = &cris_dma_exec_cmd; | 796 | hwif->dma_exec_cmd = &cris_dma_exec_cmd; |
@@ -1020,16 +1018,6 @@ static ide_startstop_t cris_dma_intr (ide_drive_t *drive) | |||
1020 | * the caller should revert to PIO for the current request. | 1018 | * the caller should revert to PIO for the current request. |
1021 | */ | 1019 | */ |
1022 | 1020 | ||
1023 | static int cris_dma_check(ide_drive_t *drive) | ||
1024 | { | ||
1025 | if (ide_tune_dma(drive)) | ||
1026 | return 0; | ||
1027 | |||
1028 | ide_set_max_pio(drive); | ||
1029 | |||
1030 | return -1; | ||
1031 | } | ||
1032 | |||
1033 | static int cris_dma_end(ide_drive_t *drive) | 1021 | static int cris_dma_end(ide_drive_t *drive) |
1034 | { | 1022 | { |
1035 | drive->waiting_for_dma = 0; | 1023 | drive->waiting_for_dma = 0; |