Lines Matching refs:gd
125 } gd; variable
233 gdrom_hardreset(gd.cd_info); in gdrom_execute_diagnostic()
256 gd.pending = 1; in gdrom_preparedisk_cmd()
257 gdrom_packetcommand(gd.cd_info, spin_command); in gdrom_preparedisk_cmd()
259 wait_event_interruptible_timeout(command_queue, gd.pending == 0, in gdrom_preparedisk_cmd()
261 gd.pending = 0; in gdrom_preparedisk_cmd()
263 if (gd.status & 0x01) { in gdrom_preparedisk_cmd()
293 if (gd.pending) { in gdrom_readtoc_cmd()
297 gd.pending = 1; in gdrom_readtoc_cmd()
298 gdrom_packetcommand(gd.cd_info, toc_command); in gdrom_readtoc_cmd()
299 wait_event_interruptible_timeout(command_queue, gd.pending == 0, in gdrom_readtoc_cmd()
301 if (gd.pending) { in gdrom_readtoc_cmd()
306 if (gd.status & 0x01) in gdrom_readtoc_cmd()
310 gd.pending = 0; in gdrom_readtoc_cmd()
336 if (!gd.toc) in gdrom_get_last_session()
340 err = gdrom_readtoc_cmd(gd.toc, 1); in gdrom_get_last_session()
344 err = gdrom_readtoc_cmd(gd.toc, 0); in gdrom_get_last_session()
351 fentry = get_entry_track(gd.toc->first); in gdrom_get_last_session()
352 lentry = get_entry_track(gd.toc->last); in gdrom_get_last_session()
354 track = get_entry_track(gd.toc->last); in gdrom_get_last_session()
356 data = gd.toc->entry[track - 1]; in gdrom_get_last_session()
362 if ((track > 100) || (track < get_entry_track(gd.toc->first))) { in gdrom_get_last_session()
446 if (gd.pending && !gdrom_wait_clrbusy()) { in gdrom_getsense()
450 gd.pending = 1; in gdrom_getsense()
451 gdrom_packetcommand(gd.cd_info, sense_command); in gdrom_getsense()
452 wait_event_interruptible_timeout(command_queue, gd.pending == 0, in gdrom_getsense()
454 if (gd.pending) in gdrom_getsense()
472 gd.pending = 0; in gdrom_getsense()
504 ret = cdrom_open(gd.cd_info, bdev, mode); in gdrom_bdops_open()
512 cdrom_release(gd.cd_info, mode); in gdrom_bdops_release()
519 return cdrom_check_events(gd.cd_info, clearing); in gdrom_bdops_check_events()
528 ret = cdrom_ioctl(gd.cd_info, bdev, mode, cmd, arg); in gdrom_bdops_ioctl()
544 gd.status = __raw_readb(GDROM_STATUSCOMMAND_REG); in gdrom_command_interrupt()
545 if (gd.pending != 1) in gdrom_command_interrupt()
547 gd.pending = 0; in gdrom_command_interrupt()
554 gd.status = __raw_readb(GDROM_STATUSCOMMAND_REG); in gdrom_dma_interrupt()
555 if (gd.transfer != 1) in gdrom_dma_interrupt()
557 gd.transfer = 0; in gdrom_dma_interrupt()
567 0, "gdrom_command", &gd); in gdrom_set_interrupt_handlers()
571 0, "gdrom_dma", &gd); in gdrom_set_interrupt_handlers()
573 free_irq(HW_EVENT_GDROM_CMD, &gd); in gdrom_set_interrupt_handlers()
636 gd.pending = 1; in gdrom_readdisk_dma()
637 gd.transfer = 1; in gdrom_readdisk_dma()
647 gd.transfer == 0, GDROM_DEFAULT_TIMEOUT); in gdrom_readdisk_dma()
648 err = gd.transfer ? BLK_STS_IOERR : BLK_STS_OK; in gdrom_readdisk_dma()
649 gd.transfer = 0; in gdrom_readdisk_dma()
650 gd.pending = 0; in gdrom_readdisk_dma()
745 gd.cd_info->ops = &gdrom_ops; in probe_gdrom_setupcd()
746 gd.cd_info->capacity = 1; in probe_gdrom_setupcd()
747 strcpy(gd.cd_info->name, GDROM_DEV_NAME); in probe_gdrom_setupcd()
748 gd.cd_info->mask = CDC_CLOSE_TRAY|CDC_OPEN_TRAY|CDC_LOCK| in probe_gdrom_setupcd()
754 gd.disk->major = gdrom_major; in probe_gdrom_setupdisk()
755 gd.disk->first_minor = 1; in probe_gdrom_setupdisk()
756 gd.disk->minors = 1; in probe_gdrom_setupdisk()
757 strcpy(gd.disk->disk_name, GDROM_DEV_NAME); in probe_gdrom_setupdisk()
762 blk_queue_logical_block_size(gd.gdrom_rq, GDROM_HARD_SECTOR); in probe_gdrom_setupqueue()
764 blk_queue_max_segments(gd.gdrom_rq, 1); in probe_gdrom_setupqueue()
766 blk_queue_max_segment_size(gd.gdrom_rq, 0x40000); in probe_gdrom_setupqueue()
767 gd.disk->queue = gd.gdrom_rq; in probe_gdrom_setupqueue()
793 gd.cd_info = kzalloc(sizeof(struct cdrom_device_info), GFP_KERNEL); in probe_gdrom()
794 if (!gd.cd_info) { in probe_gdrom()
799 gd.disk = alloc_disk(1); in probe_gdrom()
800 if (!gd.disk) { in probe_gdrom()
805 if (register_cdrom(gd.cd_info)) { in probe_gdrom()
809 gd.disk->fops = &gdrom_bdops; in probe_gdrom()
814 gd.gdrom_rq = blk_init_queue(gdrom_request, &gdrom_lock); in probe_gdrom()
815 if (!gd.gdrom_rq) { in probe_gdrom()
819 blk_queue_bounce_limit(gd.gdrom_rq, BLK_BOUNCE_HIGH); in probe_gdrom()
825 gd.toc = kzalloc(sizeof(struct gdromtoc), GFP_KERNEL); in probe_gdrom()
826 if (!gd.toc) { in probe_gdrom()
830 add_disk(gd.disk); in probe_gdrom()
834 blk_cleanup_queue(gd.gdrom_rq); in probe_gdrom()
836 free_irq(HW_EVENT_GDROM_DMA, &gd); in probe_gdrom()
837 free_irq(HW_EVENT_GDROM_CMD, &gd); in probe_gdrom()
840 del_gendisk(gd.disk); in probe_gdrom()
842 kfree(gd.cd_info); in probe_gdrom()
853 blk_cleanup_queue(gd.gdrom_rq); in remove_gdrom()
854 free_irq(HW_EVENT_GDROM_CMD, &gd); in remove_gdrom()
855 free_irq(HW_EVENT_GDROM_DMA, &gd); in remove_gdrom()
856 del_gendisk(gd.disk); in remove_gdrom()
859 unregister_cdrom(gd.cd_info); in remove_gdrom()
875 gd.toc = NULL; in init_gdrom()
891 kfree(gd.toc); in exit_gdrom()
892 kfree(gd.cd_info); in exit_gdrom()