Lines Matching defs:cgc
651 static int scsi_get_cdrom_generic_arg(struct cdrom_generic_command *cgc,
661 *cgc = (struct cdrom_generic_command) {
671 memcpy(&cgc->cmd, &cgc32.cmd, CDROM_PACKET_SIZE);
675 if (copy_from_user(cgc, arg, sizeof(*cgc)))
681 static int scsi_put_cdrom_generic_arg(const struct cdrom_generic_command *cgc,
687 .buffer = (uintptr_t)(cgc->buffer),
688 .buflen = cgc->buflen,
689 .stat = cgc->stat,
690 .sense = (uintptr_t)(cgc->sense),
691 .data_direction = cgc->data_direction,
692 .quiet = cgc->quiet,
693 .timeout = cgc->timeout,
694 .unused = (uintptr_t)(cgc->unused),
696 memcpy(&cgc32.cmd, &cgc->cmd, CDROM_PACKET_SIZE);
704 if (copy_to_user(arg, cgc, sizeof(*cgc)))
714 struct cdrom_generic_command cgc;
718 err = scsi_get_cdrom_generic_arg(&cgc, arg);
722 cgc.timeout = clock_t_to_jiffies(cgc.timeout);
725 hdr.cmd_len = sizeof(cgc.cmd);
726 hdr.dxfer_len = cgc.buflen;
727 switch (cgc.data_direction) {
744 hdr.dxferp = cgc.buffer;
745 hdr.sbp = cgc.sense;
748 hdr.timeout = jiffies_to_msecs(cgc.timeout);
750 hdr.cmd_len = sizeof(cgc.cmd);
759 cgc.stat = err;
760 cgc.buflen = hdr.resid;
761 if (scsi_put_cdrom_generic_arg(&cgc, arg))