diff options
Diffstat (limited to 'drivers/ide/sl82c105.c')
-rw-r--r-- | drivers/ide/sl82c105.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/ide/sl82c105.c b/drivers/ide/sl82c105.c index 3c2bbf0057ea..f21dc2ad7682 100644 --- a/drivers/ide/sl82c105.c +++ b/drivers/ide/sl82c105.c | |||
@@ -63,12 +63,13 @@ static unsigned int get_pio_timings(ide_drive_t *drive, u8 pio) | |||
63 | /* | 63 | /* |
64 | * Configure the chipset for PIO mode. | 64 | * Configure the chipset for PIO mode. |
65 | */ | 65 | */ |
66 | static void sl82c105_set_pio_mode(ide_drive_t *drive, const u8 pio) | 66 | static void sl82c105_set_pio_mode(ide_hwif_t *hwif, ide_drive_t *drive) |
67 | { | 67 | { |
68 | struct pci_dev *dev = to_pci_dev(drive->hwif->dev); | 68 | struct pci_dev *dev = to_pci_dev(hwif->dev); |
69 | unsigned long timings = (unsigned long)ide_get_drivedata(drive); | 69 | unsigned long timings = (unsigned long)ide_get_drivedata(drive); |
70 | int reg = 0x44 + drive->dn * 4; | 70 | int reg = 0x44 + drive->dn * 4; |
71 | u16 drv_ctrl; | 71 | u16 drv_ctrl; |
72 | const u8 pio = drive->pio_mode - XFER_PIO_0; | ||
72 | 73 | ||
73 | drv_ctrl = get_pio_timings(drive, pio); | 74 | drv_ctrl = get_pio_timings(drive, pio); |
74 | 75 | ||
@@ -91,11 +92,12 @@ static void sl82c105_set_pio_mode(ide_drive_t *drive, const u8 pio) | |||
91 | /* | 92 | /* |
92 | * Configure the chipset for DMA mode. | 93 | * Configure the chipset for DMA mode. |
93 | */ | 94 | */ |
94 | static void sl82c105_set_dma_mode(ide_drive_t *drive, const u8 speed) | 95 | static void sl82c105_set_dma_mode(ide_hwif_t *hwif, ide_drive_t *drive) |
95 | { | 96 | { |
96 | static u16 mwdma_timings[] = {0x0707, 0x0201, 0x0200}; | 97 | static u16 mwdma_timings[] = {0x0707, 0x0201, 0x0200}; |
97 | unsigned long timings = (unsigned long)ide_get_drivedata(drive); | 98 | unsigned long timings = (unsigned long)ide_get_drivedata(drive); |
98 | u16 drv_ctrl; | 99 | u16 drv_ctrl; |
100 | const u8 speed = drive->dma_mode; | ||
99 | 101 | ||
100 | drv_ctrl = mwdma_timings[speed - XFER_MW_DMA_0]; | 102 | drv_ctrl = mwdma_timings[speed - XFER_MW_DMA_0]; |
101 | 103 | ||