Lines Matching refs:drive

30 	ide_drive_t *drive = cdi->handle;  in ide_cdrom_release_real()  local
33 drive->atapi_flags &= ~IDE_AFLAG_TOC_VALID; in ide_cdrom_release_real()
43 ide_drive_t *drive = cdi->handle; in ide_cdrom_drive_status() local
51 stat = cdrom_check_status(drive, &sense); in ide_cdrom_drive_status()
91 ide_drive_t *drive = cdi->handle; in ide_cdrom_check_events_real() local
95 (void) cdrom_check_status(drive, NULL); in ide_cdrom_check_events_real()
96 retval = (drive->dev_flags & IDE_DFLAG_MEDIA_CHANGED) ? 1 : 0; in ide_cdrom_check_events_real()
97 drive->dev_flags &= ~IDE_DFLAG_MEDIA_CHANGED; in ide_cdrom_check_events_real()
107 int cdrom_eject(ide_drive_t *drive, int ejectflag, in cdrom_eject() argument
110 struct cdrom_info *cd = drive->driver_data; in cdrom_eject()
115 if ((drive->atapi_flags & IDE_AFLAG_NO_EJECT) && !ejectflag) in cdrom_eject()
119 if ((drive->atapi_flags & IDE_AFLAG_DOOR_LOCKED) && ejectflag) in cdrom_eject()
131 return ide_cd_queue_pc(drive, cmd, 0, NULL, NULL, sense, 0, 0); in cdrom_eject()
136 int ide_cd_lockdoor(ide_drive_t *drive, int lockflag, in ide_cd_lockdoor() argument
146 if ((drive->dev_flags & IDE_DFLAG_DOORLOCKING) == 0) { in ide_cd_lockdoor()
156 stat = ide_cd_queue_pc(drive, cmd, 0, NULL, NULL, in ide_cd_lockdoor()
166 drive->name); in ide_cd_lockdoor()
167 drive->dev_flags &= ~IDE_DFLAG_DOORLOCKING; in ide_cd_lockdoor()
177 drive->atapi_flags |= IDE_AFLAG_DOOR_LOCKED; in ide_cd_lockdoor()
179 drive->atapi_flags &= ~IDE_AFLAG_DOOR_LOCKED; in ide_cd_lockdoor()
187 ide_drive_t *drive = cdi->handle; in ide_cdrom_tray_move() local
191 int stat = ide_cd_lockdoor(drive, 0, &sense); in ide_cdrom_tray_move()
197 return cdrom_eject(drive, !position, &sense); in ide_cdrom_tray_move()
202 ide_drive_t *drive = cdi->handle; in ide_cdrom_lock_door() local
204 return ide_cd_lockdoor(drive, lock, NULL); in ide_cdrom_lock_door()
213 ide_drive_t *drive = cdi->handle; in ide_cdrom_select_speed() local
214 struct cdrom_info *cd = drive->driver_data; in ide_cdrom_select_speed()
238 stat = ide_cd_queue_pc(drive, cmd, 0, NULL, NULL, &sense, 0, 0); in ide_cdrom_select_speed()
240 if (!ide_cdrom_get_capabilities(drive, buf)) { in ide_cdrom_select_speed()
241 ide_cdrom_update_speed(drive, buf); in ide_cdrom_select_speed()
252 ide_drive_t *drive = cdi->handle; in ide_cdrom_get_last_session() local
253 struct cdrom_info *info = drive->driver_data; in ide_cdrom_get_last_session()
257 if ((drive->atapi_flags & IDE_AFLAG_TOC_VALID) == 0 || !info->toc) { in ide_cdrom_get_last_session()
258 ret = ide_cd_read_toc(drive, &sense); in ide_cdrom_get_last_session()
273 ide_drive_t *drive = cdi->handle; in ide_cdrom_get_mcn() local
287 stat = ide_cd_queue_pc(drive, cmd, 0, buf, &len, NULL, 0, 0); in ide_cdrom_get_mcn()
300 ide_drive_t *drive = cdi->handle; in ide_cdrom_reset() local
301 struct cdrom_info *cd = drive->driver_data; in ide_cdrom_reset()
306 rq = blk_get_request(drive->queue, READ, __GFP_WAIT); in ide_cdrom_reset()
309 ret = blk_execute_rq(drive->queue, cd->disk, rq, 0); in ide_cdrom_reset()
315 if (drive->atapi_flags & IDE_AFLAG_DOOR_LOCKED) in ide_cdrom_reset()
316 (void)ide_cd_lockdoor(drive, 1, &sense); in ide_cdrom_reset()
321 static int ide_cd_get_toc_entry(ide_drive_t *drive, int track, in ide_cd_get_toc_entry() argument
324 struct cdrom_info *info = drive->driver_data; in ide_cd_get_toc_entry()
331 if ((drive->atapi_flags & IDE_AFLAG_TOC_VALID) == 0) in ide_cd_get_toc_entry()
350 static int ide_cd_fake_play_trkind(ide_drive_t *drive, void *arg) in ide_cd_fake_play_trkind() argument
359 stat = ide_cd_get_toc_entry(drive, ti->cdti_trk0, &first_toc); in ide_cd_fake_play_trkind()
363 stat = ide_cd_get_toc_entry(drive, ti->cdti_trk1, &last_toc); in ide_cd_fake_play_trkind()
381 return ide_cd_queue_pc(drive, cmd, 0, NULL, NULL, &sense, 0, 0); in ide_cd_fake_play_trkind()
384 static int ide_cd_read_tochdr(ide_drive_t *drive, void *arg) in ide_cd_read_tochdr() argument
386 struct cdrom_info *cd = drive->driver_data; in ide_cd_read_tochdr()
392 stat = ide_cd_read_toc(drive, NULL); in ide_cd_read_tochdr()
403 static int ide_cd_read_tocentry(ide_drive_t *drive, void *arg) in ide_cd_read_tocentry() argument
409 stat = ide_cd_get_toc_entry(drive, tocentry->cdte_track, &toce); in ide_cd_read_tocentry()
429 ide_drive_t *drive = cdi->handle; in ide_cdrom_audio_ioctl() local
437 return ide_cd_fake_play_trkind(drive, arg); in ide_cdrom_audio_ioctl()
439 return ide_cd_read_tochdr(drive, arg); in ide_cdrom_audio_ioctl()
441 return ide_cd_read_tocentry(drive, arg); in ide_cdrom_audio_ioctl()
451 ide_drive_t *drive = cdi->handle; in ide_cdrom_packet() local
471 cgc->stat = ide_cd_queue_pc(drive, cgc->cmd, in ide_cdrom_packet()