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