Lines Matching defs:toc

1109 cdreadmsaddr(struct cd_softc *cd, struct cd_formatted_toc *toc, int *addr)
1115 error = cd_read_toc(cd, CD_TOC_FORM, 0, 0, toc,
1122 cte = &toc->entries[0];
1125 toc->header.len = le16toh(toc->header.len);
1128 toc->header.len = be16toh(toc->header.len);
1131 *addr = (toc->header.len >= 10 && cte->track > 1) ?
1160 struct cd_formatted_toc *toc)
1169 th = &toc->header;
1171 if (len > sizeof(toc->entries) ||
1172 len < sizeof(toc->entries[0]))
1175 te->starting_track, toc,
1176 sizeof(toc->header) + len,
1184 cte = &toc->entries[ntracks];
1208 struct cd_formatted_toc toc;
1237 return (cd_play_tracks(cd, &toc, args->start_track,
1286 &toc, sizeof(toc.header), 0, 0)) != 0)
1289 toc.header.len = le16toh(toc.header.len);
1291 toc.header.len = be16toh(toc.header.len);
1292 memcpy(addr, &toc.header, sizeof(toc.header));
1297 error = do_cdioreadentries(cd, te, &toc);
1300 return copyout(toc.entries, te->data, uimin(te->data_len,
1301 toc.header.len - (sizeof(toc.header.starting_track)
1302 + sizeof(toc.header.ending_track))));
1306 error = do_cdioreadentries(cd, &te->req, &toc);
1309 memcpy(te->entry, toc.entries, uimin(te->req.data_len,
1310 toc.header.len - (sizeof(toc.header.starting_track)
1311 + sizeof(toc.header.ending_track))));
1321 return (cdreadmsaddr(cd, &toc, addr));
1466 struct cd_formatted_toc toc;
1475 (void) cdreadmsaddr(cd, &toc, &lastsession);
1662 cd_play_tracks(struct cd_softc *cd, struct cd_formatted_toc *toc, int strack,
1672 error = cd_load_toc(cd, CD_TOC_FORM, toc, 0);
1676 if (++etrack > (toc->header.ending_track+1))
1677 etrack = toc->header.ending_track+1;
1679 strack -= toc->header.starting_track;
1680 etrack -= toc->header.starting_track;
1684 return (cd_play_msf(cd, toc->entries[strack].addr.msf.minute,
1685 toc->entries[strack].addr.msf.second,
1686 toc->entries[strack].addr.msf.frame,
1687 toc->entries[etrack].addr.msf.minute,
1688 toc->entries[etrack].addr.msf.second,
1689 toc->entries[etrack].addr.msf.frame));
1770 struct cd_formatted_toc *toc, int len, int flags, int control)
1792 (void *)&cmd, sizeof(cmd), (void *)toc, len, CDRETRIES,
1797 cd_load_toc(struct cd_softc *cd, int respf, struct cd_formatted_toc *toc, int flags)
1801 if ((error = cd_read_toc(cd, respf, 0, 0, toc, sizeof(toc->header),
1805 ntracks = toc->header.ending_track - toc->header.starting_track + 1;
1807 sizeof(toc->header);
1808 if ((error = cd_read_toc(cd, respf, CD_MSF_FORMAT, 0, toc, len,
2625 gtoc_cmd.resp_format = CD_TOC_FORM; /* formatted toc */
2929 /* get raw toc to process, first header to check size */
2934 gtoc_cmd.resp_format = CD_TOC_RAW; /* raw toc */
2954 /* read in complete raw toc */
3085 struct scsipi_toc_formatted *toc;
3108 /* get formatted toc to process, first header to check size */
3113 gtoc_cmd.resp_format = CD_TOC_FORM; /* formatted toc */
3133 /* read in complete formatted toc */
3145 toc = (struct scsipi_toc_formatted *) (buffer + 4);
3161 lba = _4btol(toc->msf_lba);
3162 tracknr = toc->tracknr;
3163 control = toc->adrcontrol & 0xf;
3186 toc++;