Lines Matching refs:drive
145 static void trm290_prepare_drive (ide_drive_t *drive, unsigned int use_dma) in trm290_prepare_drive() argument
147 ide_hwif_t *hwif = drive->hwif; in trm290_prepare_drive()
164 if (drive->dev_flags & IDE_DFLAG_PRESENT) { in trm290_prepare_drive()
174 static void trm290_dev_select(ide_drive_t *drive) in trm290_dev_select() argument
176 trm290_prepare_drive(drive, !!(drive->dev_flags & IDE_DFLAG_USING_DMA)); in trm290_dev_select()
178 outb(drive->select | ATA_DEVICE_OBS, drive->hwif->io_ports.device_addr); in trm290_dev_select()
181 static int trm290_dma_check(ide_drive_t *drive, struct ide_cmd *cmd) in trm290_dma_check() argument
192 static int trm290_dma_setup(ide_drive_t *drive, struct ide_cmd *cmd) in trm290_dma_setup() argument
194 ide_hwif_t *hwif = drive->hwif; in trm290_dma_setup()
197 count = ide_build_dmatable(drive, cmd); in trm290_dma_setup()
209 static void trm290_dma_start(ide_drive_t *drive) in trm290_dma_start() argument
211 trm290_prepare_drive(drive, 1); in trm290_dma_start()
214 static int trm290_dma_end(ide_drive_t *drive) in trm290_dma_end() argument
216 u16 status = inw(drive->hwif->dma_base + 2); in trm290_dma_end()
218 trm290_prepare_drive(drive, 0); in trm290_dma_end()
223 static int trm290_dma_test_irq(ide_drive_t *drive) in trm290_dma_test_irq() argument
225 u16 status = inw(drive->hwif->dma_base + 2); in trm290_dma_test_irq()
230 static void trm290_dma_host_set(ide_drive_t *drive, int on) in trm290_dma_host_set() argument