diff options
-rw-r--r-- | drivers/ide/ide-iops.c | 15 | ||||
-rw-r--r-- | drivers/ide/ide-taskfile.c | 5 | ||||
-rw-r--r-- | include/linux/ide.h | 1 |
3 files changed, 4 insertions, 17 deletions
diff --git a/drivers/ide/ide-iops.c b/drivers/ide/ide-iops.c index 99fe50e..e00fbbb 100644 --- a/drivers/ide/ide-iops.c +++ b/drivers/ide/ide-iops.c @@ -612,21 +612,6 @@ no_80w: return 0; } -int ide_ata66_check (ide_drive_t *drive, ide_task_t *args) -{ - if (args->tf.command == WIN_SETFEATURES && - args->tf.nsect > XFER_UDMA_2 && - args->tf.feature == SETFEATURES_XFER) { - if (eighty_ninty_three(drive) == 0) { - printk(KERN_WARNING "%s: UDMA speeds >UDMA33 cannot " - "be set\n", drive->name); - return 1; - } - } - - return 0; -} - #ifdef CONFIG_BLK_DEV_IDEDMA static u8 ide_auto_reduce_xfer (ide_drive_t *drive) { diff --git a/drivers/ide/ide-taskfile.c b/drivers/ide/ide-taskfile.c index bf72b6d..4e1da1c 100644 --- a/drivers/ide/ide-taskfile.c +++ b/drivers/ide/ide-taskfile.c @@ -798,8 +798,11 @@ int ide_cmd_ioctl (ide_drive_t *drive, unsigned int cmd, unsigned long arg) tf->nsect >= XFER_SW_DMA_0 && (id->dma_ultra || id->dma_mword || id->dma_1word)) { xfer_rate = args[1]; - if (ide_ata66_check(drive, &tfargs)) + if (tf->nsect > XFER_UDMA_2 && !eighty_ninty_three(drive)) { + printk(KERN_WARNING "%s: UDMA speeds >UDMA33 cannot " + "be set\n", drive->name); goto abort; + } } err = ide_raw_taskfile(drive, &tfargs, buf, args[3]); diff --git a/include/linux/ide.h b/include/linux/ide.h index b41eb7d..748af8d 100644 --- a/include/linux/ide.h +++ b/include/linux/ide.h @@ -988,7 +988,6 @@ int ide_task_ioctl(ide_drive_t *, unsigned int, unsigned long); extern int system_bus_clock(void); extern int ide_driveid_update(ide_drive_t *); -extern int ide_ata66_check(ide_drive_t *, ide_task_t *); extern int ide_config_drive_speed(ide_drive_t *, u8); extern u8 eighty_ninty_three (ide_drive_t *); extern int taskfile_lib_get_identify(ide_drive_t *drive, u8 *); |