Lines Matching refs:cd
67 void sr_vendor_init(Scsi_CD *cd) in sr_vendor_init() argument
70 cd->vendor = VENDOR_SCSI3; in sr_vendor_init()
72 const char *vendor = cd->device->vendor; in sr_vendor_init()
73 const char *model = cd->device->model; in sr_vendor_init()
76 cd->vendor = VENDOR_SCSI3; in sr_vendor_init()
77 if (cd->readcd_known) in sr_vendor_init()
81 if (cd->device->type == TYPE_WORM) { in sr_vendor_init()
82 cd->vendor = VENDOR_WRITER; in sr_vendor_init()
85 cd->vendor = VENDOR_NEC; in sr_vendor_init()
97 cd->cdi.mask |= CDC_MULTI_SESSION; in sr_vendor_init()
100 cd->vendor = VENDOR_TOSHIBA; in sr_vendor_init()
110 int sr_set_blocklength(Scsi_CD *cd, int blocklength) in sr_set_blocklength() argument
118 if (cd->vendor == VENDOR_TOSHIBA) in sr_set_blocklength()
127 sr_printk(KERN_INFO, cd, "MODE SELECT 0x%x/%d\n", density, blocklength); in sr_set_blocklength()
143 if (0 == (rc = sr_do_ioctl(cd, &cgc))) { in sr_set_blocklength()
144 cd->device->sector_size = blocklength; in sr_set_blocklength()
148 sr_printk(KERN_INFO, cd, in sr_set_blocklength()
161 Scsi_CD *cd = cdi->handle; in sr_cd_check() local
167 if (cd->cdi.mask & CDC_MULTI_SESSION) in sr_cd_check()
180 switch (cd->vendor) { in sr_cd_check()
191 rc = sr_do_ioctl(cd, &cgc); in sr_cd_check()
195 sr_printk(KERN_INFO, cd, "Hmm, seems the drive " in sr_cd_check()
219 rc = sr_do_ioctl(cd, &cgc); in sr_cd_check()
223 sr_printk(KERN_INFO, cd, "Hmm, seems the cdrom " in sr_cd_check()
248 rc = sr_do_ioctl(cd, &cgc); in sr_cd_check()
250 sr_printk(KERN_INFO, cd, "Hmm, seems the drive " in sr_cd_check()
263 sr_set_blocklength(cd, 2048); in sr_cd_check()
276 rc = sr_do_ioctl(cd, &cgc); in sr_cd_check()
281 sr_printk(KERN_WARNING, cd, in sr_cd_check()
294 rc = sr_do_ioctl(cd, &cgc); in sr_cd_check()
305 sr_printk(KERN_WARNING, cd, in sr_cd_check()
307 cd->vendor); in sr_cd_check()
312 cd->ms_offset = sector; in sr_cd_check()
313 cd->xa_flag = 0; in sr_cd_check()
314 if (CDS_AUDIO != sr_disk_status(cdi) && 1 == sr_is_xa(cd)) in sr_cd_check()
315 cd->xa_flag = 1; in sr_cd_check()
317 if (2048 != cd->device->sector_size) { in sr_cd_check()
318 sr_set_blocklength(cd, 2048); in sr_cd_check()
325 sr_printk(KERN_DEBUG, cd, "multisession offset=%lu\n", in sr_cd_check()