taglinefilesource code
toc_entry772drivers/block/sjcd.cstruct cdrom_tocentry toc_entry; int s;
toc_entry776drivers/block/sjcd.cif( ( s = verify_area( VERIFY_WRITE, (void *) arg, sizeof( toc_entry ) ) ) == 0 ){
toc_entry779drivers/block/sjcd.cmemcpy_fromfs( &toc_entry, ( void * )arg, sizeof( toc_entry ) );
toc_entry781drivers/block/sjcd.cif( toc_entry.cdte_track == CDROM_LEADOUT )
toc_entry783drivers/block/sjcd.celse if( toc_entry.cdte_track < sjcd_first_track_no ) return( -EINVAL );
toc_entry784drivers/block/sjcd.celse if( toc_entry.cdte_track > sjcd_last_track_no ) return( -EINVAL );
toc_entry785drivers/block/sjcd.celse tp = &sjcd_table_of_contents[ toc_entry.cdte_track ];
toc_entry787drivers/block/sjcd.ctoc_entry.cdte_adr = tp->track_control & 0x0F;
toc_entry788drivers/block/sjcd.ctoc_entry.cdte_ctrl = tp->track_control >> 4;
toc_entry790drivers/block/sjcd.cswitch( toc_entry.cdte_format ){
toc_entry792drivers/block/sjcd.ctoc_entry.cdte_addr.lba = msf2hsg( &( tp->un.track_msf ) );
toc_entry795drivers/block/sjcd.ctoc_entry.cdte_addr.msf.minute = bcd2bin( tp->un.track_msf.min );
toc_entry796drivers/block/sjcd.ctoc_entry.cdte_addr.msf.second = bcd2bin( tp->un.track_msf.sec );
toc_entry797drivers/block/sjcd.ctoc_entry.cdte_addr.msf.frame = bcd2bin( tp->un.track_msf.frame );
toc_entry801drivers/block/sjcd.cmemcpy_tofs( ( void * )arg, &toc_entry, sizeof( toc_entry ) );