SCCS-vsn: sys/pmax/dev/asc.c 7.10
*
* %sccs.include.redist.c%
*
*
* %sccs.include.redist.c%
*
- * @(#)asc.c 7.9 (Berkeley) %G%
+ * @(#)asc.c 7.10 (Berkeley) %G%
asc_last_dma_in, ASC_CMD_I_COMPLETE,
&asc_scripts[SCRIPT_GET_STATUS]},
asc_last_dma_in, ASC_CMD_I_COMPLETE,
&asc_scripts[SCRIPT_GET_STATUS]},
- /* continue data in after a chuck is finished */
+ /* continue data in after a chunk is finished */
{SCRIPT_MATCH(ASC_INT_BS, ASC_PHASE_DATAI), /* 2 */
asc_dma_in, ASC_CMD_XFER_INFO | ASC_CMD_DMA,
&asc_scripts[SCRIPT_DATA_IN + 1]},
{SCRIPT_MATCH(ASC_INT_BS, ASC_PHASE_DATAI), /* 2 */
asc_dma_in, ASC_CMD_XFER_INFO | ASC_CMD_DMA,
&asc_scripts[SCRIPT_DATA_IN + 1]},
asc_last_dma_out, ASC_CMD_I_COMPLETE,
&asc_scripts[SCRIPT_GET_STATUS]},
asc_last_dma_out, ASC_CMD_I_COMPLETE,
&asc_scripts[SCRIPT_GET_STATUS]},
- /* continue data out after a chuck is finished */
+ /* continue data out after a chunk is finished */
{SCRIPT_MATCH(ASC_INT_BS, ASC_PHASE_DATAO), /* 5 */
asc_dma_out, ASC_CMD_XFER_INFO | ASC_CMD_DMA,
&asc_scripts[SCRIPT_DATA_OUT + 1]},
{SCRIPT_MATCH(ASC_INT_BS, ASC_PHASE_DATAO), /* 5 */
asc_dma_out, ASC_CMD_XFER_INFO | ASC_CMD_DMA,
&asc_scripts[SCRIPT_DATA_OUT + 1]},
state->dmalen, len, fifo); /* XXX */
regs->asc_cmd = ASC_CMD_FLUSH;
readback(regs->asc_cmd);
state->dmalen, len, fifo); /* XXX */
regs->asc_cmd = ASC_CMD_FLUSH;
readback(regs->asc_cmd);
- MachEmptyWriteBuffer();
/* device must be trying to send more than we expect */
regs->asc_cmd = ASC_CMD_FLUSH;
readback(regs->asc_cmd);
/* device must be trying to send more than we expect */
regs->asc_cmd = ASC_CMD_FLUSH;
readback(regs->asc_cmd);
- MachEmptyWriteBuffer();
}
state->flags &= ~DMA_IN_PROGRESS;
len = state->dmalen - len;
}
state->flags &= ~DMA_IN_PROGRESS;
len = state->dmalen - len;
len += fifo;
regs->asc_cmd = ASC_CMD_FLUSH;
readback(regs->asc_cmd);
len += fifo;
regs->asc_cmd = ASC_CMD_FLUSH;
readback(regs->asc_cmd);
- MachEmptyWriteBuffer();
}
state->flags &= ~DMA_IN_PROGRESS;
len = state->dmalen - len;
}
state->flags &= ~DMA_IN_PROGRESS;
len = state->dmalen - len;
if (!(state->flags & TRY_SYNC)) {
regs->asc_cmd = ASC_CMD_SET_ATN;
readback(regs->asc_cmd);
if (!(state->flags & TRY_SYNC)) {
regs->asc_cmd = ASC_CMD_SET_ATN;
readback(regs->asc_cmd);
- MachEmptyWriteBuffer();
if (state->sync_period < asc->min_period)
state->sync_period =
if (state->sync_period < asc->min_period)
state->sync_period =
state->msg_out = SCSI_MESSAGE_REJECT;
regs->asc_cmd = ASC_CMD_SET_ATN;
readback(regs->asc_cmd);
state->msg_out = SCSI_MESSAGE_REJECT;
regs->asc_cmd = ASC_CMD_SET_ATN;
readback(regs->asc_cmd);
- MachEmptyWriteBuffer();
printf("asc: %s: cmd %x bn %d cnt %d\n", str, asc_debug_cmd,
asc_debug_bn, asc_debug_sz);
printf("asc: %s: cmd %x bn %d cnt %d\n", str, asc_debug_cmd,
asc_debug_bn, asc_debug_sz);
- lp = asc_logp + 1;
- if (lp > &asc_log[NLOG])
- lp = asc_log;
- while (lp != asc_logp) {
status = lp->status;
printf("asc%d tgt %d status %x ss %x ir %x cond %d:%x msg %x\n",
status >> 24,
status = lp->status;
printf("asc%d tgt %d status %x ss %x ir %x cond %d:%x msg %x\n",
status >> 24,
lp->msg);
if (++lp >= &asc_log[NLOG])
lp = asc_log;
lp->msg);
if (++lp >= &asc_log[NLOG])
lp = asc_log;
+ } while (lp != asc_logp);