tag | line | file | source code |
current_SC | 207 | drivers/scsi/NCR53c406a.c | static Scsi_Cmnd *current_SC = NULL; |
current_SC | 661 | drivers/scsi/NCR53c406a.c | current_SC->result = DID_TIME_OUT << 16; |
current_SC | 662 | drivers/scsi/NCR53c406a.c | current_SC->SCp.phase = idle; |
current_SC | 663 | drivers/scsi/NCR53c406a.c | current_SC->scsi_done(current_SC); |
current_SC | 703 | drivers/scsi/NCR53c406a.c | current_SC = SCpnt; |
current_SC | 704 | drivers/scsi/NCR53c406a.c | current_SC->scsi_done = done; |
current_SC | 705 | drivers/scsi/NCR53c406a.c | current_SC->SCp.phase = command_ph; |
current_SC | 706 | drivers/scsi/NCR53c406a.c | current_SC->SCp.Status = 0; |
current_SC | 707 | drivers/scsi/NCR53c406a.c | current_SC->SCp.Message = 0; |
current_SC | 805 | drivers/scsi/NCR53c406a.c | current_SC->SCp.phase = idle; |
current_SC | 806 | drivers/scsi/NCR53c406a.c | current_SC->result = DID_RESET << 16; |
current_SC | 807 | drivers/scsi/NCR53c406a.c | current_SC->scsi_done(current_SC); |
current_SC | 814 | drivers/scsi/NCR53c406a.c | current_SC->SCp.phase = idle; |
current_SC | 815 | drivers/scsi/NCR53c406a.c | current_SC->result = DID_ERROR << 16; |
current_SC | 816 | drivers/scsi/NCR53c406a.c | current_SC->scsi_done(current_SC); |
current_SC | 823 | drivers/scsi/NCR53c406a.c | current_SC->SCp.phase = idle; |
current_SC | 824 | drivers/scsi/NCR53c406a.c | current_SC->result = DID_PARITY << 16; |
current_SC | 825 | drivers/scsi/NCR53c406a.c | current_SC->scsi_done(current_SC); |
current_SC | 831 | drivers/scsi/NCR53c406a.c | current_SC->SCp.phase = idle; |
current_SC | 832 | drivers/scsi/NCR53c406a.c | current_SC->result = DID_ERROR << 16; |
current_SC | 833 | drivers/scsi/NCR53c406a.c | current_SC->scsi_done(current_SC); |
current_SC | 839 | drivers/scsi/NCR53c406a.c | if(current_SC->SCp.phase != message_in){ /* Unexpected disconnect */ |
current_SC | 840 | drivers/scsi/NCR53c406a.c | current_SC->result = DID_NO_CONNECT << 16; |
current_SC | 843 | drivers/scsi/NCR53c406a.c | current_SC->result = (current_SC->SCp.Status & 0xff) |
current_SC | 844 | drivers/scsi/NCR53c406a.c | | ((current_SC->SCp.Message & 0xff) << 8) | (DID_OK << 16); |
current_SC | 848 | drivers/scsi/NCR53c406a.c | current_SC->SCp.phase = idle; |
current_SC | 849 | drivers/scsi/NCR53c406a.c | current_SC->scsi_done( current_SC ); |
current_SC | 857 | drivers/scsi/NCR53c406a.c | current_SC->SCp.phase = data_out; |
current_SC | 860 | drivers/scsi/NCR53c406a.c | LOAD_DMA_COUNT(current_SC->request_bufflen); /* Max transfer size */ |
current_SC | 862 | drivers/scsi/NCR53c406a.c | NCR53c406a_dma_write(current_SC->request_buffer, |
current_SC | 863 | drivers/scsi/NCR53c406a.c | current_SC->request_bufflen); |
current_SC | 867 | drivers/scsi/NCR53c406a.c | if (!current_SC->use_sg) /* Don't use scatter-gather */ |
current_SC | 868 | drivers/scsi/NCR53c406a.c | NCR53c406a_pio_write(current_SC->request_buffer, |
current_SC | 869 | drivers/scsi/NCR53c406a.c | current_SC->request_bufflen); |
current_SC | 871 | drivers/scsi/NCR53c406a.c | sgcount = current_SC->use_sg; |
current_SC | 872 | drivers/scsi/NCR53c406a.c | sglist = current_SC->request_buffer; |
current_SC | 886 | drivers/scsi/NCR53c406a.c | current_SC->SCp.phase = data_in; |
current_SC | 889 | drivers/scsi/NCR53c406a.c | LOAD_DMA_COUNT(current_SC->request_bufflen); /* Max transfer size */ |
current_SC | 891 | drivers/scsi/NCR53c406a.c | NCR53c406a_dma_read(current_SC->request_buffer, |
current_SC | 892 | drivers/scsi/NCR53c406a.c | current_SC->request_bufflen); |
current_SC | 896 | drivers/scsi/NCR53c406a.c | if (!current_SC->use_sg) /* Don't use scatter-gather */ |
current_SC | 897 | drivers/scsi/NCR53c406a.c | NCR53c406a_pio_read(current_SC->request_buffer, |
current_SC | 898 | drivers/scsi/NCR53c406a.c | current_SC->request_bufflen); |
current_SC | 900 | drivers/scsi/NCR53c406a.c | sgcount = current_SC->use_sg; |
current_SC | 901 | drivers/scsi/NCR53c406a.c | sglist = current_SC->request_buffer; |
current_SC | 913 | drivers/scsi/NCR53c406a.c | current_SC->SCp.phase = command_ph; |
current_SC | 919 | drivers/scsi/NCR53c406a.c | current_SC->SCp.phase = status_ph; |
current_SC | 932 | drivers/scsi/NCR53c406a.c | current_SC->SCp.phase = message_out; |
current_SC | 940 | drivers/scsi/NCR53c406a.c | current_SC->SCp.phase = message_in; |
current_SC | 942 | drivers/scsi/NCR53c406a.c | current_SC->SCp.Status = inb(SCSI_FIFO); |
current_SC | 943 | drivers/scsi/NCR53c406a.c | current_SC->SCp.Message = inb(SCSI_FIFO); |
current_SC | 947 | drivers/scsi/NCR53c406a.c | current_SC->SCp.Status, current_SC->SCp.Message)); |
current_SC | 949 | drivers/scsi/NCR53c406a.c | if(current_SC->SCp.Message == SAVE_POINTERS || |
current_SC | 950 | drivers/scsi/NCR53c406a.c | current_SC->SCp.Message == DISCONNECT) { |
current_SC | 351 | drivers/scsi/aha152x.c | #define CURRENT_SC (HOSTDATA(shpnt)->current_SC) |
current_SC | 362 | drivers/scsi/aha152x.c | Scsi_Cmnd *current_SC; |
current_SC | 323 | drivers/scsi/fdomain.c | static Scsi_Cmnd *current_SC = NULL; |
current_SC | 1215 | drivers/scsi/fdomain.c | current_SC->result = error; |
current_SC | 1216 | drivers/scsi/fdomain.c | if (current_SC->scsi_done) |
current_SC | 1217 | drivers/scsi/fdomain.c | current_SC->scsi_done( current_SC ); |
current_SC | 1244 | drivers/scsi/fdomain.c | if (!in_command || !current_SC) { /* Spurious interrupt */ |
current_SC | 1247 | drivers/scsi/fdomain.c | in_command, current_SC ); |
current_SC | 1253 | drivers/scsi/fdomain.c | if (current_SC->SCp.phase & aborted) { |
current_SC | 1265 | drivers/scsi/fdomain.c | if (current_SC->SCp.phase & in_arbitration) { |
current_SC | 1274 | drivers/scsi/fdomain.c | current_SC->SCp.phase = in_selection; |
current_SC | 1279 | drivers/scsi/fdomain.c | outb( adapter_mask | (1 << current_SC->target), SCSI_Data_NoACK_port ); |
current_SC | 1287 | drivers/scsi/fdomain.c | } else if (current_SC->SCp.phase & in_selection) { |
current_SC | 1291 | drivers/scsi/fdomain.c | if (fdomain_select( current_SC->target )) { |
current_SC | 1305 | drivers/scsi/fdomain.c | current_SC->SCp.phase = in_other; |
current_SC | 1323 | drivers/scsi/fdomain.c | outb( current_SC->cmnd[current_SC->SCp.sent_command++], |
current_SC | 1327 | drivers/scsi/fdomain.c | current_SC->cmnd[ current_SC->SCp.sent_command - 1] ); |
current_SC | 1331 | drivers/scsi/fdomain.c | if (chip != tmc1800 && !current_SC->SCp.have_data_in) { |
current_SC | 1332 | drivers/scsi/fdomain.c | current_SC->SCp.have_data_in = -1; |
current_SC | 1337 | drivers/scsi/fdomain.c | if (chip != tmc1800 && !current_SC->SCp.have_data_in) { |
current_SC | 1338 | drivers/scsi/fdomain.c | current_SC->SCp.have_data_in = 1; |
current_SC | 1343 | drivers/scsi/fdomain.c | current_SC->SCp.Status = inb( Read_SCSI_Data_port ); |
current_SC | 1345 | drivers/scsi/fdomain.c | printk( "Status = %x, ", current_SC->SCp.Status ); |
current_SC | 1348 | drivers/scsi/fdomain.c | if (current_SC->SCp.Status && current_SC->SCp.Status != 2) { |
current_SC | 1350 | drivers/scsi/fdomain.c | current_SC->target, |
current_SC | 1351 | drivers/scsi/fdomain.c | current_SC->cmnd[0], |
current_SC | 1352 | drivers/scsi/fdomain.c | current_SC->SCp.Status ); |
current_SC | 1360 | drivers/scsi/fdomain.c | current_SC->SCp.Message = inb( Read_SCSI_Data_port ); |
current_SC | 1362 | drivers/scsi/fdomain.c | printk( "Message = %x, ", current_SC->SCp.Message ); |
current_SC | 1364 | drivers/scsi/fdomain.c | if (!current_SC->SCp.Message) ++done; |
current_SC | 1366 | drivers/scsi/fdomain.c | if (current_SC->SCp.Message) { |
current_SC | 1367 | drivers/scsi/fdomain.c | printk( "fdomain: message = %x\n", current_SC->SCp.Message ); |
current_SC | 1375 | drivers/scsi/fdomain.c | && !current_SC->SCp.have_data_in |
current_SC | 1376 | drivers/scsi/fdomain.c | && (current_SC->SCp.sent_command |
current_SC | 1377 | drivers/scsi/fdomain.c | >= current_SC->cmd_len)) { |
current_SC | 1504 | drivers/scsi/fdomain.c | switch (current_SC->cmnd[0]) { |
current_SC | 1525 | drivers/scsi/fdomain.c | current_SC->SCp.have_data_in = -1; |
current_SC | 1532 | drivers/scsi/fdomain.c | current_SC->SCp.have_data_in = 1; |
current_SC | 1538 | drivers/scsi/fdomain.c | if (current_SC->SCp.have_data_in == -1) { /* DATA OUT */ |
current_SC | 1543 | drivers/scsi/fdomain.c | if (data_count > current_SC->SCp.this_residual) |
current_SC | 1544 | drivers/scsi/fdomain.c | data_count = current_SC->SCp.this_residual; |
current_SC | 1550 | drivers/scsi/fdomain.c | outb( *current_SC->SCp.ptr++, Write_FIFO_port ); |
current_SC | 1551 | drivers/scsi/fdomain.c | --current_SC->SCp.this_residual; |
current_SC | 1554 | drivers/scsi/fdomain.c | outsw( Write_FIFO_port, current_SC->SCp.ptr, data_count ); |
current_SC | 1555 | drivers/scsi/fdomain.c | current_SC->SCp.ptr += 2 * data_count; |
current_SC | 1556 | drivers/scsi/fdomain.c | current_SC->SCp.this_residual -= 2 * data_count; |
current_SC | 1559 | drivers/scsi/fdomain.c | if (!current_SC->SCp.this_residual) { |
current_SC | 1560 | drivers/scsi/fdomain.c | if (current_SC->SCp.buffers_residual) { |
current_SC | 1561 | drivers/scsi/fdomain.c | --current_SC->SCp.buffers_residual; |
current_SC | 1562 | drivers/scsi/fdomain.c | ++current_SC->SCp.buffer; |
current_SC | 1563 | drivers/scsi/fdomain.c | current_SC->SCp.ptr = current_SC->SCp.buffer->address; |
current_SC | 1564 | drivers/scsi/fdomain.c | current_SC->SCp.this_residual = current_SC->SCp.buffer->length; |
current_SC | 1571 | drivers/scsi/fdomain.c | if (current_SC->SCp.have_data_in == 1) { /* DATA IN */ |
current_SC | 1576 | drivers/scsi/fdomain.c | if (data_count > current_SC->SCp.this_residual) |
current_SC | 1577 | drivers/scsi/fdomain.c | data_count = current_SC->SCp.this_residual; |
current_SC | 1583 | drivers/scsi/fdomain.c | *current_SC->SCp.ptr++ = inb( Read_FIFO_port ); |
current_SC | 1584 | drivers/scsi/fdomain.c | --current_SC->SCp.this_residual; |
current_SC | 1587 | drivers/scsi/fdomain.c | insw( Read_FIFO_port, current_SC->SCp.ptr, data_count ); |
current_SC | 1588 | drivers/scsi/fdomain.c | current_SC->SCp.ptr += 2 * data_count; |
current_SC | 1589 | drivers/scsi/fdomain.c | current_SC->SCp.this_residual -= 2 * data_count; |
current_SC | 1592 | drivers/scsi/fdomain.c | if (!current_SC->SCp.this_residual |
current_SC | 1593 | drivers/scsi/fdomain.c | && current_SC->SCp.buffers_residual) { |
current_SC | 1594 | drivers/scsi/fdomain.c | --current_SC->SCp.buffers_residual; |
current_SC | 1595 | drivers/scsi/fdomain.c | ++current_SC->SCp.buffer; |
current_SC | 1596 | drivers/scsi/fdomain.c | current_SC->SCp.ptr = current_SC->SCp.buffer->address; |
current_SC | 1597 | drivers/scsi/fdomain.c | current_SC->SCp.this_residual = current_SC->SCp.buffer->length; |
current_SC | 1604 | drivers/scsi/fdomain.c | printk( " ** IN DONE %d ** ", current_SC->SCp.have_data_in ); |
current_SC | 1608 | drivers/scsi/fdomain.c | if (current_SC->cmnd[0] == REQUEST_SENSE && !current_SC->SCp.Status) { |
current_SC | 1609 | drivers/scsi/fdomain.c | if ((unsigned char)(*((char *)current_SC->request_buffer+2)) & 0x0f) { |
current_SC | 1614 | drivers/scsi/fdomain.c | key = (unsigned char)(*((char *)current_SC->request_buffer + 2)) |
current_SC | 1616 | drivers/scsi/fdomain.c | code = (unsigned char)(*((char *)current_SC->request_buffer + 12)); |
current_SC | 1617 | drivers/scsi/fdomain.c | qualifier = (unsigned char)(*((char *)current_SC->request_buffer |
current_SC | 1637 | drivers/scsi/fdomain.c | my_done( (current_SC->SCp.Status & 0xff) |
current_SC | 1638 | drivers/scsi/fdomain.c | | ((current_SC->SCp.Message & 0xff) << 8) | (DID_OK << 16) ); |
current_SC | 1644 | drivers/scsi/fdomain.c | if (current_SC->SCp.phase & disconnect) { |
current_SC | 1672 | drivers/scsi/fdomain.c | current_SC = SCpnt; /* Save this for the done function */ |
current_SC | 1673 | drivers/scsi/fdomain.c | current_SC->scsi_done = done; |
current_SC | 1677 | drivers/scsi/fdomain.c | if (current_SC->use_sg) { |
current_SC | 1678 | drivers/scsi/fdomain.c | current_SC->SCp.buffer = |
current_SC | 1679 | drivers/scsi/fdomain.c | (struct scatterlist *)current_SC->request_buffer; |
current_SC | 1680 | drivers/scsi/fdomain.c | current_SC->SCp.ptr = current_SC->SCp.buffer->address; |
current_SC | 1681 | drivers/scsi/fdomain.c | current_SC->SCp.this_residual = current_SC->SCp.buffer->length; |
current_SC | 1682 | drivers/scsi/fdomain.c | current_SC->SCp.buffers_residual = current_SC->use_sg - 1; |
current_SC | 1684 | drivers/scsi/fdomain.c | current_SC->SCp.ptr = (char *)current_SC->request_buffer; |
current_SC | 1685 | drivers/scsi/fdomain.c | current_SC->SCp.this_residual = current_SC->request_bufflen; |
current_SC | 1686 | drivers/scsi/fdomain.c | current_SC->SCp.buffer = NULL; |
current_SC | 1687 | drivers/scsi/fdomain.c | current_SC->SCp.buffers_residual = 0; |
current_SC | 1691 | drivers/scsi/fdomain.c | current_SC->SCp.Status = 0; |
current_SC | 1692 | drivers/scsi/fdomain.c | current_SC->SCp.Message = 0; |
current_SC | 1693 | drivers/scsi/fdomain.c | current_SC->SCp.have_data_in = 0; |
current_SC | 1694 | drivers/scsi/fdomain.c | current_SC->SCp.sent_command = 0; |
current_SC | 1695 | drivers/scsi/fdomain.c | current_SC->SCp.phase = in_arbitration; |
current_SC | 1825 | drivers/scsi/fdomain.c | current_SC->SCp.phase |= aborted; |
current_SC | 1827 | drivers/scsi/fdomain.c | current_SC->result = DID_ABORT << 16; |
current_SC | 1848 | drivers/scsi/fdomain.c | if (called_once) print_info( current_SC ); |