X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=drivers%2Fmacintosh%2Fvia-cuda.c;h=57fb20dcb9dd7abbc651771822cde81bdab00b36;hb=97ced1aac07e7b5348a560512b287af69f863917;hp=e3763cb4184ba0ce1a5f535d1edc39d188b6bfc0;hpb=ac39452e942af6a212e8f89e8a36b71354323845;p=linux.git diff --git a/drivers/macintosh/via-cuda.c b/drivers/macintosh/via-cuda.c index e3763cb4184b..57fb20dcb9dd 100644 --- a/drivers/macintosh/via-cuda.c +++ b/drivers/macintosh/via-cuda.c @@ -446,12 +446,13 @@ cuda_start(void) /* assert cuda_state == idle */ if (current_req == NULL) return; + data_index = 0; if (TREQ_asserted(in_8(&via[B]))) return; /* a byte is coming in from the CUDA */ /* set the shift register to shift out and send a byte */ out_8(&via[ACR], in_8(&via[ACR]) | SR_OUT); - out_8(&via[SR], current_req->data[0]); + out_8(&via[SR], current_req->data[data_index++]); assert_TIP(); cuda_state = sent_first_byte; } @@ -524,9 +525,8 @@ cuda_interrupt(int irq, void *arg) negate_TIP_and_TACK(); cuda_state = idle; } else { - out_8(&via[SR], current_req->data[1]); + out_8(&via[SR], current_req->data[data_index++]); toggle_TACK(); - data_index = 2; cuda_state = sending; } break;