Lines Matching refs:cgc
684 static int pkt_generic_packet(struct pktcdvd_device *pd, struct packet_command *cgc) in pkt_generic_packet() argument
691 rq = scsi_alloc_request(q, (cgc->data_direction == CGC_DATA_WRITE) ? in pkt_generic_packet()
697 if (cgc->buflen) { in pkt_generic_packet()
698 ret = blk_rq_map_kern(q, rq, cgc->buffer, cgc->buflen, in pkt_generic_packet()
704 scmd->cmd_len = COMMAND_SIZE(cgc->cmd[0]); in pkt_generic_packet()
705 memcpy(scmd->cmnd, cgc->cmd, CDROM_PACKET_SIZE); in pkt_generic_packet()
708 if (cgc->quiet) in pkt_generic_packet()
735 struct packet_command *cgc) in pkt_dump_sense() argument
737 struct scsi_sense_hdr *sshdr = cgc->sshdr; in pkt_dump_sense()
741 CDROM_PACKET_SIZE, cgc->cmd, in pkt_dump_sense()
745 pkt_err(pd, "%*ph - no sense\n", CDROM_PACKET_SIZE, cgc->cmd); in pkt_dump_sense()
753 struct packet_command cgc; in pkt_flush_cache() local
755 init_cdrom_command(&cgc, NULL, 0, CGC_DATA_NONE); in pkt_flush_cache()
756 cgc.cmd[0] = GPCMD_FLUSH_CACHE; in pkt_flush_cache()
757 cgc.quiet = 1; in pkt_flush_cache()
764 cgc.cmd[1] = 1 << 1; in pkt_flush_cache()
766 return pkt_generic_packet(pd, &cgc); in pkt_flush_cache()
775 struct packet_command cgc; in pkt_set_speed() local
779 init_cdrom_command(&cgc, NULL, 0, CGC_DATA_NONE); in pkt_set_speed()
780 cgc.sshdr = &sshdr; in pkt_set_speed()
781 cgc.cmd[0] = GPCMD_SET_SPEED; in pkt_set_speed()
782 cgc.cmd[2] = (read_speed >> 8) & 0xff; in pkt_set_speed()
783 cgc.cmd[3] = read_speed & 0xff; in pkt_set_speed()
784 cgc.cmd[4] = (write_speed >> 8) & 0xff; in pkt_set_speed()
785 cgc.cmd[5] = write_speed & 0xff; in pkt_set_speed()
787 ret = pkt_generic_packet(pd, &cgc); in pkt_set_speed()
789 pkt_dump_sense(pd, &cgc); in pkt_set_speed()
1488 static int pkt_mode_sense(struct pktcdvd_device *pd, struct packet_command *cgc, int page_code, int… in pkt_mode_sense() argument
1490 memset(cgc->cmd, 0, sizeof(cgc->cmd)); in pkt_mode_sense()
1492 cgc->cmd[0] = GPCMD_MODE_SENSE_10; in pkt_mode_sense()
1493 cgc->cmd[2] = page_code | (page_control << 6); in pkt_mode_sense()
1494 cgc->cmd[7] = cgc->buflen >> 8; in pkt_mode_sense()
1495 cgc->cmd[8] = cgc->buflen & 0xff; in pkt_mode_sense()
1496 cgc->data_direction = CGC_DATA_READ; in pkt_mode_sense()
1497 return pkt_generic_packet(pd, cgc); in pkt_mode_sense()
1500 static int pkt_mode_select(struct pktcdvd_device *pd, struct packet_command *cgc) in pkt_mode_select() argument
1502 memset(cgc->cmd, 0, sizeof(cgc->cmd)); in pkt_mode_select()
1503 memset(cgc->buffer, 0, 2); in pkt_mode_select()
1504 cgc->cmd[0] = GPCMD_MODE_SELECT_10; in pkt_mode_select()
1505 cgc->cmd[1] = 0x10; /* PF */ in pkt_mode_select()
1506 cgc->cmd[7] = cgc->buflen >> 8; in pkt_mode_select()
1507 cgc->cmd[8] = cgc->buflen & 0xff; in pkt_mode_select()
1508 cgc->data_direction = CGC_DATA_WRITE; in pkt_mode_select()
1509 return pkt_generic_packet(pd, cgc); in pkt_mode_select()
1514 struct packet_command cgc; in pkt_get_disc_info() local
1518 init_cdrom_command(&cgc, di, sizeof(*di), CGC_DATA_READ); in pkt_get_disc_info()
1519 cgc.cmd[0] = GPCMD_READ_DISC_INFO; in pkt_get_disc_info()
1520 cgc.cmd[8] = cgc.buflen = 2; in pkt_get_disc_info()
1521 cgc.quiet = 1; in pkt_get_disc_info()
1523 ret = pkt_generic_packet(pd, &cgc); in pkt_get_disc_info()
1530 cgc.buflen = be16_to_cpu(di->disc_information_length) + in pkt_get_disc_info()
1533 if (cgc.buflen > sizeof(disc_information)) in pkt_get_disc_info()
1534 cgc.buflen = sizeof(disc_information); in pkt_get_disc_info()
1536 cgc.cmd[8] = cgc.buflen; in pkt_get_disc_info()
1537 return pkt_generic_packet(pd, &cgc); in pkt_get_disc_info()
1542 struct packet_command cgc; in pkt_get_track_info() local
1545 init_cdrom_command(&cgc, ti, 8, CGC_DATA_READ); in pkt_get_track_info()
1546 cgc.cmd[0] = GPCMD_READ_TRACK_RZONE_INFO; in pkt_get_track_info()
1547 cgc.cmd[1] = type & 3; in pkt_get_track_info()
1548 cgc.cmd[4] = (track & 0xff00) >> 8; in pkt_get_track_info()
1549 cgc.cmd[5] = track & 0xff; in pkt_get_track_info()
1550 cgc.cmd[8] = 8; in pkt_get_track_info()
1551 cgc.quiet = 1; in pkt_get_track_info()
1553 ret = pkt_generic_packet(pd, &cgc); in pkt_get_track_info()
1557 cgc.buflen = be16_to_cpu(ti->track_information_length) + in pkt_get_track_info()
1560 if (cgc.buflen > sizeof(track_information)) in pkt_get_track_info()
1561 cgc.buflen = sizeof(track_information); in pkt_get_track_info()
1563 cgc.cmd[8] = cgc.buflen; in pkt_get_track_info()
1564 return pkt_generic_packet(pd, &cgc); in pkt_get_track_info()
1610 struct packet_command cgc; in pkt_set_write_settings() local
1621 init_cdrom_command(&cgc, buffer, sizeof(*wp), CGC_DATA_READ); in pkt_set_write_settings()
1622 cgc.sshdr = &sshdr; in pkt_set_write_settings()
1623 ret = pkt_mode_sense(pd, &cgc, GPMODE_WRITE_PARMS_PAGE, 0); in pkt_set_write_settings()
1625 pkt_dump_sense(pd, &cgc); in pkt_set_write_settings()
1637 init_cdrom_command(&cgc, buffer, size, CGC_DATA_READ); in pkt_set_write_settings()
1638 cgc.sshdr = &sshdr; in pkt_set_write_settings()
1639 ret = pkt_mode_sense(pd, &cgc, GPMODE_WRITE_PARMS_PAGE, 0); in pkt_set_write_settings()
1641 pkt_dump_sense(pd, &cgc); in pkt_set_write_settings()
1681 cgc.buflen = cgc.cmd[8] = size; in pkt_set_write_settings()
1682 ret = pkt_mode_select(pd, &cgc); in pkt_set_write_settings()
1684 pkt_dump_sense(pd, &cgc); in pkt_set_write_settings()
1773 struct packet_command cgc; in pkt_probe_settings() local
1779 init_cdrom_command(&cgc, buf, sizeof(buf), CGC_DATA_READ); in pkt_probe_settings()
1780 cgc.cmd[0] = GPCMD_GET_CONFIGURATION; in pkt_probe_settings()
1781 cgc.cmd[8] = 8; in pkt_probe_settings()
1782 ret = pkt_generic_packet(pd, &cgc); in pkt_probe_settings()
1875 struct packet_command cgc; in pkt_write_caching() local
1880 init_cdrom_command(&cgc, buf, sizeof(buf), CGC_DATA_READ); in pkt_write_caching()
1881 cgc.sshdr = &sshdr; in pkt_write_caching()
1882 cgc.buflen = pd->mode_offset + 12; in pkt_write_caching()
1887 cgc.quiet = 1; in pkt_write_caching()
1889 ret = pkt_mode_sense(pd, &cgc, GPMODE_WCACHING_PAGE, 0); in pkt_write_caching()
1895 cgc.buflen = cgc.cmd[8] = 2 + ((buf[0] << 8) | (buf[1] & 0xff)); in pkt_write_caching()
1896 ret = pkt_mode_select(pd, &cgc); in pkt_write_caching()
1899 pkt_dump_sense(pd, &cgc); in pkt_write_caching()
1907 struct packet_command cgc; in pkt_lock_door() local
1909 init_cdrom_command(&cgc, NULL, 0, CGC_DATA_NONE); in pkt_lock_door()
1910 cgc.cmd[0] = GPCMD_PREVENT_ALLOW_MEDIUM_REMOVAL; in pkt_lock_door()
1911 cgc.cmd[4] = lockflag ? 1 : 0; in pkt_lock_door()
1912 return pkt_generic_packet(pd, &cgc); in pkt_lock_door()
1921 struct packet_command cgc; in pkt_get_max_speed() local
1928 init_cdrom_command(&cgc, buf, sizeof(buf), CGC_DATA_UNKNOWN); in pkt_get_max_speed()
1929 cgc.sshdr = &sshdr; in pkt_get_max_speed()
1931 ret = pkt_mode_sense(pd, &cgc, GPMODE_CAPABILITIES_PAGE, 0); in pkt_get_max_speed()
1933 cgc.buflen = pd->mode_offset + cap_buf[1] + 2 + in pkt_get_max_speed()
1935 ret = pkt_mode_sense(pd, &cgc, GPMODE_CAPABILITIES_PAGE, 0); in pkt_get_max_speed()
1937 pkt_dump_sense(pd, &cgc); in pkt_get_max_speed()
1982 struct packet_command cgc; in pkt_media_speed() local
1988 init_cdrom_command(&cgc, buf, 2, CGC_DATA_READ); in pkt_media_speed()
1989 cgc.sshdr = &sshdr; in pkt_media_speed()
1990 cgc.cmd[0] = GPCMD_READ_TOC_PMA_ATIP; in pkt_media_speed()
1991 cgc.cmd[1] = 2; in pkt_media_speed()
1992 cgc.cmd[2] = 4; /* READ ATIP */ in pkt_media_speed()
1993 cgc.cmd[8] = 2; in pkt_media_speed()
1994 ret = pkt_generic_packet(pd, &cgc); in pkt_media_speed()
1996 pkt_dump_sense(pd, &cgc); in pkt_media_speed()
2003 init_cdrom_command(&cgc, buf, size, CGC_DATA_READ); in pkt_media_speed()
2004 cgc.sshdr = &sshdr; in pkt_media_speed()
2005 cgc.cmd[0] = GPCMD_READ_TOC_PMA_ATIP; in pkt_media_speed()
2006 cgc.cmd[1] = 2; in pkt_media_speed()
2007 cgc.cmd[2] = 4; in pkt_media_speed()
2008 cgc.cmd[8] = size; in pkt_media_speed()
2009 ret = pkt_generic_packet(pd, &cgc); in pkt_media_speed()
2011 pkt_dump_sense(pd, &cgc); in pkt_media_speed()
2054 struct packet_command cgc; in pkt_perform_opc() local
2060 init_cdrom_command(&cgc, NULL, 0, CGC_DATA_NONE); in pkt_perform_opc()
2061 cgc.sshdr = &sshdr; in pkt_perform_opc()
2062 cgc.timeout = 60*HZ; in pkt_perform_opc()
2063 cgc.cmd[0] = GPCMD_SEND_OPC; in pkt_perform_opc()
2064 cgc.cmd[1] = 1; in pkt_perform_opc()
2065 ret = pkt_generic_packet(pd, &cgc); in pkt_perform_opc()
2067 pkt_dump_sense(pd, &cgc); in pkt_perform_opc()