• Home
  • Raw
  • Download

Lines Matching full:drive

141 	ide_drive_t		*drive;  member
244 if (ide_device_get(tape->drive)) in ide_tape_get()
256 ide_drive_t *drive = tape->drive; in ide_tape_put() local
260 ide_device_put(drive); in ide_tape_put()
268 static void idetape_analyze_error(ide_drive_t *drive) in idetape_analyze_error() argument
270 idetape_tape_t *tape = drive->driver_data; in idetape_analyze_error()
271 struct ide_atapi_pc *pc = drive->failed_pc; in idetape_analyze_error()
272 struct request *rq = drive->hwif->rq; in idetape_analyze_error()
326 static int ide_tape_callback(ide_drive_t *drive, int dsc) in ide_tape_callback() argument
328 idetape_tape_t *tape = drive->driver_data; in ide_tape_callback()
329 struct ide_atapi_pc *pc = drive->pc; in ide_tape_callback()
330 struct request *rq = drive->hwif->rq; in ide_tape_callback()
338 ide_tape_handle_dsc(drive); in ide_tape_callback()
340 if (drive->failed_pc == pc) in ide_tape_callback()
341 drive->failed_pc = NULL; in ide_tape_callback()
345 idetape_analyze_error(drive); in ide_tape_callback()
378 static void ide_tape_stall_queue(ide_drive_t *drive) in ide_tape_stall_queue() argument
380 idetape_tape_t *tape = drive->driver_data; in ide_tape_stall_queue()
383 drive->hwif->rq->cmd[0], tape->dsc_poll_freq); in ide_tape_stall_queue()
387 ide_stall_queue(drive, tape->dsc_poll_freq); in ide_tape_stall_queue()
390 static void ide_tape_handle_dsc(ide_drive_t *drive) in ide_tape_handle_dsc() argument
392 idetape_tape_t *tape = drive->driver_data; in ide_tape_handle_dsc()
399 ide_tape_stall_queue(drive); in ide_tape_handle_dsc()
405 * The current Packet Command is available in drive->pc, and will not change
411 * 1. ide_tape_issue_pc will send the packet command to the drive, and will set
420 * Since the tape drive will not issue an interrupt, we have to poll for this
439 static ide_startstop_t ide_tape_issue_pc(ide_drive_t *drive, in ide_tape_issue_pc() argument
443 idetape_tape_t *tape = drive->driver_data; in ide_tape_issue_pc()
444 struct request *rq = drive->hwif->rq; in ide_tape_issue_pc()
446 if (drive->failed_pc == NULL && pc->c[0] != REQUEST_SENSE) in ide_tape_issue_pc()
447 drive->failed_pc = pc; in ide_tape_issue_pc()
450 drive->pc = pc; in ide_tape_issue_pc()
475 drive->failed_pc = NULL; in ide_tape_issue_pc()
476 drive->pc_callback(drive, 0); in ide_tape_issue_pc()
477 ide_complete_rq(drive, BLK_STS_IOERR, blk_rq_bytes(rq)); in ide_tape_issue_pc()
485 return ide_issue_pc(drive, cmd); in ide_tape_issue_pc()
515 static ide_startstop_t idetape_media_access_finished(ide_drive_t *drive) in idetape_media_access_finished() argument
517 ide_hwif_t *hwif = drive->hwif; in idetape_media_access_finished()
518 idetape_tape_t *tape = drive->driver_data; in idetape_media_access_finished()
519 struct ide_atapi_pc *pc = drive->pc; in idetape_media_access_finished()
531 ide_retry_pc(drive); in idetape_media_access_finished()
537 drive->failed_pc = NULL; in idetape_media_access_finished()
539 drive->pc_callback(drive, 0); in idetape_media_access_finished()
566 static ide_startstop_t idetape_do_request(ide_drive_t *drive, in idetape_do_request() argument
569 ide_hwif_t *hwif = drive->hwif; in idetape_do_request()
570 idetape_tape_t *tape = drive->driver_data; in idetape_do_request()
585 if (drive->failed_pc && drive->pc->c[0] == REQUEST_SENSE) { in idetape_do_request()
586 pc = drive->failed_pc; in idetape_do_request()
596 if ((drive->dev_flags & IDE_DFLAG_DSC_OVERLAP) == 0 && in idetape_do_request()
598 drive->atapi_flags |= IDE_AFLAG_IGNORE_DSC; in idetape_do_request()
600 if (drive->dev_flags & IDE_DFLAG_POST_RESET) { in idetape_do_request()
601 drive->atapi_flags |= IDE_AFLAG_IGNORE_DSC; in idetape_do_request()
602 drive->dev_flags &= ~IDE_DFLAG_POST_RESET; in idetape_do_request()
605 if (!(drive->atapi_flags & IDE_AFLAG_IGNORE_DSC) && in idetape_do_request()
615 idetape_media_access_finished(drive); in idetape_do_request()
618 return ide_do_reset(drive); in idetape_do_request()
624 ide_tape_stall_queue(drive); in idetape_do_request()
627 drive->atapi_flags &= ~IDE_AFLAG_IGNORE_DSC; in idetape_do_request()
648 idetape_media_access_finished(drive); in idetape_do_request()
655 ide_prep_sense(drive, rq); in idetape_do_request()
665 ide_map_sg(drive, &cmd); in idetape_do_request()
667 return ide_tape_issue_pc(drive, &cmd, pc); in idetape_do_request()
674 static void idetape_create_write_filemark_cmd(ide_drive_t *drive, in idetape_create_write_filemark_cmd() argument
683 static int idetape_wait_ready(ide_drive_t *drive, unsigned long timeout) in idetape_wait_ready() argument
685 idetape_tape_t *tape = drive->driver_data; in idetape_wait_ready()
690 set_bit(ilog2(IDE_AFLAG_MEDIUM_PRESENT), &drive->atapi_flags); in idetape_wait_ready()
693 if (ide_do_test_unit_ready(drive, disk) == 0) in idetape_wait_ready()
700 ide_do_start_stop(drive, disk, IDETAPE_LU_LOAD_MASK); in idetape_wait_ready()
711 static int idetape_flush_tape_buffers(ide_drive_t *drive) in idetape_flush_tape_buffers() argument
713 struct ide_tape_obj *tape = drive->driver_data; in idetape_flush_tape_buffers()
717 idetape_create_write_filemark_cmd(drive, &pc, 0); in idetape_flush_tape_buffers()
718 rc = ide_queue_pc_tail(drive, tape->disk, &pc, NULL, 0); in idetape_flush_tape_buffers()
721 idetape_wait_ready(drive, 60 * 5 * HZ); in idetape_flush_tape_buffers()
725 static int ide_tape_read_position(ide_drive_t *drive) in ide_tape_read_position() argument
727 idetape_tape_t *tape = drive->driver_data; in ide_tape_read_position()
738 if (ide_queue_pc_tail(drive, tape->disk, &pc, buf, pc.req_xfer)) in ide_tape_read_position()
751 &drive->atapi_flags); in ide_tape_read_position()
760 &drive->atapi_flags); in ide_tape_read_position()
767 static void idetape_create_locate_cmd(ide_drive_t *drive, in idetape_create_locate_cmd() argument
779 static void __ide_tape_discard_merge_buffer(ide_drive_t *drive) in __ide_tape_discard_merge_buffer() argument
781 idetape_tape_t *tape = drive->driver_data; in __ide_tape_discard_merge_buffer()
786 clear_bit(ilog2(IDE_AFLAG_FILEMARK), &drive->atapi_flags); in __ide_tape_discard_merge_buffer()
802 static int idetape_position_tape(ide_drive_t *drive, unsigned int block, in idetape_position_tape() argument
805 idetape_tape_t *tape = drive->driver_data; in idetape_position_tape()
811 __ide_tape_discard_merge_buffer(drive); in idetape_position_tape()
812 idetape_wait_ready(drive, 60 * 5 * HZ); in idetape_position_tape()
813 idetape_create_locate_cmd(drive, &pc, block, partition, skip); in idetape_position_tape()
814 ret = ide_queue_pc_tail(drive, disk, &pc, NULL, 0); in idetape_position_tape()
818 ret = ide_tape_read_position(drive); in idetape_position_tape()
824 static void ide_tape_discard_merge_buffer(ide_drive_t *drive, in ide_tape_discard_merge_buffer() argument
827 idetape_tape_t *tape = drive->driver_data; in ide_tape_discard_merge_buffer()
830 __ide_tape_discard_merge_buffer(drive); in ide_tape_discard_merge_buffer()
832 position = ide_tape_read_position(drive); in ide_tape_discard_merge_buffer()
834 if (idetape_position_tape(drive, seek, 0, 0)) { in ide_tape_discard_merge_buffer()
846 static int idetape_queue_rw_tail(ide_drive_t *drive, int cmd, int size) in idetape_queue_rw_tail() argument
848 idetape_tape_t *tape = drive->driver_data; in idetape_queue_rw_tail()
857 rq = blk_get_request(drive->queue, REQ_OP_DRV_IN, 0); in idetape_queue_rw_tail()
864 ret = blk_rq_map_kern(drive->queue, rq, tape->buf, size, in idetape_queue_rw_tail()
870 blk_execute_rq(drive->queue, tape->disk, rq, 0); in idetape_queue_rw_tail()
896 static void idetape_create_rewind_cmd(ide_drive_t *drive, in idetape_create_rewind_cmd() argument
921 static void ide_tape_flush_merge_buffer(ide_drive_t *drive) in ide_tape_flush_merge_buffer() argument
923 idetape_tape_t *tape = drive->driver_data; in ide_tape_flush_merge_buffer()
934 idetape_queue_rw_tail(drive, REQ_IDETAPE_WRITE, aligned); in ide_tape_flush_merge_buffer()
941 static int idetape_init_rw(ide_drive_t *drive, int dir) in idetape_init_rw() argument
943 idetape_tape_t *tape = drive->driver_data; in idetape_init_rw()
952 ide_tape_discard_merge_buffer(drive, 1); in idetape_init_rw()
954 ide_tape_flush_merge_buffer(drive); in idetape_init_rw()
955 idetape_flush_tape_buffers(drive); in idetape_init_rw()
975 if (drive->dev_flags & IDE_DFLAG_DSC_OVERLAP) { in idetape_init_rw()
979 rc = idetape_queue_rw_tail(drive, cmd, 0); in idetape_init_rw()
991 static void idetape_pad_zeros(ide_drive_t *drive, int bcount) in idetape_pad_zeros() argument
993 idetape_tape_t *tape = drive->driver_data; in idetape_pad_zeros()
1000 idetape_queue_rw_tail(drive, REQ_IDETAPE_WRITE, count); in idetape_pad_zeros()
1009 static int idetape_rewind_tape(ide_drive_t *drive) in idetape_rewind_tape() argument
1011 struct ide_tape_obj *tape = drive->driver_data; in idetape_rewind_tape()
1018 idetape_create_rewind_cmd(drive, &pc); in idetape_rewind_tape()
1019 ret = ide_queue_pc_tail(drive, disk, &pc, NULL, 0); in idetape_rewind_tape()
1023 ret = ide_tape_read_position(drive); in idetape_rewind_tape()
1030 static int idetape_blkdev_ioctl(ide_drive_t *drive, unsigned int cmd, in idetape_blkdev_ioctl() argument
1033 idetape_tape_t *tape = drive->driver_data; in idetape_blkdev_ioctl()
1063 static int idetape_space_over_filemarks(ide_drive_t *drive, short mt_op, in idetape_space_over_filemarks() argument
1066 idetape_tape_t *tape = drive->driver_data; in idetape_space_over_filemarks()
1086 &drive->atapi_flags)) in idetape_space_over_filemarks()
1088 ide_tape_discard_merge_buffer(drive, 0); in idetape_space_over_filemarks()
1096 return ide_queue_pc_tail(drive, disk, &pc, NULL, 0); in idetape_space_over_filemarks()
1101 retval = idetape_space_over_filemarks(drive, MTFSF, in idetape_space_over_filemarks()
1106 return idetape_space_over_filemarks(drive, MTFSF, count); in idetape_space_over_filemarks()
1133 ide_drive_t *drive = tape->drive; in idetape_chrdev_read() local
1141 if (test_bit(ilog2(IDE_AFLAG_DETECT_BS), &drive->atapi_flags)) in idetape_chrdev_read()
1147 rc = idetape_init_rw(drive, IDETAPE_DIR_READ); in idetape_chrdev_read()
1158 &drive->atapi_flags)) in idetape_chrdev_read()
1161 if (idetape_queue_rw_tail(drive, REQ_IDETAPE_READ, in idetape_chrdev_read()
1176 if (!done && test_bit(ilog2(IDE_AFLAG_FILEMARK), &drive->atapi_flags)) { in idetape_chrdev_read()
1177 idetape_space_over_filemarks(drive, MTFSF, 1); in idetape_chrdev_read()
1188 ide_drive_t *drive = tape->drive; in idetape_chrdev_write() local
1193 /* The drive is write protected. */ in idetape_chrdev_write()
1200 rc = idetape_init_rw(drive, IDETAPE_DIR_WRITE); in idetape_chrdev_write()
1209 idetape_queue_rw_tail(drive, REQ_IDETAPE_WRITE, in idetape_chrdev_write()
1227 static int idetape_write_filemark(ide_drive_t *drive) in idetape_write_filemark() argument
1229 struct ide_tape_obj *tape = drive->driver_data; in idetape_write_filemark()
1233 idetape_create_write_filemark_cmd(drive, &pc, 1); in idetape_write_filemark()
1234 if (ide_queue_pc_tail(drive, tape->disk, &pc, NULL, 0)) { in idetape_write_filemark()
1254 static int idetape_mtioctop(ide_drive_t *drive, short mt_op, int mt_count) in idetape_mtioctop() argument
1256 idetape_tape_t *tape = drive->driver_data; in idetape_mtioctop()
1271 return idetape_space_over_filemarks(drive, mt_op, mt_count); in idetape_mtioctop()
1280 ide_tape_discard_merge_buffer(drive, 1); in idetape_mtioctop()
1282 retval = idetape_write_filemark(drive); in idetape_mtioctop()
1288 ide_tape_discard_merge_buffer(drive, 0); in idetape_mtioctop()
1289 if (idetape_rewind_tape(drive)) in idetape_mtioctop()
1293 ide_tape_discard_merge_buffer(drive, 0); in idetape_mtioctop()
1294 return ide_do_start_stop(drive, disk, IDETAPE_LU_LOAD_MASK); in idetape_mtioctop()
1302 if (!ide_set_media_lock(drive, disk, 0)) in idetape_mtioctop()
1305 ide_tape_discard_merge_buffer(drive, 0); in idetape_mtioctop()
1306 retval = ide_do_start_stop(drive, disk, !IDETAPE_LU_LOAD_MASK); in idetape_mtioctop()
1309 &drive->atapi_flags); in idetape_mtioctop()
1312 ide_tape_discard_merge_buffer(drive, 0); in idetape_mtioctop()
1313 return idetape_flush_tape_buffers(drive); in idetape_mtioctop()
1315 ide_tape_discard_merge_buffer(drive, 0); in idetape_mtioctop()
1316 return ide_do_start_stop(drive, disk, in idetape_mtioctop()
1320 return ide_queue_pc_tail(drive, disk, &pc, NULL, 0); in idetape_mtioctop()
1322 (void)idetape_rewind_tape(drive); in idetape_mtioctop()
1324 return ide_queue_pc_tail(drive, disk, &pc, NULL, 0); in idetape_mtioctop()
1332 &drive->atapi_flags); in idetape_mtioctop()
1335 &drive->atapi_flags); in idetape_mtioctop()
1338 ide_tape_discard_merge_buffer(drive, 0); in idetape_mtioctop()
1339 return idetape_position_tape(drive, in idetape_mtioctop()
1342 ide_tape_discard_merge_buffer(drive, 0); in idetape_mtioctop()
1343 return idetape_position_tape(drive, 0, mt_count, 0); in idetape_mtioctop()
1347 retval = ide_set_media_lock(drive, disk, 1); in idetape_mtioctop()
1353 retval = ide_set_media_lock(drive, disk, 0); in idetape_mtioctop()
1374 ide_drive_t *drive = tape->drive; in do_idetape_chrdev_ioctl() local
1384 ide_tape_flush_merge_buffer(drive); in do_idetape_chrdev_ioctl()
1385 idetape_flush_tape_buffers(drive); in do_idetape_chrdev_ioctl()
1390 position = ide_tape_read_position(drive); in do_idetape_chrdev_ioctl()
1398 return idetape_mtioctop(drive, mtop.mt_op, mtop.mt_count); in do_idetape_chrdev_ioctl()
1420 ide_tape_discard_merge_buffer(drive, 1); in do_idetape_chrdev_ioctl()
1421 return idetape_blkdev_ioctl(drive, cmd, arg); in do_idetape_chrdev_ioctl()
1439 static void ide_tape_get_bsize_from_bdesc(ide_drive_t *drive) in ide_tape_get_bsize_from_bdesc() argument
1441 idetape_tape_t *tape = drive->driver_data; in ide_tape_get_bsize_from_bdesc()
1446 if (ide_queue_pc_tail(drive, tape->disk, &pc, buf, pc.req_xfer)) { in ide_tape_get_bsize_from_bdesc()
1467 ide_drive_t *drive; in idetape_chrdev_open() local
1482 drive = tape->drive; in idetape_chrdev_open()
1495 if (test_and_set_bit(ilog2(IDE_AFLAG_BUSY), &drive->atapi_flags)) { in idetape_chrdev_open()
1500 retval = idetape_wait_ready(drive, 60 * HZ); in idetape_chrdev_open()
1502 clear_bit(ilog2(IDE_AFLAG_BUSY), &drive->atapi_flags); in idetape_chrdev_open()
1503 printk(KERN_ERR "ide-tape: %s: drive not ready\n", tape->name); in idetape_chrdev_open()
1507 ide_tape_read_position(drive); in idetape_chrdev_open()
1508 if (!test_bit(ilog2(IDE_AFLAG_ADDRESS_VALID), &drive->atapi_flags)) in idetape_chrdev_open()
1509 (void)idetape_rewind_tape(drive); in idetape_chrdev_open()
1511 /* Read block size and write protect status from drive. */ in idetape_chrdev_open()
1512 ide_tape_get_bsize_from_bdesc(drive); in idetape_chrdev_open()
1520 /* Make sure drive isn't write protected if user wants to write. */ in idetape_chrdev_open()
1524 clear_bit(ilog2(IDE_AFLAG_BUSY), &drive->atapi_flags); in idetape_chrdev_open()
1530 /* Lock the tape drive door so user can't eject. */ in idetape_chrdev_open()
1532 if (!ide_set_media_lock(drive, tape->disk, 1)) { in idetape_chrdev_open()
1549 static void idetape_write_release(ide_drive_t *drive, unsigned int minor) in idetape_write_release() argument
1551 idetape_tape_t *tape = drive->driver_data; in idetape_write_release()
1553 ide_tape_flush_merge_buffer(drive); in idetape_write_release()
1556 idetape_pad_zeros(drive, tape->blk_size * in idetape_write_release()
1561 idetape_write_filemark(drive); in idetape_write_release()
1562 idetape_flush_tape_buffers(drive); in idetape_write_release()
1563 idetape_flush_tape_buffers(drive); in idetape_write_release()
1569 ide_drive_t *drive = tape->drive; in idetape_chrdev_release() local
1574 tape = drive->driver_data; in idetape_chrdev_release()
1579 idetape_write_release(drive, minor); in idetape_chrdev_release()
1582 ide_tape_discard_merge_buffer(drive, 1); in idetape_chrdev_release()
1586 &drive->atapi_flags)) in idetape_chrdev_release()
1587 (void) idetape_rewind_tape(drive); in idetape_chrdev_release()
1591 if (!ide_set_media_lock(drive, tape->disk, 0)) in idetape_chrdev_release()
1595 clear_bit(ilog2(IDE_AFLAG_BUSY), &drive->atapi_flags); in idetape_chrdev_release()
1603 static void idetape_get_inquiry_results(ide_drive_t *drive) in idetape_get_inquiry_results() argument
1605 idetape_tape_t *tape = drive->driver_data; in idetape_get_inquiry_results()
1611 if (ide_queue_pc_tail(drive, tape->disk, &pc, pc_buf, pc.req_xfer)) { in idetape_get_inquiry_results()
1625 drive->name, tape->name, vendor_id, product_id, fw_rev); in idetape_get_inquiry_results()
1632 static void idetape_get_mode_sense_results(ide_drive_t *drive) in idetape_get_mode_sense_results() argument
1634 idetape_tape_t *tape = drive->driver_data; in idetape_get_mode_sense_results()
1640 if (ide_queue_pc_tail(drive, tape->disk, &pc, buf, pc.req_xfer)) { in idetape_get_mode_sense_results()
1662 "(assuming 650KB/sec)\n", drive->name); in idetape_get_mode_sense_results()
1667 "(assuming 650KB/sec)\n", drive->name); in idetape_get_mode_sense_results()
1675 drive->dev_flags &= ~IDE_DFLAG_DOORLOCKING; in idetape_get_mode_sense_results()
1685 static int get_##name(ide_drive_t *drive) \
1687 idetape_tape_t *tape = drive->driver_data; \
1692 static int set_##name(ide_drive_t *drive, int arg) \
1694 idetape_tape_t *tape = drive->driver_data; \
1708 static int mulf_tdsc(ide_drive_t *drive) { return 1000; } in mulf_tdsc() argument
1709 static int divf_tdsc(ide_drive_t *drive) { return HZ; } in divf_tdsc() argument
1710 static int divf_buffer(ide_drive_t *drive) { return 2; } in divf_buffer() argument
1711 static int divf_buffer_size(ide_drive_t *drive) { return 1024; } in divf_buffer_size() argument
1745 static void idetape_setup(ide_drive_t *drive, idetape_tape_t *tape, int minor) in idetape_setup() argument
1753 drive->pc_callback = ide_tape_callback; in idetape_setup()
1755 drive->dev_flags |= IDE_DFLAG_DSC_OVERLAP; in idetape_setup()
1757 if (drive->hwif->host_flags & IDE_HFLAG_NO_DSC) { in idetape_setup()
1760 drive->dev_flags &= ~IDE_DFLAG_DSC_OVERLAP; in idetape_setup()
1764 if (strstr((char *)&drive->id[ATA_ID_PROD], "Seagate STT3401")) in idetape_setup()
1765 drive->dev_flags &= ~IDE_DFLAG_DSC_OVERLAP; in idetape_setup()
1773 idetape_get_inquiry_results(drive); in idetape_setup()
1774 idetape_get_mode_sense_results(drive); in idetape_setup()
1775 ide_tape_get_bsize_from_bdesc(drive); in idetape_setup()
1797 drive->name, tape->name, *(u16 *)&tape->caps[14], in idetape_setup()
1801 (drive->dev_flags & IDE_DFLAG_USING_DMA) ? ", DMA" : ""); in idetape_setup()
1803 ide_proc_register_driver(drive, tape->driver); in idetape_setup()
1806 static void ide_tape_remove(ide_drive_t *drive) in ide_tape_remove() argument
1808 idetape_tape_t *tape = drive->driver_data; in ide_tape_remove()
1810 ide_proc_unregister_driver(drive, tape->driver); in ide_tape_remove()
1822 ide_drive_t *drive = tape->drive; in ide_tape_release() local
1827 drive->dev_flags &= ~IDE_DFLAG_DSC_OVERLAP; in ide_tape_release()
1828 drive->driver_data = NULL; in ide_tape_release()
1841 ide_drive_t *drive = (ide_drive_t *) m->private; in idetape_name_proc_show() local
1842 idetape_tape_t *tape = drive->driver_data; in idetape_name_proc_show()
1854 static ide_proc_entry_t *ide_tape_proc_entries(ide_drive_t *drive) in ide_tape_proc_entries() argument
1859 static const struct ide_proc_devset *ide_tape_proc_devsets(ide_drive_t *drive) in ide_tape_proc_devsets() argument
1921 ide_drive_t *drive = tape->drive; in idetape_ioctl() local
1925 err = generic_ide_ioctl(drive, bdev, cmd, arg); in idetape_ioctl()
1927 err = idetape_blkdev_ioctl(drive, cmd, arg); in idetape_ioctl()
1940 static int ide_tape_probe(ide_drive_t *drive) in ide_tape_probe() argument
1948 if (!strstr(DRV_NAME, drive->driver_req)) in ide_tape_probe()
1951 if (drive->media != ide_tape) in ide_tape_probe()
1954 if ((drive->dev_flags & IDE_DFLAG_ID_READ) && in ide_tape_probe()
1955 ide_check_atapi_device(drive, DRV_NAME) == 0) { in ide_tape_probe()
1957 " the driver\n", drive->name); in ide_tape_probe()
1963 drive->name); in ide_tape_probe()
1971 ide_init_disk(g, drive); in ide_tape_probe()
1973 tape->dev.parent = &drive->gendev; in ide_tape_probe()
1975 dev_set_name(&tape->dev, "%s", dev_name(&drive->gendev)); in ide_tape_probe()
1980 tape->drive = drive; in ide_tape_probe()
1986 drive->driver_data = tape; in ide_tape_probe()
1994 idetape_setup(drive, tape, minor); in ide_tape_probe()
1996 device_create(idetape_sysfs_class, &drive->gendev, in ide_tape_probe()
1998 device_create(idetape_sysfs_class, &drive->gendev, in ide_tape_probe()