• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6/drivers/cdrom/

Lines Matching defs:cgc

179   -- init_cdrom_command() for setting up a cgc command.
376 struct packet_command *cgc)
378 if (cgc->sense) {
379 cgc->sense->sense_key = 0x05;
380 cgc->sense->asc = 0x20;
381 cgc->sense->ascq = 0x00;
384 cgc->stat = -EIO;
470 struct packet_command cgc;
474 init_cdrom_command(&cgc, buffer, sizeof(buffer), CGC_DATA_READ);
475 cgc.cmd[0] = GPCMD_GET_EVENT_STATUS_NOTIFICATION;
476 cgc.cmd[1] = 1; /* IMMED */
477 cgc.cmd[4] = 1 << 4; /* media event */
478 cgc.cmd[8] = sizeof(buffer);
479 cgc.quiet = 1;
481 if (cdi->ops->generic_packet(cdi, &cgc))
500 struct packet_command cgc;
503 init_cdrom_command(&cgc, buffer, sizeof(buffer), CGC_DATA_READ);
505 cgc.timeout = HZ;
506 cgc.quiet = 1;
508 if (!cdrom_mode_sense(cdi, &cgc, MRW_MODE_PC, 0)) {
511 } else if (!cdrom_mode_sense(cdi, &cgc, MRW_MODE_PC_PRE1, 0)) {
521 struct packet_command cgc;
528 init_cdrom_command(&cgc, buffer, sizeof(buffer), CGC_DATA_READ);
530 cgc.cmd[0] = GPCMD_GET_CONFIGURATION;
531 cgc.cmd[3] = CDF_MRW;
532 cgc.cmd[8] = sizeof(buffer);
533 cgc.quiet = 1;
535 if ((ret = cdi->ops->generic_packet(cdi, &cgc)))
553 struct packet_command cgc;
562 init_cdrom_command(&cgc, buffer, sizeof(buffer), CGC_DATA_WRITE);
563 cgc.cmd[0] = GPCMD_FORMAT_UNIT;
564 cgc.cmd[1] = (1 << 4) | 1;
566 cgc.timeout = 5 * 60 * HZ;
585 ret = cdi->ops->generic_packet(cdi, &cgc);
594 struct packet_command cgc;
596 init_cdrom_command(&cgc, NULL, 0, CGC_DATA_NONE);
597 cgc.cmd[0] = GPCMD_CLOSE_TRACK;
602 cgc.cmd[1] = !!immed;
603 cgc.cmd[2] = 1 << 1;
605 cgc.timeout = 5 * 60 * HZ;
607 return cdi->ops->generic_packet(cdi, &cgc);
612 struct packet_command cgc;
614 init_cdrom_command(&cgc, NULL, 0, CGC_DATA_NONE);
615 cgc.cmd[0] = GPCMD_FLUSH_CACHE;
617 cgc.timeout = 5 * 60 * HZ;
619 return cdi->ops->generic_packet(cdi, &cgc);
645 struct packet_command cgc;
650 init_cdrom_command(&cgc, buffer, sizeof(buffer), CGC_DATA_READ);
652 cgc.buffer = buffer;
653 cgc.buflen = sizeof(buffer);
655 if ((ret = cdrom_mode_sense(cdi, &cgc, cdi->mrw_mode_page, 0)))
663 cgc.buflen = size;
665 if ((ret = cdrom_mode_select(cdi, &cgc)))
676 struct packet_command cgc;
680 init_cdrom_command(&cgc, buffer, sizeof(buffer), CGC_DATA_READ);
682 cgc.cmd[0] = GPCMD_GET_CONFIGURATION; /* often 0x46 */
683 cgc.cmd[3] = CDF_RWRT; /* often 0x0020 */
684 cgc.cmd[8] = sizeof(buffer); /* often 0x18 */
685 cgc.quiet = 1;
687 if ((ret = cdi->ops->generic_packet(cdi, &cgc)))
696 struct packet_command cgc;
701 init_cdrom_command(&cgc, buffer, sizeof(buffer), CGC_DATA_READ);
703 cgc.cmd[0] = GPCMD_GET_CONFIGURATION;
704 cgc.cmd[3] = CDF_HWDM;
705 cgc.cmd[8] = sizeof(buffer);
706 cgc.quiet = 1;
708 if ((ret = cdi->ops->generic_packet(cdi, &cgc)))
801 struct packet_command cgc;
805 init_cdrom_command(&cgc, &buffer, 4, CGC_DATA_READ);
806 cgc.quiet = 1;
813 ret = cdrom_mode_sense(cdi, &cgc, GPMODE_ALL_PAGES, 0);
815 ret = cdrom_mode_sense(cdi, &cgc, GPMODE_VENDOR_PAGE, 0);
817 cgc.buflen = 255;
818 ret = cdrom_mode_sense(cdi, &cgc, GPMODE_ALL_PAGES, 0);
847 struct packet_command cgc;
851 init_cdrom_command(&cgc, buffer, sizeof(buffer), CGC_DATA_READ);
853 cgc.cmd[0] = GPCMD_GET_CONFIGURATION;
854 cgc.cmd[1] = 0;
855 cgc.cmd[2] = cgc.cmd[3] = 0; /* Starting Feature Number */
856 cgc.cmd[8] = sizeof(buffer); /* Allocation Length */
857 cgc.quiet = 1;
859 if ((ret = cdi->ops->generic_packet(cdi, &cgc)))
927 struct packet_command cgc;
941 init_cdrom_command(&cgc, NULL, 0, CGC_DATA_NONE);
942 cgc.cmd[0] = GPCMD_FLUSH_CACHE;
943 cgc.timeout = 30*HZ;
944 cdi->ops->generic_packet(cdi, &cgc);
946 init_cdrom_command(&cgc, NULL, 0, CGC_DATA_NONE);
947 cgc.cmd[0] = GPCMD_CLOSE_TRACK;
948 cgc.timeout = 3000*HZ;
949 cgc.quiet = 1;
950 cdi->ops->generic_packet(cdi, &cgc);
952 init_cdrom_command(&cgc, NULL, 0, CGC_DATA_NONE);
953 cgc.cmd[0] = GPCMD_CLOSE_TRACK;
954 cgc.cmd[2] = 2; /* Close session */
955 cgc.quiet = 1;
956 cgc.timeout = 3000*HZ;
957 cdi->ops->generic_packet(cdi, &cgc);
1226 struct packet_command cgc;
1248 init_cdrom_command(&cgc, buf, length, CGC_DATA_READ);
1249 cgc.cmd[0] = GPCMD_MECHANISM_STATUS;
1250 cgc.cmd[8] = (length >> 8) & 0xff;
1251 cgc.cmd[9] = length & 0xff;
1252 return cdo->generic_packet(cdi, &cgc);
1309 struct packet_command cgc;
1315 init_cdrom_command(&cgc, NULL, 0, CGC_DATA_NONE);
1316 cgc.cmd[0] = GPCMD_LOAD_UNLOAD;
1317 cgc.cmd[4] = 2 + (slot >= 0);
1318 cgc.cmd[8] = slot;
1319 cgc.timeout = 60 * HZ;
1325 cgc.cmd[0] = GPCMD_TEST_UNIT_READY;
1326 cgc.cmd[7] = slot;
1327 cgc.cmd[4] = cgc.cmd[8] = 0;
1331 return cdi->ops->generic_packet(cdi, &cgc);
1505 void init_cdrom_command(struct packet_command *cgc, void *buf, int len,
1508 memset(cgc, 0, sizeof(struct packet_command));
1511 cgc->buffer = (char *) buf;
1512 cgc->buflen = len;
1513 cgc->data_direction = type;
1514 cgc->timeout = CDROM_DEF_TIMEOUT;
1522 static void setup_report_key(struct packet_command *cgc, unsigned agid, unsigned type)
1524 cgc->cmd[0] = GPCMD_REPORT_KEY;
1525 cgc->cmd[10] = type | (agid << 6);
1528 cgc->buflen = 8;
1532 cgc->buflen = 16;
1536 cgc->buflen = 12;
1540 cgc->cmd[9] = cgc->buflen;
1541 cgc->data_direction = CGC_DATA_READ;
1544 static void setup_send_key(struct packet_command *cgc, unsigned agid, unsigned type)
1546 cgc->cmd[0] = GPCMD_SEND_KEY;
1547 cgc->cmd[10] = type | (agid << 6);
1550 cgc->buflen = 16;
1554 cgc->buflen = 12;
1558 cgc->buflen = 8;
1562 cgc->cmd[9] = cgc->buflen;
1563 cgc->data_direction = CGC_DATA_WRITE;
1570 struct packet_command cgc;
1575 init_cdrom_command(&cgc, buf, 0, CGC_DATA_READ);
1581 cgc.quiet = 1;
1582 setup_report_key(&cgc, ai->lsa.agid, 0);
1584 if ((ret = cdo->generic_packet(cdi, &cgc)))
1593 setup_report_key(&cgc, ai->lsk.agid, 2);
1595 if ((ret = cdo->generic_packet(cdi, &cgc)))
1604 setup_report_key(&cgc, ai->lsc.agid, 1);
1606 if ((ret = cdo->generic_packet(cdi, &cgc)))
1616 cgc.quiet = 1;
1617 setup_report_key(&cgc, ai->lstk.agid, 4);
1618 cgc.cmd[5] = ai->lstk.lba;
1619 cgc.cmd[4] = ai->lstk.lba >> 8;
1620 cgc.cmd[3] = ai->lstk.lba >> 16;
1621 cgc.cmd[2] = ai->lstk.lba >> 24;
1623 if ((ret = cdo->generic_packet(cdi, &cgc)))
1635 setup_report_key(&cgc, ai->lsasf.agid, 5);
1637 if ((ret = cdo->generic_packet(cdi, &cgc)))
1646 setup_send_key(&cgc, ai->hsc.agid, 1);
1650 if ((ret = cdo->generic_packet(cdi, &cgc)))
1658 setup_send_key(&cgc, ai->hsk.agid, 3);
1662 if ((ret = cdo->generic_packet(cdi, &cgc))) {
1671 cgc.quiet = 1;
1673 setup_report_key(&cgc, ai->lsa.agid, 0x3f);
1674 if ((ret = cdo->generic_packet(cdi, &cgc)))
1681 setup_report_key(&cgc, 0, 8);
1683 cgc.buffer = (char *) &rpc_state;
1685 if ((ret = cdo->generic_packet(cdi, &cgc)))
1698 setup_send_key(&cgc, 0, 6);
1702 if ((ret = cdo->generic_packet(cdi, &cgc)))
1715 struct packet_command *cgc)
1725 init_cdrom_command(cgc, buf, sizeof(buf), CGC_DATA_READ);
1726 cgc->cmd[0] = GPCMD_READ_DVD_STRUCTURE;
1727 cgc->cmd[6] = layer_num;
1728 cgc->cmd[7] = s->type;
1729 cgc->cmd[9] = cgc->buflen & 0xff;
1734 cgc->quiet = 1;
1736 ret = cdo->generic_packet(cdi, cgc);
1766 struct packet_command *cgc)
1772 init_cdrom_command(cgc, buf, sizeof(buf), CGC_DATA_READ);
1773 cgc->cmd[0] = GPCMD_READ_DVD_STRUCTURE;
1774 cgc->cmd[6] = s->copyright.layer_num;
1775 cgc->cmd[7] = s->type;
1776 cgc->cmd[8] = cgc->buflen >> 8;
1777 cgc->cmd[9] = cgc->buflen & 0xff;
1779 ret = cdo->generic_packet(cdi, cgc);
1790 struct packet_command *cgc)
1802 init_cdrom_command(cgc, buf, size, CGC_DATA_READ);
1803 cgc->cmd[0] = GPCMD_READ_DVD_STRUCTURE;
1804 cgc->cmd[7] = s->type;
1805 cgc->cmd[8] = size >> 8;
1806 cgc->cmd[9] = size & 0xff;
1807 cgc->cmd[10] = s->disckey.agid << 6;
1809 ret = cdo->generic_packet(cdi, cgc);
1818 struct packet_command *cgc)
1828 init_cdrom_command(cgc, buf, size, CGC_DATA_READ);
1829 cgc->cmd[0] = GPCMD_READ_DVD_STRUCTURE;
1830 cgc->cmd[7] = s->type;
1831 cgc->cmd[9] = cgc->buflen & 0xff;
1833 ret = cdo->generic_packet(cdi, cgc);
1851 struct packet_command *cgc)
1863 init_cdrom_command(cgc, buf, size, CGC_DATA_READ);
1864 cgc->cmd[0] = GPCMD_READ_DVD_STRUCTURE;
1865 cgc->cmd[7] = s->type;
1866 cgc->cmd[8] = size >> 8;
1867 cgc->cmd[9] = size & 0xff;
1869 ret = cdo->generic_packet(cdi, cgc);
1888 struct packet_command *cgc)
1892 return dvd_read_physical(cdi, s, cgc);
1895 return dvd_read_copyright(cdi, s, cgc);
1898 return dvd_read_disckey(cdi, s, cgc);
1901 return dvd_read_bca(cdi, s, cgc);
1904 return dvd_read_manufact(cdi, s, cgc);
1914 struct packet_command *cgc,
1919 memset(cgc->cmd, 0, sizeof(cgc->cmd));
1921 cgc->cmd[0] = GPCMD_MODE_SENSE_10;
1922 cgc->cmd[2] = page_code | (page_control << 6);
1923 cgc->cmd[7] = cgc->buflen >> 8;
1924 cgc->cmd[8] = cgc->buflen & 0xff;
1925 cgc->data_direction = CGC_DATA_READ;
1926 return cdo->generic_packet(cdi, cgc);
1930 struct packet_command *cgc)
1934 memset(cgc->cmd, 0, sizeof(cgc->cmd));
1935 memset(cgc->buffer, 0, 2);
1936 cgc->cmd[0] = GPCMD_MODE_SELECT_10;
1937 cgc->cmd[1] = 0x10; /* PF */
1938 cgc->cmd[7] = cgc->buflen >> 8;
1939 cgc->cmd[8] = cgc->buflen & 0xff;
1940 cgc->data_direction = CGC_DATA_WRITE;
1941 return cdo->generic_packet(cdi, cgc);
1948 struct packet_command cgc;
1952 init_cdrom_command(&cgc, buffer, 16, CGC_DATA_READ);
1953 cgc.cmd[0] = GPCMD_READ_SUBCHANNEL;
1954 cgc.cmd[1] = 2; /* MSF addressing */
1955 cgc.cmd[2] = 0x40; /* request subQ data */
1956 cgc.cmd[3] = mcn ? 2 : 1;
1957 cgc.cmd[8] = 16;
1959 if ((ret = cdo->generic_packet(cdi, &cgc)))
1962 subchnl->cdsc_audiostatus = cgc.buffer[1];
1964 subchnl->cdsc_ctrl = cgc.buffer[5] & 0xf;
1965 subchnl->cdsc_trk = cgc.buffer[6];
1966 subchnl->cdsc_ind = cgc.buffer[7];
1968 subchnl->cdsc_reladdr.msf.minute = cgc.buffer[13];
1969 subchnl->cdsc_reladdr.msf.second = cgc.buffer[14];
1970 subchnl->cdsc_reladdr.msf.frame = cgc.buffer[15];
1971 subchnl->cdsc_absaddr.msf.minute = cgc.buffer[9];
1972 subchnl->cdsc_absaddr.msf.second = cgc.buffer[10];
1973 subchnl->cdsc_absaddr.msf.frame = cgc.buffer[11];
1982 struct packet_command *cgc, int lba,
1987 memset(&cgc->cmd, 0, sizeof(cgc->cmd));
1988 cgc->cmd[0] = GPCMD_READ_10;
1989 cgc->cmd[2] = (lba >> 24) & 0xff;
1990 cgc->cmd[3] = (lba >> 16) & 0xff;
1991 cgc->cmd[4] = (lba >> 8) & 0xff;
1992 cgc->cmd[5] = lba & 0xff;
1993 cgc->cmd[6] = (nblocks >> 16) & 0xff;
1994 cgc->cmd[7] = (nblocks >> 8) & 0xff;
1995 cgc->cmd[8] = nblocks & 0xff;
1996 cgc->buflen = blocksize * nblocks;
1997 return cdo->generic_packet(cdi, cgc);
2002 struct packet_command *cgc,
2007 memset(&cgc->cmd, 0, sizeof(cgc->cmd));
2008 cgc->cmd[0] = GPCMD_READ_CD;
2010 cgc->cmd[1] = format << 2;
2012 cgc->cmd[2] = (lba >> 24) & 0xff;
2013 cgc->cmd[3] = (lba >> 16) & 0xff;
2014 cgc->cmd[4] = (lba >> 8) & 0xff;
2015 cgc->cmd[5] = lba & 0xff;
2017 cgc->cmd[6] = (nblocks >> 16) & 0xff;
2018 cgc->cmd[7] = (nblocks >> 8) & 0xff;
2019 cgc->cmd[8] = nblocks & 0xff;
2020 cgc->buflen = blksize * nblocks;
2024 case CD_FRAMESIZE_RAW0 : cgc->cmd[9] = 0x58; break;
2025 case CD_FRAMESIZE_RAW1 : cgc->cmd[9] = 0x78; break;
2026 case CD_FRAMESIZE_RAW : cgc->cmd[9] = 0xf8; break;
2027 default : cgc->cmd[9] = 0x10;
2030 return cdo->generic_packet(cdi, cgc);
2036 struct packet_command cgc;
2042 memset(&cgc, 0, sizeof(cgc));
2049 cgc.buffer = kmalloc(CD_FRAMESIZE_RAW * nr, GFP_KERNEL);
2050 if (cgc.buffer)
2064 cgc.data_direction = CGC_DATA_READ;
2069 ret = cdrom_read_block(cdi, &cgc, lba, nr, 1, CD_FRAMESIZE_RAW);
2072 if (__copy_to_user(ubuf, cgc.buffer, CD_FRAMESIZE_RAW * nr)) {
2081 kfree(cgc.buffer);
2781 struct packet_command cgc;
2789 memset(&cgc, 0, sizeof(cgc));
2790 cgc.cmd[0] = 0x15;
2791 cgc.cmd[1] = 1 << 4;
2792 cgc.cmd[4] = 12;
2793 cgc.buflen = sizeof(mh);
2794 cgc.buffer = (char *) &mh;
2795 cgc.data_direction = CGC_DATA_WRITE;
2800 return cdo->generic_packet(cdi, &cgc);
2805 struct packet_command *cgc,
2830 cgc->buffer = kmalloc(blocksize, GFP_KERNEL);
2831 if (cgc->buffer == NULL)
2835 cgc->sense = &sense;
2836 cgc->data_direction = CGC_DATA_READ;
2837 ret = cdrom_read_block(cdi, cgc, lba, 1, format, blocksize);
2848 cgc->sense = NULL;
2849 ret = cdrom_read_cd(cdi, cgc, lba, blocksize, 1);
2852 if (!ret && copy_to_user(arg, cgc->buffer, blocksize))
2855 kfree(cgc->buffer);
2907 struct packet_command *cgc)
2913 cgc->cmd[0] = GPCMD_PLAY_AUDIO_MSF;
2914 cgc->cmd[3] = msf.cdmsf_min0;
2915 cgc->cmd[4] = msf.cdmsf_sec0;
2916 cgc->cmd[5] = msf.cdmsf_frame0;
2917 cgc->cmd[6] = msf.cdmsf_min1;
2918 cgc->cmd[7] = msf.cdmsf_sec1;
2919 cgc->cmd[8] = msf.cdmsf_frame1;
2920 cgc->data_direction = CGC_DATA_NONE;
2921 return cdo->generic_packet(cdi, cgc);
2926 struct packet_command *cgc)
2932 cgc->cmd[0] = GPCMD_PLAY_AUDIO_10;
2933 cgc->cmd[2] = (blk.from >> 24) & 0xff;
2934 cgc->cmd[3] = (blk.from >> 16) & 0xff;
2935 cgc->cmd[4] = (blk.from >> 8) & 0xff;
2936 cgc->cmd[5] = blk.from & 0xff;
2937 cgc->cmd[7] = (blk.len >> 8) & 0xff;
2938 cgc->cmd[8] = blk.len & 0xff;
2939 cgc->data_direction = CGC_DATA_NONE;
2940 return cdo->generic_packet(cdi, cgc);
2945 struct packet_command *cgc,
2958 cgc->buffer = buffer;
2959 cgc->buflen = 24;
2960 ret = cdrom_mode_sense(cdi, cgc, GPMODE_AUDIO_CTL_PAGE, 0);
2973 if (offset + 16 > cgc->buflen) {
2974 cgc->buflen = offset + 16;
2975 ret = cdrom_mode_sense(cdi, cgc,
2998 cgc->buffer = mask;
2999 ret = cdrom_mode_sense(cdi, cgc, GPMODE_AUDIO_CTL_PAGE, 1);
3009 cgc->buffer = buffer + offset - 8;
3010 memset(cgc->buffer, 0, 8);
3011 return cdrom_mode_select(cdi, cgc);
3015 struct packet_command *cgc,
3020 cgc->cmd[0] = GPCMD_START_STOP_UNIT;
3021 cgc->cmd[1] = 1;
3022 cgc->cmd[4] = (cmd == CDROMSTART) ? 1 : 0;
3023 cgc->data_direction = CGC_DATA_NONE;
3024 return cdo->generic_packet(cdi, cgc);
3028 struct packet_command *cgc,
3033 cgc->cmd[0] = GPCMD_PAUSE_RESUME;
3034 cgc->cmd[8] = (cmd == CDROMRESUME) ? 1 : 0;
3035 cgc->data_direction = CGC_DATA_NONE;
3036 return cdo->generic_packet(cdi, cgc);
3041 struct packet_command *cgc)
3060 ret = dvd_read_struct(cdi, s, cgc);
3116 struct packet_command cgc;
3119 memset(&cgc, 0, sizeof(cgc));
3127 return mmc_ioctl_cdrom_read_data(cdi, userptr, &cgc, cmd);
3133 return mmc_ioctl_cdrom_play_msf(cdi, userptr, &cgc);
3135 return mmc_ioctl_cdrom_play_blk(cdi, userptr, &cgc);
3138 return mmc_ioctl_cdrom_volume(cdi, userptr, &cgc, cmd);
3141 return mmc_ioctl_cdrom_start_stop(cdi, &cgc, cmd);
3144 return mmc_ioctl_cdrom_pause_resume(cdi, &cgc, cmd);
3146 return mmc_ioctl_dvd_read_struct(cdi, userptr, &cgc);
3162 struct packet_command cgc;
3165 init_cdrom_command(&cgc, ti, 8, CGC_DATA_READ);
3166 cgc.cmd[0] = GPCMD_READ_TRACK_RZONE_INFO;
3167 cgc.cmd[1] = type & 3;
3168 cgc.cmd[4] = (track & 0xff00) >> 8;
3169 cgc.cmd[5] = track & 0xff;
3170 cgc.cmd[8] = 8;
3171 cgc.quiet = 1;
3173 if ((ret = cdo->generic_packet(cdi, &cgc)))
3182 cgc.cmd[8] = cgc.buflen = buflen;
3183 if ((ret = cdo->generic_packet(cdi, &cgc)))
3194 struct packet_command cgc;
3198 init_cdrom_command(&cgc, di, sizeof(*di), CGC_DATA_READ);
3199 cgc.cmd[0] = GPCMD_READ_DISC_INFO;
3200 cgc.cmd[8] = cgc.buflen = 2;
3201 cgc.quiet = 1;
3203 if ((ret = cdo->generic_packet(cdi, &cgc)))
3215 cgc.cmd[8] = cgc.buflen = buflen;
3216 if ((ret = cdo->generic_packet(cdi, &cgc)))