tag | line | file | source code |
tape | 1101 | drivers/block/ide-tape.c | idetape_tape_t *tape=&(drive->tape); |
tape | 1112 | drivers/block/ide-tape.c | tape->block_address=0; |
tape | 1113 | drivers/block/ide-tape.c | tape->block_address_valid=0; |
tape | 1114 | drivers/block/ide-tape.c | tape->pc_stack_index=0; |
tape | 1115 | drivers/block/ide-tape.c | tape->failed_pc=NULL; |
tape | 1116 | drivers/block/ide-tape.c | tape->postponed_rq=NULL; |
tape | 1117 | drivers/block/ide-tape.c | tape->busy=0; |
tape | 1118 | drivers/block/ide-tape.c | tape->active_data_request=NULL; |
tape | 1119 | drivers/block/ide-tape.c | tape->current_number_of_stages=0; |
tape | 1120 | drivers/block/ide-tape.c | tape->first_stage=tape->last_stage=NULL; |
tape | 1121 | drivers/block/ide-tape.c | tape->pipeline_was_full_once=0; |
tape | 1122 | drivers/block/ide-tape.c | tape->error_in_pipeline_stage=0; |
tape | 1123 | drivers/block/ide-tape.c | tape->pipeline_locked=0; |
tape | 1125 | drivers/block/ide-tape.c | tape->request_status=0; |
tape | 1126 | drivers/block/ide-tape.c | tape->request_dsc_callback=0; |
tape | 1129 | drivers/block/ide-tape.c | tape->max_number_of_stages=IDETAPE_MIN_PIPELINE_STAGES; |
tape | 1132 | drivers/block/ide-tape.c | tape->max_number_of_stages=0; |
tape | 1139 | drivers/block/ide-tape.c | tape->data_buffer_size=tape->capabilities.ctl*tape->tape_block_size; |
tape | 1141 | drivers/block/ide-tape.c | allocation_length=tape->data_buffer_size; |
tape | 1142 | drivers/block/ide-tape.c | if (tape->data_buffer_size % IDETAPE_ALLOCATION_BLOCK) |
tape | 1145 | drivers/block/ide-tape.c | tape->data_buffer=kmalloc (allocation_length,GFP_KERNEL); |
tape | 1146 | drivers/block/ide-tape.c | tape->temp_data_buffer=kmalloc (allocation_length,GFP_KERNEL); |
tape | 1147 | drivers/block/ide-tape.c | if (tape->data_buffer == NULL || tape->temp_data_buffer == NULL) { |
tape | 1155 | drivers/block/ide-tape.c | printk ("ide-tape: Tape speed - %d KBps. Recommended transfer unit - %d bytes.\n",tape->capabilities.speed,tape->data_buffer_size); |
tape | 1170 | drivers/block/ide-tape.c | idetape_tape_t *tape=&(drive->tape); |
tape | 1189 | drivers/block/ide-tape.c | tape->capabilities=*capabilities; /* Save us a copy */ |
tape | 1190 | drivers/block/ide-tape.c | tape->tape_block_size=capabilities->blk512 ? 512:1024; |
tape | 1195 | drivers/block/ide-tape.c | tape->tape_block_size=512; |
tape | 1196 | drivers/block/ide-tape.c | tape->capabilities.ctl=26*1024; |
tape | 1277 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 1281 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 1284 | drivers/block/ide-tape.c | if (tape->pc->c[0] == IDETAPE_REQUEST_SENSE_CMD && pc->c[0] == IDETAPE_REQUEST_SENSE_CMD) { |
tape | 1290 | drivers/block/ide-tape.c | if (tape->failed_pc == NULL && pc->c[0] != IDETAPE_REQUEST_SENSE_CMD) |
tape | 1291 | drivers/block/ide-tape.c | tape->failed_pc=pc; |
tape | 1292 | drivers/block/ide-tape.c | tape->pc=pc; /* Set the current packet command */ |
tape | 1296 | drivers/block/ide-tape.c | printk ("pc = %x, key = %x, asc = %x, ascq = %x\n",pc->c[0],tape->sense_key,tape->asc,tape->ascq); |
tape | 1300 | drivers/block/ide-tape.c | tape->failed_pc=NULL; |
tape | 1369 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 1377 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 1385 | drivers/block/ide-tape.c | pc=tape->pc; /* Current packet command */ |
tape | 1405 | drivers/block/ide-tape.c | tape->dsc_polling_frequency=IDETAPE_DSC_FAST_MEDIA_ACCESS_FREQUENCY; |
tape | 1410 | drivers/block/ide-tape.c | if (tape->failed_pc == pc) |
tape | 1411 | drivers/block/ide-tape.c | tape->failed_pc=NULL; |
tape | 1485 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 1490 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 1497 | drivers/block/ide-tape.c | if (tape->postponed_rq != NULL) |
tape | 1501 | drivers/block/ide-tape.c | tape->dsc_timer.expires=jiffies + tape->dsc_polling_frequency; /* Set timer to poll for */ |
tape | 1502 | drivers/block/ide-tape.c | tape->dsc_timeout=jiffies+IDETAPE_DSC_TIMEOUT; /* actual completion */ |
tape | 1503 | drivers/block/ide-tape.c | tape->dsc_timer.data=(unsigned long) drive; |
tape | 1504 | drivers/block/ide-tape.c | tape->dsc_timer.function=&idetape_poll_for_dsc; |
tape | 1505 | drivers/block/ide-tape.c | init_timer (&(tape->dsc_timer)); |
tape | 1511 | drivers/block/ide-tape.c | tape->postponed_rq = rq = HWGROUP(drive)->rq; |
tape | 1518 | drivers/block/ide-tape.c | tape->request_status=0; |
tape | 1519 | drivers/block/ide-tape.c | tape->request_dsc_callback=0; |
tape | 1520 | drivers/block/ide-tape.c | tape->last_status=status.all; |
tape | 1522 | drivers/block/ide-tape.c | tape->dsc_polling_start=jiffies; |
tape | 1523 | drivers/block/ide-tape.c | add_timer(&(tape->dsc_timer)); /* Activate the polling timer */ |
tape | 1537 | drivers/block/ide-tape.c | idetape_tape_t *tape=&(drive->tape); |
tape | 1553 | drivers/block/ide-tape.c | tape->dsc_received=1; |
tape | 1554 | drivers/block/ide-tape.c | del_timer (&(tape->dsc_timer)); /* Stop polling and put back the postponed */ |
tape | 1559 | drivers/block/ide-tape.c | if (jiffies > tape->dsc_timeout) { /* Timeout */ |
tape | 1560 | drivers/block/ide-tape.c | tape->dsc_received=0; |
tape | 1561 | drivers/block/ide-tape.c | del_timer (&(tape->dsc_timer)); |
tape | 1569 | drivers/block/ide-tape.c | if (jiffies - tape->dsc_polling_start > IDETAPE_FAST_SLOW_THRESHOLD) |
tape | 1570 | drivers/block/ide-tape.c | tape->dsc_timer.expires = jiffies + IDETAPE_DSC_SLOW_MEDIA_ACCESS_FREQUENCY; |
tape | 1572 | drivers/block/ide-tape.c | tape->dsc_timer.expires = jiffies + tape->dsc_polling_frequency; |
tape | 1573 | drivers/block/ide-tape.c | add_timer(&(tape->dsc_timer)); |
tape | 1600 | drivers/block/ide-tape.c | idetape_tape_t *tape=&(drive->tape); |
tape | 1632 | drivers/block/ide-tape.c | tape->dsc_timer.expires = jiffies + tape->dsc_polling_frequency/2; |
tape | 1633 | drivers/block/ide-tape.c | add_timer(&(tape->dsc_timer)); |
tape | 1648 | drivers/block/ide-tape.c | status.all=tape->last_status; |
tape | 1651 | drivers/block/ide-tape.c | tape->dsc_received=1; |
tape | 1652 | drivers/block/ide-tape.c | del_timer (&(tape->dsc_timer)); /* Stop polling and request ide.c to call */ |
tape | 1653 | drivers/block/ide-tape.c | tape->request_dsc_callback=1; /* our idetape_put_back_postponed_request later */ |
tape | 1658 | drivers/block/ide-tape.c | if (jiffies > tape->dsc_timeout) { /* Timeout */ |
tape | 1659 | drivers/block/ide-tape.c | tape->dsc_received=1; |
tape | 1660 | drivers/block/ide-tape.c | del_timer (&(tape->dsc_timer)); |
tape | 1662 | drivers/block/ide-tape.c | tape->request_dsc_callback=1; |
tape | 1672 | drivers/block/ide-tape.c | tape->request_status=1; |
tape | 1677 | drivers/block/ide-tape.c | if (jiffies - tape->dsc_polling_start > IDETAPE_FAST_SLOW_THRESHOLD) |
tape | 1678 | drivers/block/ide-tape.c | tape->dsc_timer.expires = jiffies + IDETAPE_DSC_SLOW_MEDIA_ACCESS_FREQUENCY; |
tape | 1680 | drivers/block/ide-tape.c | tape->dsc_timer.expires = jiffies + tape->dsc_polling_frequency; |
tape | 1681 | drivers/block/ide-tape.c | add_timer(&(tape->dsc_timer)); |
tape | 1694 | drivers/block/ide-tape.c | idetape_tape_t *tape = &(drive->tape); |
tape | 1700 | drivers/block/ide-tape.c | (void) ide_do_drive_cmd (drive, tape->postponed_rq, ide_next); |
tape | 1717 | drivers/block/ide-tape.c | idetape_tape_t *tape=&(drive->tape); |
tape | 1721 | drivers/block/ide-tape.c | pc=tape->pc; |
tape | 1725 | drivers/block/ide-tape.c | if (tape->dsc_received) { |
tape | 1736 | drivers/block/ide-tape.c | if (tape->failed_pc == pc) |
tape | 1737 | drivers/block/ide-tape.c | tape->failed_pc=NULL; |
tape | 1752 | drivers/block/ide-tape.c | tape->failed_pc=NULL; |
tape | 1794 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 1797 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 1803 | drivers/block/ide-tape.c | if (!tape->pc->error) { |
tape | 1820 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 1823 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 1828 | drivers/block/ide-tape.c | tape->block_address+=tape->pc->actually_transferred/tape->tape_block_size; |
tape | 1829 | drivers/block/ide-tape.c | if (!tape->pc->error) { |
tape | 1848 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 1851 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 1856 | drivers/block/ide-tape.c | tape->block_address+=tape->pc->actually_transferred/tape->tape_block_size; |
tape | 1857 | drivers/block/ide-tape.c | if (!tape->pc->error) { |
tape | 1876 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 1878 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 1880 | drivers/block/ide-tape.c | idetape_display_inquiry_result (tape->pc->buffer); |
tape | 2066 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 2069 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 2075 | drivers/block/ide-tape.c | if (!tape->pc->error) { |
tape | 2079 | drivers/block/ide-tape.c | idetape_analyze_error (drive,(idetape_request_sense_result_t *) tape->pc->buffer); |
tape | 2098 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 2100 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 2101 | drivers/block/ide-tape.c | tape->sense_key=result->sense_key; |
tape | 2102 | drivers/block/ide-tape.c | tape->asc=result->asc; |
tape | 2103 | drivers/block/ide-tape.c | tape->ascq=result->ascq; |
tape | 2375 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 2379 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 2387 | drivers/block/ide-tape.c | if (!tape->pc->error) { |
tape | 2388 | drivers/block/ide-tape.c | result=(idetape_read_position_result_t *) tape->pc->buffer; |
tape | 2398 | drivers/block/ide-tape.c | tape->block_address_valid=0; |
tape | 2405 | drivers/block/ide-tape.c | tape->block_address=idetape_swap_long (result->first_block); |
tape | 2406 | drivers/block/ide-tape.c | tape->block_address_valid=1; |
tape | 2488 | drivers/block/ide-tape.c | idetape_tape_t *tape = &(drive->tape); |
tape | 2493 | drivers/block/ide-tape.c | if (tape->active_data_request == rq) { /* The request was a data transfer request */ |
tape | 2495 | drivers/block/ide-tape.c | if (!tape->max_number_of_stages) |
tape | 2498 | drivers/block/ide-tape.c | printk ("Requests in pipeline: %d\n",tape->current_number_of_stages); |
tape | 2501 | drivers/block/ide-tape.c | tape->error_in_pipeline_stage=1; |
tape | 2512 | drivers/block/ide-tape.c | tape->pipeline_locked=1; |
tape | 2513 | drivers/block/ide-tape.c | tape->active_data_request = NULL; |
tape | 2514 | drivers/block/ide-tape.c | if (tape->first_stage == NULL) { |
tape | 2515 | drivers/block/ide-tape.c | tape->pipeline_locked=0; |
tape | 2520 | drivers/block/ide-tape.c | tape->pipeline_locked=0; |
tape | 2533 | drivers/block/ide-tape.c | ide_do_drive_cmd (drive,tape->active_data_request,ide_end); |
tape | 2545 | drivers/block/ide-tape.c | idetape_tape_t *tape=&(drive->tape); |
tape | 2574 | drivers/block/ide-tape.c | if (tape->failed_pc != NULL && tape->pc->c[0] == IDETAPE_REQUEST_SENSE_CMD) { |
tape | 2575 | drivers/block/ide-tape.c | idetape_issue_packet_command (drive,tape->failed_pc,&idetape_pc_intr); |
tape | 2581 | drivers/block/ide-tape.c | if (tape->postponed_rq != NULL) { |
tape | 2583 | drivers/block/ide-tape.c | if (tape->postponed_rq->rq_status != RQ_ACTIVE || rq != tape->postponed_rq) { |
tape | 2593 | drivers/block/ide-tape.c | tape->postponed_rq = NULL; |
tape | 2604 | drivers/block/ide-tape.c | tape->postponed_rq = NULL; |
tape | 2617 | drivers/block/ide-tape.c | tape->dsc_polling_frequency=IDETAPE_DSC_READ_WRITE_FREQUENCY; |
tape | 2627 | drivers/block/ide-tape.c | pc->buffer_size=rq->current_nr_sectors*tape->tape_block_size; |
tape | 2629 | drivers/block/ide-tape.c | pc->request_transfer=rq->current_nr_sectors*tape->tape_block_size; |
tape | 2644 | drivers/block/ide-tape.c | tape->dsc_polling_frequency=IDETAPE_DSC_READ_WRITE_FREQUENCY; |
tape | 2654 | drivers/block/ide-tape.c | pc->buffer_size=rq->current_nr_sectors*tape->tape_block_size; |
tape | 2656 | drivers/block/ide-tape.c | pc->request_transfer=rq->current_nr_sectors*tape->tape_block_size; |
tape | 2675 | drivers/block/ide-tape.c | tape->dsc_polling_frequency=IDETAPE_DSC_READ_WRITE_FREQUENCY; |
tape | 2777 | drivers/block/ide-tape.c | idetape_tape_t *tape = &(drive->tape); |
tape | 2788 | drivers/block/ide-tape.c | rq.sector = tape->block_address; |
tape | 2791 | drivers/block/ide-tape.c | tape->active_data_request=NULL; /* Non-pipelined mode */ |
tape | 2813 | drivers/block/ide-tape.c | idetape_tape_t *tape = &(drive->tape); |
tape | 2822 | drivers/block/ide-tape.c | if (tape->error_in_pipeline_stage) /* Return a deferred error */ |
tape | 2841 | drivers/block/ide-tape.c | while (tape->pipeline_locked); |
tape | 2843 | drivers/block/ide-tape.c | if (tape->first_stage != NULL) { |
tape | 2844 | drivers/block/ide-tape.c | idetape_wait_for_request (&(tape->first_stage->rq)); |
tape | 2857 | drivers/block/ide-tape.c | if (tape->active_data_request != NULL) |
tape | 2858 | drivers/block/ide-tape.c | idetape_wait_for_request (tape->active_data_request); |
tape | 2867 | drivers/block/ide-tape.c | rq->sector = tape->block_address; /* Doesn't actually matter - We always assume sequential access */ |
tape | 2880 | drivers/block/ide-tape.c | idetape_tape_t *tape = &(drive->tape); |
tape | 2882 | drivers/block/ide-tape.c | tape->pipeline_was_full_once=0; |
tape | 2884 | drivers/block/ide-tape.c | while (tape->pipeline_locked); |
tape | 2886 | drivers/block/ide-tape.c | if (tape->active_data_request == NULL) |
tape | 2889 | drivers/block/ide-tape.c | if (tape->last_stage != NULL) |
tape | 2890 | drivers/block/ide-tape.c | idetape_wait_for_request (&(tape->last_stage->rq)); |
tape | 2892 | drivers/block/ide-tape.c | else if (tape->active_data_request != NULL) |
tape | 2893 | drivers/block/ide-tape.c | idetape_wait_for_request (tape->active_data_request); |
tape | 2895 | drivers/block/ide-tape.c | tape->error_in_pipeline_stage=0; |
tape | 2905 | drivers/block/ide-tape.c | tape->max_number_of_stages=IDETAPE_MIN_PIPELINE_STAGES; |
tape | 2907 | drivers/block/ide-tape.c | tape->max_number_of_stages=0; |
tape | 2911 | drivers/block/ide-tape.c | if (tape->first_stage != NULL || tape->last_stage != NULL || tape->current_number_of_stages != 0) { |
tape | 2991 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 2993 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 2995 | drivers/block/ide-tape.c | printk ("ide-tape: pc_stack_index=%d\n",tape->pc_stack_index); |
tape | 2997 | drivers/block/ide-tape.c | if (tape->pc_stack_index==IDETAPE_PC_STACK) |
tape | 2998 | drivers/block/ide-tape.c | tape->pc_stack_index=0; |
tape | 2999 | drivers/block/ide-tape.c | return (&(tape->pc_stack [tape->pc_stack_index++])); |
tape | 3018 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 3020 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 3023 | drivers/block/ide-tape.c | printk ("ide-tape: rq_stack_index=%d\n",tape->rq_stack_index); |
tape | 3025 | drivers/block/ide-tape.c | if (tape->rq_stack_index==IDETAPE_PC_STACK) |
tape | 3026 | drivers/block/ide-tape.c | tape->rq_stack_index=0; |
tape | 3027 | drivers/block/ide-tape.c | return (&(tape->rq_stack [tape->rq_stack_index++])); |
tape | 3041 | drivers/block/ide-tape.c | idetape_tape_t *tape=&(drive->tape); |
tape | 3050 | drivers/block/ide-tape.c | if (tape->busy) { |
tape | 3055 | drivers/block/ide-tape.c | tape->busy=1; |
tape | 3064 | drivers/block/ide-tape.c | idetape_tape_t *tape=&(drive->tape); |
tape | 3072 | drivers/block/ide-tape.c | tape->busy=0; |
tape | 3135 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 3145 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 3146 | drivers/block/ide-tape.c | tape->last_dt_was_write=0; |
tape | 3153 | drivers/block/ide-tape.c | ctl_bytes=tape->capabilities.ctl*tape->tape_block_size; |
tape | 3161 | drivers/block/ide-tape.c | previous_block_address=tape->block_address; |
tape | 3162 | drivers/block/ide-tape.c | retval=idetape_queue_rw_tail (drive,IDETAPE_READ_REQUEST,tape->capabilities.ctl,tape->data_buffer); |
tape | 3163 | drivers/block/ide-tape.c | actually_read+=tape->tape_block_size*(tape->block_address-previous_block_address); |
tape | 3173 | drivers/block/ide-tape.c | memcpy_tofs (buf_ptr,tape->data_buffer,ctl_bytes); |
tape | 3187 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 3196 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 3198 | drivers/block/ide-tape.c | tape->last_dt_was_write=0; |
tape | 3203 | drivers/block/ide-tape.c | blocks=count/tape->tape_block_size; |
tape | 3204 | drivers/block/ide-tape.c | remainder=count%tape->tape_block_size; |
tape | 3214 | drivers/block/ide-tape.c | previous_block_address=tape->block_address; |
tape | 3215 | drivers/block/ide-tape.c | retval=idetape_queue_rw_tail (drive,IDETAPE_READ_REQUEST,blocks,tape->data_buffer); |
tape | 3218 | drivers/block/ide-tape.c | actually_read=tape->tape_block_size*(tape->block_address-previous_block_address); |
tape | 3222 | drivers/block/ide-tape.c | memcpy_tofs (buf,tape->data_buffer,actually_read); |
tape | 3228 | drivers/block/ide-tape.c | memcpy_tofs (buf,tape->data_buffer,count); |
tape | 3236 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 3246 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 3248 | drivers/block/ide-tape.c | tape->last_dt_was_write=1; |
tape | 3255 | drivers/block/ide-tape.c | blocks=count/tape->data_buffer_size; |
tape | 3256 | drivers/block/ide-tape.c | remainder=count%tape->data_buffer_size; |
tape | 3259 | drivers/block/ide-tape.c | memcpy_fromfs (tape->temp_data_buffer,buf_ptr,tape->data_buffer_size); |
tape | 3260 | drivers/block/ide-tape.c | buf_ptr+=tape->data_buffer_size; |
tape | 3261 | drivers/block/ide-tape.c | previous_block_address=tape->block_address; |
tape | 3262 | drivers/block/ide-tape.c | retval=idetape_add_chrdev_write_request (drive,IDETAPE_WRITE_REQUEST,tape->capabilities.ctl,tape->temp_data_buffer); |
tape | 3263 | drivers/block/ide-tape.c | if (tape->max_number_of_stages) |
tape | 3264 | drivers/block/ide-tape.c | actually_written+=tape->data_buffer_size; /* Pipelined mode - Cheat :-) */ |
tape | 3266 | drivers/block/ide-tape.c | actually_written+=tape->tape_block_size*(tape->block_address-previous_block_address); |
tape | 3270 | drivers/block/ide-tape.c | if (tape->max_number_of_stages) |
tape | 3287 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 3297 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 3299 | drivers/block/ide-tape.c | blocks=count/tape->tape_block_size; |
tape | 3300 | drivers/block/ide-tape.c | remainder=count%tape->tape_block_size; |
tape | 3307 | drivers/block/ide-tape.c | memcpy_fromfs (tape->temp_data_buffer,buf,count); |
tape | 3312 | drivers/block/ide-tape.c | ptr=tape->temp_data_buffer+(blocks-1)*tape->tape_block_size; |
tape | 3319 | drivers/block/ide-tape.c | previous_block_address=tape->block_address; |
tape | 3320 | drivers/block/ide-tape.c | retval=idetape_add_chrdev_write_request (drive,IDETAPE_WRITE_REQUEST,blocks,tape->temp_data_buffer); |
tape | 3323 | drivers/block/ide-tape.c | if (tape->max_number_of_stages) |
tape | 3326 | drivers/block/ide-tape.c | actually_written=tape->tape_block_size*(tape->block_address-previous_block_address); |
tape | 3494 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 3506 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 3514 | drivers/block/ide-tape.c | if (tape->busy) { |
tape | 3519 | drivers/block/ide-tape.c | tape->busy=1; |
tape | 3522 | drivers/block/ide-tape.c | if (!tape->block_address_valid) { |
tape | 3525 | drivers/block/ide-tape.c | tape->busy=0; |
tape | 3530 | drivers/block/ide-tape.c | tape->last_dt_was_write=0; |
tape | 3543 | drivers/block/ide-tape.c | idetape_tape_t *tape; |
tape | 3554 | drivers/block/ide-tape.c | tape=&(drive->tape); |
tape | 3559 | drivers/block/ide-tape.c | if (tape->last_dt_was_write) { |
tape | 3582 | drivers/block/ide-tape.c | tape->busy=0; |
tape | 3666 | drivers/block/ide-tape.c | idetape_tape_t *tape=&(drive->tape); |
tape | 3675 | drivers/block/ide-tape.c | if (tape->current_number_of_stages==tape->max_number_of_stages) { |
tape | 3676 | drivers/block/ide-tape.c | tape->pipeline_was_full_once=1; |
tape | 3686 | drivers/block/ide-tape.c | buffers_num=tape->data_buffer_size / IDETAPE_ALLOCATION_BLOCK; |
tape | 3687 | drivers/block/ide-tape.c | if (tape->data_buffer_size % IDETAPE_ALLOCATION_BLOCK) |
tape | 3815 | drivers/block/ide-tape.c | idetape_tape_t *tape=&(drive->tape); |
tape | 3821 | drivers/block/ide-tape.c | if (!tape->pipeline_was_full_once) |
tape | 3824 | drivers/block/ide-tape.c | tape->max_number_of_stages+=IDETAPE_INCREASE_STAGES_RATE* |
tape | 3827 | drivers/block/ide-tape.c | if (tape->max_number_of_stages >= IDETAPE_MAX_PIPELINE_STAGES) |
tape | 3828 | drivers/block/ide-tape.c | tape->max_number_of_stages = IDETAPE_MAX_PIPELINE_STAGES; |
tape | 3831 | drivers/block/ide-tape.c | printk ("Maximum number of stages: %d\n",tape->max_number_of_stages); |
tape | 3844 | drivers/block/ide-tape.c | idetape_tape_t *tape=&(drive->tape); |
tape | 3863 | drivers/block/ide-tape.c | while (tape->pipeline_locked); |
tape | 3866 | drivers/block/ide-tape.c | stage->prev=tape->last_stage; |
tape | 3867 | drivers/block/ide-tape.c | if (tape->first_stage != NULL) |
tape | 3868 | drivers/block/ide-tape.c | tape->last_stage->next=stage; |
tape | 3870 | drivers/block/ide-tape.c | tape->first_stage=stage; |
tape | 3871 | drivers/block/ide-tape.c | tape->last_stage=stage; |
tape | 3872 | drivers/block/ide-tape.c | tape->current_number_of_stages++; |
tape | 3883 | drivers/block/ide-tape.c | if (tape->active_data_request == NULL && |
tape | 3884 | drivers/block/ide-tape.c | tape->current_number_of_stages >= 0.75*tape->max_number_of_stages) { |
tape | 3901 | drivers/block/ide-tape.c | idetape_tape_t *tape=&(drive->tape); |
tape | 3903 | drivers/block/ide-tape.c | if (tape->first_stage == NULL) |
tape | 3906 | drivers/block/ide-tape.c | if (tape->active_data_request == NULL) { |
tape | 3911 | drivers/block/ide-tape.c | (void) (ide_do_drive_cmd (drive,tape->active_data_request,ide_end)); |
tape | 3925 | drivers/block/ide-tape.c | idetape_tape_t *tape=&(drive->tape); |
tape | 3932 | drivers/block/ide-tape.c | if (tape->first_stage == NULL) { |
tape | 3938 | drivers/block/ide-tape.c | stage=tape->first_stage; |
tape | 3940 | drivers/block/ide-tape.c | idetape_copy_buffer_from_stage (stage,tape->data_buffer); |
tape | 3943 | drivers/block/ide-tape.c | rq->buffer=tape->data_buffer; |
tape | 3946 | drivers/block/ide-tape.c | tape->first_stage=stage->next; |
tape | 3947 | drivers/block/ide-tape.c | if (tape->first_stage == NULL) |
tape | 3948 | drivers/block/ide-tape.c | tape->last_stage=NULL; |
tape | 3949 | drivers/block/ide-tape.c | tape->current_number_of_stages--; |
tape | 3950 | drivers/block/ide-tape.c | tape->active_data_request=rq; |
tape | 423 | drivers/block/ide-tape.h | if (hwif->tape_drive->tape.request_status) { \ |
tape | 425 | drivers/block/ide-tape.h | hwif->tape_drive->tape.last_status=GET_STAT(); \ |
tape | 426 | drivers/block/ide-tape.h | hwif->tape_drive->tape.request_status=0; \ |
tape | 428 | drivers/block/ide-tape.h | if (hwif->tape_drive->tape.request_dsc_callback) { \ |
tape | 429 | drivers/block/ide-tape.h | hwif->tape_drive->tape.request_dsc_callback=0; \ |
tape | 315 | drivers/block/ide.h | idetape_tape_t tape; |