Lines Matching refs:via
32 static volatile unsigned char __iomem *via; variable
108 out_8(&via[B], in_8(&via[B]) | TIP); in assert_TIP()
110 out_8(&via[B], in_8(&via[B]) & ~TIP); in assert_TIP()
117 out_8(&via[B], in_8(&via[B]) | TIP | TACK); in assert_TIP_and_TACK()
119 out_8(&via[B], in_8(&via[B]) & ~(TIP | TACK)); in assert_TIP_and_TACK()
126 out_8(&via[B], in_8(&via[B]) | TACK); in assert_TACK()
128 out_8(&via[B], in_8(&via[B]) & ~TACK); in assert_TACK()
133 out_8(&via[B], in_8(&via[B]) ^ TACK); in toggle_TACK()
140 out_8(&via[B], in_8(&via[B]) & ~TACK); in negate_TACK()
142 out_8(&via[B], in_8(&via[B]) | TACK); in negate_TACK()
149 out_8(&via[B], in_8(&via[B]) & ~(TIP | TACK)); in negate_TIP_and_TACK()
151 out_8(&via[B], in_8(&via[B]) | TIP | TACK); in negate_TIP_and_TACK()
213 via = via1; in find_via_cuda()
220 via = NULL; in find_via_cuda()
255 via = ioremap(taddr, 0x2000); in find_via_cuda()
256 if (via == NULL) { in find_via_cuda()
267 via = NULL; in find_via_cuda()
274 out_8(&via[IFR], 0x7f); /* clear interrupts by writing 1s */ in find_via_cuda()
275 out_8(&via[IER], IER_SET|SR_INT); /* enable interrupt from SR */ in find_via_cuda()
293 if (via == NULL) in via_cuda_start()
332 if (via == NULL) in cuda_probe()
340 if (TREQ_asserted(in_8(&via[B]))) { in sync_egret()
346 (void)in_8(&via[SR]); in sync_egret()
348 if (!TREQ_asserted(in_8(&via[B]))) in sync_egret()
352 } else if (in_8(&via[B]) & TIP) { in sync_egret()
360 if (in_8(&via[IFR]) & SR_INT) in sync_egret()
361 (void)in_8(&via[SR]); in sync_egret()
381 out_8(&via[IER], 0x7f); /* disable interrupts from VIA */ in cuda_init_via()
382 (void)in_8(&via[IER]); in cuda_init_via()
384 out_8(&via[IER], SR_INT); /* disable SR interrupt from VIA */ in cuda_init_via()
387 out_8(&via[DIRB], (in_8(&via[DIRB]) | TACK | TIP) & ~TREQ); /* TACK & TIP out */ in cuda_init_via()
388 out_8(&via[ACR], (in_8(&via[ACR]) & ~SR_CTRL) | SR_EXT); /* SR data in */ in cuda_init_via()
389 (void)in_8(&via[SR]); /* clear any left-over data */ in cuda_init_via()
398 (void)in_8(&via[SR]); in cuda_init_via()
399 out_8(&via[IFR], SR_INT); in cuda_init_via()
405 WAIT_FOR(TREQ_asserted(in_8(&via[B])), "CUDA response to sync"); in cuda_init_via()
408 WAIT_FOR(in_8(&via[IFR]) & SR_INT, "CUDA response to sync (2)"); in cuda_init_via()
409 (void)in_8(&via[SR]); in cuda_init_via()
410 out_8(&via[IFR], SR_INT); in cuda_init_via()
416 WAIT_FOR(!TREQ_asserted(in_8(&via[B])), "CUDA response to sync (3)"); in cuda_init_via()
417 WAIT_FOR(in_8(&via[IFR]) & SR_INT, "CUDA response to sync (4)"); in cuda_init_via()
418 (void)in_8(&via[SR]); in cuda_init_via()
419 out_8(&via[IFR], SR_INT); in cuda_init_via()
431 if ((via == NULL) || !cuda_fully_inited) { in cuda_send_request()
456 if ((via == NULL) || !cuda_fully_inited) in cuda_adb_autopoll()
471 if ((via == NULL) || !cuda_fully_inited) in cuda_reset_adb_bus()
489 if (via == NULL) { in cuda_request()
541 if (TREQ_asserted(in_8(&via[B]))) in cuda_start()
545 out_8(&via[ACR], in_8(&via[ACR]) | SR_OUT); in cuda_start()
546 out_8(&via[SR], current_req->data[data_index++]); in cuda_start()
586 if ((in_8(&via[IFR]) & SR_INT) == 0) { in cuda_interrupt()
590 out_8(&via[IFR], SR_INT); in cuda_interrupt()
594 status = in_8(&via[B]) & (TIP | TACK | TREQ); in cuda_interrupt()
599 (void)in_8(&via[SR]); in cuda_interrupt()
609 (void)in_8(&via[SR]); in cuda_interrupt()
619 out_8(&via[ACR], in_8(&via[ACR]) & ~SR_OUT); in cuda_interrupt()
620 (void)in_8(&via[SR]); in cuda_interrupt()
627 out_8(&via[SR], current_req->data[data_index++]); in cuda_interrupt()
638 out_8(&via[ACR], in_8(&via[ACR]) & ~SR_OUT); in cuda_interrupt()
639 (void)in_8(&via[SR]); in cuda_interrupt()
652 out_8(&via[SR], req->data[data_index++]); in cuda_interrupt()
663 (void)in_8(&via[SR]); in cuda_interrupt()
665 *reply_ptr++ = in_8(&via[SR]); in cuda_interrupt()
683 (void)in_8(&via[SR]); in cuda_interrupt()
716 if (cuda_state == idle && TREQ_asserted(in_8(&via[B]))) { in cuda_interrupt()