Lines Matching refs:drive
7 ide_drive_t *drive = to_ide_device(dev); in generic_ide_suspend() local
8 ide_drive_t *pair = ide_get_pair_dev(drive); in generic_ide_suspend()
9 ide_hwif_t *hwif = drive->hwif; in generic_ide_suspend()
16 if ((drive->dn & 1) == 0 || pair == NULL) in generic_ide_suspend()
21 rq = blk_get_request(drive->queue, READ, __GFP_RECLAIM); in generic_ide_suspend()
29 ret = blk_execute_rq(drive->queue, NULL, rq, 0); in generic_ide_suspend()
34 if ((drive->dn & 1) || pair == NULL) in generic_ide_suspend()
73 ide_drive_t *drive = to_ide_device(dev); in generic_ide_resume() local
74 ide_drive_t *pair = ide_get_pair_dev(drive); in generic_ide_resume()
75 ide_hwif_t *hwif = drive->hwif; in generic_ide_resume()
82 if ((drive->dn & 1) == 0 || pair == NULL) { in generic_ide_resume()
87 ide_acpi_exec_tfs(drive); in generic_ide_resume()
91 rq = blk_get_request(drive->queue, READ, __GFP_RECLAIM); in generic_ide_resume()
105 drv->resume(drive); in generic_ide_resume()
111 void ide_complete_power_step(ide_drive_t *drive, struct request *rq) in ide_complete_power_step() argument
117 drive->name, pm->pm_step); in ide_complete_power_step()
119 if (drive->media != ide_disk) in ide_complete_power_step()
141 ide_startstop_t ide_start_power_step(ide_drive_t *drive, struct request *rq) in ide_start_power_step() argument
148 if (drive->media != ide_disk) in ide_start_power_step()
151 if (ata_id_flush_enabled(drive->id) == 0 || in ide_start_power_step()
152 (drive->dev_flags & IDE_DFLAG_WCACHE) == 0) { in ide_start_power_step()
153 ide_complete_power_step(drive, rq); in ide_start_power_step()
156 if (ata_id_flush_ext_enabled(drive->id)) in ide_start_power_step()
165 ide_set_max_pio(drive); in ide_start_power_step()
169 if (drive->media != ide_disk) in ide_start_power_step()
172 ide_complete_power_step(drive, rq); in ide_start_power_step()
183 if (drive->hwif->dma_ops == NULL) in ide_start_power_step()
188 ide_set_dma(drive); in ide_start_power_step()
201 return do_rw_taskfile(drive, &cmd); in ide_start_power_step()
212 void ide_complete_pm_rq(ide_drive_t *drive, struct request *rq) in ide_complete_pm_rq() argument
214 struct request_queue *q = drive->queue; in ide_complete_pm_rq()
218 ide_complete_power_step(drive, rq); in ide_complete_pm_rq()
223 printk("%s: completing PM request, %s\n", drive->name, in ide_complete_pm_rq()
230 drive->dev_flags &= ~IDE_DFLAG_BLOCKED; in ide_complete_pm_rq()
233 drive->hwif->rq = NULL; in ide_complete_pm_rq()
239 void ide_check_pm_state(ide_drive_t *drive, struct request *rq) in ide_check_pm_state() argument
246 drive->dev_flags |= IDE_DFLAG_BLOCKED; in ide_check_pm_state()
257 ide_hwif_t *hwif = drive->hwif; in ide_check_pm_state()
259 struct request_queue *q = drive->queue; in ide_check_pm_state()
263 printk("%s: Wakeup request inited, waiting for !BSY...\n", drive->name); in ide_check_pm_state()
267 printk(KERN_WARNING "%s: bus not ready on wakeup\n", drive->name); in ide_check_pm_state()
268 tp_ops->dev_select(drive); in ide_check_pm_state()
272 printk(KERN_WARNING "%s: drive not ready on wakeup\n", drive->name); in ide_check_pm_state()