diff options
Diffstat (limited to 'drivers/ide/pci/tc86c001.c')
-rw-r--r-- | drivers/ide/pci/tc86c001.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/drivers/ide/pci/tc86c001.c b/drivers/ide/pci/tc86c001.c index 0b6d81d6ce48..168f035caa3f 100644 --- a/drivers/ide/pci/tc86c001.c +++ b/drivers/ide/pci/tc86c001.c | |||
@@ -13,18 +13,13 @@ | |||
13 | #include <linux/pci.h> | 13 | #include <linux/pci.h> |
14 | #include <linux/ide.h> | 14 | #include <linux/ide.h> |
15 | 15 | ||
16 | static inline u8 tc86c001_ratemask(ide_drive_t *drive) | ||
17 | { | ||
18 | return eighty_ninty_three(drive) ? 2 : 1; | ||
19 | } | ||
20 | |||
21 | static int tc86c001_tune_chipset(ide_drive_t *drive, u8 speed) | 16 | static int tc86c001_tune_chipset(ide_drive_t *drive, u8 speed) |
22 | { | 17 | { |
23 | ide_hwif_t *hwif = HWIF(drive); | 18 | ide_hwif_t *hwif = HWIF(drive); |
24 | unsigned long scr_port = hwif->config_data + (drive->dn ? 0x02 : 0x00); | 19 | unsigned long scr_port = hwif->config_data + (drive->dn ? 0x02 : 0x00); |
25 | u16 mode, scr = hwif->INW(scr_port); | 20 | u16 mode, scr = hwif->INW(scr_port); |
26 | 21 | ||
27 | speed = ide_rate_filter(tc86c001_ratemask(drive), speed); | 22 | speed = ide_rate_filter(drive, speed); |
28 | 23 | ||
29 | switch (speed) { | 24 | switch (speed) { |
30 | case XFER_UDMA_4: mode = 0x00c0; break; | 25 | case XFER_UDMA_4: mode = 0x00c0; break; |
@@ -174,7 +169,7 @@ static int tc86c001_busproc(ide_drive_t *drive, int state) | |||
174 | 169 | ||
175 | static int config_chipset_for_dma(ide_drive_t *drive) | 170 | static int config_chipset_for_dma(ide_drive_t *drive) |
176 | { | 171 | { |
177 | u8 speed = ide_dma_speed(drive, tc86c001_ratemask(drive)); | 172 | u8 speed = ide_max_dma_mode(drive); |
178 | 173 | ||
179 | if (!speed) | 174 | if (!speed) |
180 | return 0; | 175 | return 0; |