Home | History | Annotate | Download | only in vax

Lines Matching defs:tu_sc

75 } tu_sc;
129 bufq_alloc(&tu_sc.sc_bufq, "fcfs", 0);
168 if (tu_sc.sc_state != TU_IDLE)
171 tu_sc.sc_state = TU_RESET;
172 tu_sc.sc_step = 0;
175 if ((error = tsleep((void *)&tu_sc, (PZERO + 10)|PCATCH, "reset", 0)))
181 tu_sc.sc_state = TU_RUNNING;
192 while ((bp = bufq_get(tu_sc.sc_bufq)))
198 tu_sc.sc_state = TU_IDLE;
220 empty = (bufq_peek(tu_sc.sc_bufq) == NULL);
221 bufq_put(tu_sc.sc_bufq, bp);
230 struct rsp *rsp = (struct rsp *)tu_sc.sc_rsp;
233 bp = bufq_peek(tu_sc.sc_bufq);
239 tu_sc.sc_tpblk = bp->b_blkno;
240 tu_sc.sc_xbytes = 0;
241 tu_sc.sc_op = bp->b_flags & B_READ ? RSP_OP_READ : RSP_OP_WRITE;
242 tu_sc.sc_step = 0;
244 tu_sc.sc_wto = 0;
248 rsp->rsp_op = tu_sc.sc_op;
253 rsp->rsp_blk = tu_sc.sc_tpblk;
255 tu_sc.sc_state = TU_WORKING;
285 bp = bufq_peek(tu_sc.sc_bufq);
287 switch (tu_sc.sc_state) {
291 wakeup(&tu_sc);
297 tu_sc.sc_wto = 0;
306 buf[tu_sc.sc_xbytes++] = c;
312 tck = ctu_cksum((void *)&buf[tu_sc.sc_xbytes-128], 64);
318 printf("block %d\n", tu_sc.sc_xbytes/128-1);
321 *(int *)&bp->b_data[tu_sc.sc_xbytes+i],
322 *(int *)&bp->b_data[tu_sc.sc_xbytes+i+4],
323 *(int *)&bp->b_data[tu_sc.sc_xbytes+i+8],
324 *(int *)&bp->b_data[tu_sc.sc_xbytes+i+12]);
329 if (bp->b_bcount == tu_sc.sc_xbytes)
330 tu_sc.sc_state = TU_ENDPACKET;
347 tu_sc.sc_state, tu_sc.sc_xbytes, status);
352 tu_sc.sc_wto = 0;
376 printf("Writing byte %d\n", tu_sc.sc_xbytes);
384 mtpr(buf[tu_sc.sc_xbytes++], PR_CSTD);
386 tck = ctu_cksum((void *)&buf[tu_sc.sc_xbytes-128], 64);
393 if (tu_sc.sc_xbytes == bp->b_bcount)
394 tu_sc.sc_state = TU_ENDPACKET;
405 printf("bad rx state %d char %d\n", tu_sc.sc_state, status);
409 (void)bufq_get(tu_sc.sc_bufq);
418 tu_sc.sc_state, tu_sc.sc_xbytes, status);
422 tu_sc.sc_state = TU_IDLE;
426 bad: tu_sc.sc_state = TU_RESTART;
435 switch (tu_sc.sc_state) {
437 switch (tu_sc.sc_step) {
449 tu_sc.sc_step++;
453 if (tu_sc.sc_step == 14) {
454 if (tu_sc.sc_op == RSP_OP_READ)
455 tu_sc.sc_state = TU_READING;
457 tu_sc.sc_state = TU_WRITING;
459 mtpr(tu_sc.sc_rsp[tu_sc.sc_step++], PR_CSTD);
472 printf("bad tx state %d\n", tu_sc.sc_state);
502 if (tu_sc.sc_state == TU_WORKING) {
507 if (tu_sc.sc_wto++ > 5) {
511 tu_sc.sc_state = TU_RESTART;
515 if (tu_sc.sc_state == TU_READING || tu_sc.sc_state == TU_WRITING) {
520 if (tu_sc.sc_wto++ > 60) {
522 printf("Died in Positioning, wto %d\n", tu_sc.sc_wto);
524 tu_sc.sc_state = TU_RESTART;