Lines Matching refs:scdrom
37 struct scsi_cdrom *scdrom = raw_to_scsi_cdrom(disk); in scsi_cdrom_read() local
38 struct rt_scsi_device *sdev = scdrom->sdev; in scsi_cdrom_read()
57 struct scsi_cdrom *scdrom = raw_to_scsi_cdrom(disk); in scsi_cdrom_getgeome() local
59 rt_memcpy(geometry, &scdrom->geometry, sizeof(scdrom->geometry)); in scsi_cdrom_getgeome()
78 struct scsi_cdrom *scdrom = rt_calloc(1, sizeof(*scdrom)); in scsi_cdrom_probe() local
80 if (!scdrom) in scsi_cdrom_probe()
85 if ((scdrom->cdrom_id = rt_dm_ida_alloc(&cdrom_ida)) < 0) in scsi_cdrom_probe()
90 sdev->priv = scdrom; in scsi_cdrom_probe()
91 scdrom->sdev = sdev; in scsi_cdrom_probe()
92 scdrom->parent.ida = &scsi_cdrom_ida; in scsi_cdrom_probe()
93 scdrom->parent.read_only = RT_TRUE; in scsi_cdrom_probe()
94 scdrom->parent.parallel_io = RT_FALSE; in scsi_cdrom_probe()
95 scdrom->parent.ops = &scsi_cdrom_ops; in scsi_cdrom_probe()
96 scdrom->parent.max_partitions = RT_BLK_PARTITION_NONE; in scsi_cdrom_probe()
109 scdrom->geometry.bytes_per_sector = sdev->block_size; in scsi_cdrom_probe()
110 scdrom->geometry.block_size = sdev->block_size; in scsi_cdrom_probe()
111 scdrom->geometry.sector_count = sdev->last_block + 1; in scsi_cdrom_probe()
113 rt_dm_dev_set_name(&scdrom->parent.parent, "cdrom%u", scdrom->cdrom_id); in scsi_cdrom_probe()
115 if ((err = rt_hw_blk_disk_register(&scdrom->parent))) in scsi_cdrom_probe()
123 rt_dm_ida_free(&cdrom_ida, scdrom->cdrom_id); in scsi_cdrom_probe()
124 rt_free(scdrom); in scsi_cdrom_probe()
131 struct scsi_cdrom *scdrom = sdev->priv; in scsi_cdrom_remove() local
133 rt_dm_ida_free(&cdrom_ida, scdrom->cdrom_id); in scsi_cdrom_remove()
135 return rt_hw_blk_disk_unregister(&scdrom->parent); in scsi_cdrom_remove()