Lines Matching refs:drive
43 static unsigned int get_pio_timings(ide_drive_t *drive, u8 pio) in get_pio_timings() argument
50 cmd_off = (ide_pio_cycle_time(drive, pio) - 30 * cmd_on + 29) / 30; in get_pio_timings()
58 if (ide_pio_need_iordy(drive, pio)) in get_pio_timings()
67 static void sl82c105_set_pio_mode(ide_hwif_t *hwif, ide_drive_t *drive) in sl82c105_set_pio_mode() argument
70 unsigned long timings = (unsigned long)ide_get_drivedata(drive); in sl82c105_set_pio_mode()
71 int reg = 0x44 + drive->dn * 4; in sl82c105_set_pio_mode()
73 const u8 pio = drive->pio_mode - XFER_PIO_0; in sl82c105_set_pio_mode()
75 drv_ctrl = get_pio_timings(drive, pio); in sl82c105_set_pio_mode()
83 ide_set_drivedata(drive, (void *)timings); in sl82c105_set_pio_mode()
88 printk(KERN_DEBUG "%s: selected %s (%dns) (%04X)\n", drive->name, in sl82c105_set_pio_mode()
90 ide_pio_cycle_time(drive, pio), drv_ctrl); in sl82c105_set_pio_mode()
96 static void sl82c105_set_dma_mode(ide_hwif_t *hwif, ide_drive_t *drive) in sl82c105_set_dma_mode() argument
99 unsigned long timings = (unsigned long)ide_get_drivedata(drive); in sl82c105_set_dma_mode()
101 const u8 speed = drive->dma_mode; in sl82c105_set_dma_mode()
111 ide_set_drivedata(drive, (void *)timings); in sl82c105_set_dma_mode()
148 static void sl82c105_dma_lost_irq(ide_drive_t *drive) in sl82c105_dma_lost_irq() argument
150 ide_hwif_t *hwif = drive->hwif; in sl82c105_dma_lost_irq()
186 static void sl82c105_dma_start(ide_drive_t *drive) in sl82c105_dma_start() argument
188 ide_hwif_t *hwif = drive->hwif; in sl82c105_dma_start()
190 int reg = 0x44 + drive->dn * 4; in sl82c105_dma_start()
193 (unsigned long)ide_get_drivedata(drive) >> 16); in sl82c105_dma_start()
196 ide_dma_start(drive); in sl82c105_dma_start()
199 static void sl82c105_dma_clear(ide_drive_t *drive) in sl82c105_dma_clear() argument
201 struct pci_dev *dev = to_pci_dev(drive->hwif->dev); in sl82c105_dma_clear()
206 static int sl82c105_dma_end(ide_drive_t *drive) in sl82c105_dma_end() argument
208 struct pci_dev *dev = to_pci_dev(drive->hwif->dev); in sl82c105_dma_end()
209 int reg = 0x44 + drive->dn * 4; in sl82c105_dma_end()
210 int ret = ide_dma_end(drive); in sl82c105_dma_end()
213 (unsigned long)ide_get_drivedata(drive)); in sl82c105_dma_end()
222 static void sl82c105_resetproc(ide_drive_t *drive) in sl82c105_resetproc() argument
224 struct pci_dev *dev = to_pci_dev(drive->hwif->dev); in sl82c105_resetproc()