Lines Matching refs:scsi

247 	printk("BH @%p +%04x, ", host->scsi.SCp.ptr,  in acornscsi_dumpdma()
248 host->scsi.SCp.this_residual); in acornscsi_dumpdma()
250 host->scsi.SCp.scsi_xferred); in acornscsi_dumpdma()
385 host->scsi.phase = PHASE_IDLE; in acornscsi_resetcard()
386 host->scsi.disconnectable = 0; in acornscsi_resetcard()
715 if (host->scsi.disconnectable && host->SCpnt) { in acornscsi_kick()
717 host->scsi.disconnectable = 0; in acornscsi_kick()
738 host->scsi.phase = PHASE_CONNECTING; in acornscsi_kick()
740 host->scsi.SCp = SCpnt->SCp; in acornscsi_kick()
805 SCpnt->result = result << 16 | host->scsi.SCp.Message << 8 | host->scsi.SCp.Status; in acornscsi_done()
819 if (host->scsi.SCp.ptr && in acornscsi_done()
823 if (host->scsi.SCp.scsi_xferred < SCpnt->underflow || in acornscsi_done()
824 host->scsi.SCp.scsi_xferred != host->dma.transferred) in acornscsi_done()
874 host->scsi.phase = PHASE_IDLE; in acornscsi_done()
1038 length = min_t(unsigned int, host->scsi.SCp.this_residual, DMAC_BUFFER_SIZE / 2); in acornscsi_dma_setup()
1048 acornscsi_data_write(host, host->scsi.SCp.ptr, host->dma.start_addr, in acornscsi_dma_setup()
1110 acornscsi_data_read(host, host->scsi.SCp.ptr, in acornscsi_dma_cleanup()
1116 acornscsi_data_updateptr(host, &host->scsi.SCp, transferred); in acornscsi_dma_cleanup()
1157 host->dma.xfer_ptr = host->scsi.SCp.ptr; in acornscsi_dma_intr()
1161 acornscsi_data_updateptr(host, &host->scsi.SCp, transferred); in acornscsi_dma_intr()
1166 length = min_t(unsigned int, host->scsi.SCp.this_residual, DMAC_BUFFER_SIZE / 2); in acornscsi_dma_intr()
1176 acornscsi_data_write(host, host->scsi.SCp.ptr, host->dma.start_addr, in acornscsi_dma_intr()
1253 transferred = host->scsi.SCp.scsi_xferred - host->dma.transferred; in acornscsi_dma_adjust()
1312 sbic_arm_writenext(host, SCpnt->cmd_len - host->scsi.SCp.sent_command); in acornscsi_sendcommand()
1317 (int *)&host->scsi.SCp.sent_command, SCpnt->cmd_len, 1000000)) in acornscsi_sendcommand()
1320 host->scsi.phase = PHASE_COMMAND; in acornscsi_sendcommand()
1326 unsigned int message_length = msgqueue_msglength(&host->scsi.msgs); in acornscsi_sendmessage()
1343 host->scsi.last_message = NOP; in acornscsi_sendmessage()
1351 msg = msgqueue_getmsg(&host->scsi.msgs, 0); in acornscsi_sendmessage()
1357 host->scsi.last_message = msg->msg[0]; in acornscsi_sendmessage()
1378 while ((msg = msgqueue_getmsg(&host->scsi.msgs, msgnr++)) != NULL) { in acornscsi_sendmessage()
1387 host->scsi.last_message = msg->msg[0]; in acornscsi_sendmessage()
1389 host->scsi.last_message |= msg->msg[2] << 8; in acornscsi_sendmessage()
1411 host->scsi.SCp.Status = sbic_arm_read(host, SBIC_DATA); in acornscsi_readstatusbyte()
1481 if (host->scsi.phase == PHASE_RECONNECTED) { in acornscsi_message()
1489 host->scsi.reconnected.tag = message[1]; in acornscsi_message()
1491 host->scsi.phase = PHASE_MSGIN; in acornscsi_message()
1498 if (host->scsi.phase != PHASE_STATUSIN) { in acornscsi_message()
1503 host->scsi.phase = PHASE_DONE; in acornscsi_message()
1504 host->scsi.SCp.Message = message[0]; in acornscsi_message()
1515 host->SCpnt->SCp = host->scsi.SCp; in acornscsi_message()
1517 host->scsi.phase = PHASE_MSGIN; in acornscsi_message()
1531 host->scsi.SCp = host->SCpnt->SCp; in acornscsi_message()
1532 host->scsi.phase = PHASE_MSGIN; in acornscsi_message()
1546 host->scsi.phase = PHASE_DISCONNECT; in acornscsi_message()
1564 if (msgqueue_msglength(&host->scsi.msgs)) in acornscsi_message()
1567 switch (host->scsi.last_message) { in acornscsi_message()
1638 msgqueue_addmsg(&host->scsi.msgs, 5, EXTENDED_MESSAGE, 3, in acornscsi_message()
1657 msgqueue_flush(&host->scsi.msgs); in acornscsi_message()
1658 msgqueue_addmsg(&host->scsi.msgs, 1, MESSAGE_REJECT); in acornscsi_message()
1668 msgqueue_flush(&host->scsi.msgs); in acornscsi_message()
1669 msgqueue_addmsg(&host->scsi.msgs, 1, MESSAGE_REJECT); in acornscsi_message()
1670 host->scsi.phase = PHASE_MSGIN; in acornscsi_message()
1687 msgqueue_addmsg(&host->scsi.msgs, 1, BUS_DEVICE_RESET); in acornscsi_buildmessages()
1692 msgqueue_addmsg(&host->scsi.msgs, 1, in acornscsi_buildmessages()
1714 msgqueue_addmsg(&host->scsi.msgs, 2, tag_type, host->SCpnt->tag); in acornscsi_buildmessages()
1721 msgqueue_addmsg(&host->scsi.msgs, 5, in acornscsi_buildmessages()
1739 if (!host->scsi.SCp.ptr /*&& host->scsi.SCp.this_residual*/) { in acornscsi_starttransfer()
1745 residual = scsi_bufflen(host->SCpnt) - host->scsi.SCp.scsi_xferred; in acornscsi_starttransfer()
1780 if (host->SCpnt && !host->scsi.disconnectable) { in acornscsi_reconnect()
1789 host->scsi.reconnected.target = target; in acornscsi_reconnect()
1790 host->scsi.reconnected.lun = lun; in acornscsi_reconnect()
1791 host->scsi.reconnected.tag = 0; in acornscsi_reconnect()
1793 if (host->scsi.disconnectable && host->SCpnt && in acornscsi_reconnect()
1800 ADD_STATUS(target, 0x81, host->scsi.phase, 0); in acornscsi_reconnect()
1803 host->scsi.phase = PHASE_RECONNECTED; in acornscsi_reconnect()
1829 if (host->scsi.disconnectable && host->SCpnt) { in acornscsi_reconnect_finish()
1830 host->scsi.disconnectable = 0; in acornscsi_reconnect_finish()
1831 if (host->SCpnt->device->id == host->scsi.reconnected.target && in acornscsi_reconnect_finish()
1832 host->SCpnt->device->lun == host->scsi.reconnected.lun && in acornscsi_reconnect_finish()
1833 host->SCpnt->tag == host->scsi.reconnected.tag) { in acornscsi_reconnect_finish()
1850 host->scsi.reconnected.target, in acornscsi_reconnect_finish()
1851 host->scsi.reconnected.lun, in acornscsi_reconnect_finish()
1852 host->scsi.reconnected.tag); in acornscsi_reconnect_finish()
1860 acornscsi_abortcmd(host, host->scsi.reconnected.tag); in acornscsi_reconnect_finish()
1865 host->scsi.SCp = host->SCpnt->SCp; in acornscsi_reconnect_finish()
1868 host->scsi.SCp.ptr, host->scsi.SCp.this_residual); in acornscsi_reconnect_finish()
1875 host->dma.transferred = host->scsi.SCp.scsi_xferred; in acornscsi_reconnect_finish()
1906 host->scsi.phase = PHASE_ABORTED; in acornscsi_abortcmd()
1909 msgqueue_flush(&host->scsi.msgs); in acornscsi_abortcmd()
1912 msgqueue_addmsg(&host->scsi.msgs, 2, ABORT_TAG, tag); in acornscsi_abortcmd()
1915 msgqueue_addmsg(&host->scsi.msgs, 1, ABORT); in acornscsi_abortcmd()
1941 print_sbic_status(asr, ssr, host->scsi.phase); in acornscsi_sbicintr()
1944 ADD_STATUS(8, ssr, host->scsi.phase, in_irq); in acornscsi_sbicintr()
1946 if (host->SCpnt && !host->scsi.disconnectable) in acornscsi_sbicintr()
1947 ADD_STATUS(host->SCpnt->device->id, ssr, host->scsi.phase, in_irq); in acornscsi_sbicintr()
1963 msgqueue_flush(&host->scsi.msgs); in acornscsi_sbicintr()
1971 switch (host->scsi.phase) { in acornscsi_sbicintr()
1976 host->scsi.phase = PHASE_CONNECTED; in acornscsi_sbicintr()
1977 msgqueue_flush(&host->scsi.msgs); in acornscsi_sbicintr()
1978 host->dma.transferred = host->scsi.SCp.scsi_xferred; in acornscsi_sbicintr()
1984 ADD_STATUS(8, ssr, host->scsi.phase, 1); in acornscsi_sbicintr()
1985 ADD_STATUS(host->SCpnt->device->id, ssr, host->scsi.phase, 1); in acornscsi_sbicintr()
1997 msgqueue_flush(&host->scsi.msgs); in acornscsi_sbicintr()
2021 host->scsi.phase = PHASE_STATUSIN; in acornscsi_sbicintr()
2027 host->scsi.phase = PHASE_MSGOUT; in acornscsi_sbicintr()
2061 host->scsi.phase = PHASE_STATUSIN; in acornscsi_sbicintr()
2086 if (host->scsi.SCp.sent_command != host->SCpnt->cmd_len) in acornscsi_sbicintr()
2091 host->scsi.phase = PHASE_DATAOUT; in acornscsi_sbicintr()
2096 if (host->scsi.SCp.sent_command != host->SCpnt->cmd_len) in acornscsi_sbicintr()
2101 host->scsi.phase = PHASE_DATAIN; in acornscsi_sbicintr()
2107 host->scsi.phase = PHASE_STATUSIN; in acornscsi_sbicintr()
2129 host->scsi.disconnectable = 1; in acornscsi_sbicintr()
2130 host->scsi.reconnected.tag = 0; in acornscsi_sbicintr()
2131 host->scsi.phase = PHASE_IDLE; in acornscsi_sbicintr()
2161 ADD_STATUS(host->SCpnt->device->id, ssr, host->scsi.phase, in_irq); in acornscsi_sbicintr()
2169 host->scsi.phase = PHASE_DATAOUT; in acornscsi_sbicintr()
2178 host->scsi.phase = PHASE_DATAIN; in acornscsi_sbicintr()
2190 host->scsi.phase = PHASE_STATUSIN; in acornscsi_sbicintr()
2225 host->scsi.SCp.scsi_xferred = scsi_bufflen(host->SCpnt) - in acornscsi_sbicintr()
2229 host->scsi.phase = PHASE_STATUSIN; in acornscsi_sbicintr()
2236 host->scsi.SCp.scsi_xferred = scsi_bufflen(host->SCpnt) - in acornscsi_sbicintr()
2246 host->scsi.SCp.scsi_xferred = scsi_bufflen(host->SCpnt) - in acornscsi_sbicintr()
2274 host->scsi.SCp.scsi_xferred = scsi_bufflen(host->SCpnt) - in acornscsi_sbicintr()
2279 host->scsi.phase = PHASE_STATUSIN; in acornscsi_sbicintr()
2286 host->scsi.SCp.scsi_xferred = scsi_bufflen(host->SCpnt) - in acornscsi_sbicintr()
2297 host->scsi.SCp.scsi_xferred = scsi_bufflen(host->SCpnt) - in acornscsi_sbicintr()
2386 clear_bit(host->scsi.reconnected.target * 8 + host->scsi.reconnected.lun, in acornscsi_sbicintr()
2388 host->scsi.phase = PHASE_IDLE; in acornscsi_sbicintr()
2512 if (host->scsi.phase == PHASE_IDLE) in acornscsi_queuecmd_lck()
2589 switch (host->scsi.phase) { in acornscsi_do_abort()
2599 if (host->scsi.disconnectable) { in acornscsi_do_abort()
2600 host->scsi.disconnectable = 0; in acornscsi_do_abort()
2660 print_sbic_status(asr, ssr, host->scsi.phase); in acornscsi_abort()
2742 print_sbic_status(asr, ssr, host->scsi.phase); in acornscsi_bus_reset()
2814 host->base + SBIC_REGIDX, host->scsi.irq); in acornscsi_show_info()
2817 host->base + DMAC_OFFSET, host->scsi.irq); in acornscsi_show_info()
2920 ashost->scsi.irq = host->irq; in acornscsi_probe()
2928 host->host_no, ashost->scsi.irq, ret); in acornscsi_probe()
2935 msgqueue_initialise(&ashost->scsi.msgs); in acornscsi_probe()
2948 msgqueue_free(&ashost->scsi.msgs); in acornscsi_probe()
2976 msgqueue_free(&ashost->scsi.msgs); in acornscsi_remove()