summaryrefslogtreecommitdiff
path: root/sys/dev/sun
diff options
context:
space:
mode:
authorgwr <gwr@NetBSD.org>1996-01-30 22:34:52 +0000
committergwr <gwr@NetBSD.org>1996-01-30 22:34:52 +0000
commitf2e57c6dc808c313abb0ca01faec5df913f6253f (patch)
tree4ea6e8b31549733f23bed935c3f4d05b93381812 /sys/dev/sun
parent99686e00591f6e8010d12c01588d0ed8a0ec9701 (diff)
Eliminate remaining direct references to the z8530 chip
to allow the MD access functions to do delays, etc.
Diffstat (limited to 'sys/dev/sun')
-rw-r--r--sys/dev/sun/kbd.c25
-rw-r--r--sys/dev/sun/ms.c22
2 files changed, 17 insertions, 30 deletions
diff --git a/sys/dev/sun/kbd.c b/sys/dev/sun/kbd.c
index 999663a6668..b32ac07d320 100644
--- a/sys/dev/sun/kbd.c
+++ b/sys/dev/sun/kbd.c
@@ -1,4 +1,4 @@
-/* $NetBSD: kbd.c,v 1.1.1.1 1996/01/24 01:15:35 gwr Exp $ */
+/* $NetBSD: kbd.c,v 1.2 1996/01/30 22:35:16 gwr Exp $ */
/*
* Copyright (c) 1992, 1993
@@ -251,7 +251,7 @@ kbd_attach(parent, self, aux)
/* Not the console; may need reset. */
reset = (channel == 0) ?
ZSWR9_A_RESET : ZSWR9_B_RESET;
- ZS_WRITE(cs, 9, reset);
+ zs_write_reg(cs, 9, reset);
}
/* These are OK as set by zscc: WR3, WR4, WR5 */
cs->cs_preg[5] |= ZSWR5_DTR | ZSWR5_RTS;
@@ -875,16 +875,14 @@ kbd_rxint(cs)
put = k->k_rbput;
/* Read the input data ASAP. */
- c = *(cs->cs_reg_data);
- ZS_DELAY();
+ c = zs_read_data(cs);
/* Save the status register too. */
- rr1 = ZS_READ(cs, 1);
+ rr1 = zs_read_reg(cs, 1);
if (rr1 & (ZSRR1_FE | ZSRR1_DO | ZSRR1_PE)) {
/* Clear the receive error. */
- *(cs->cs_reg_csr) = ZSWR0_RESET_ERRORS;
- ZS_DELAY();
+ zs_write_csr(cs, ZSWR0_RESET_ERRORS);
}
/*
@@ -934,8 +932,7 @@ kbd_txint(cs)
k = cs->cs_private;
- *(cs->cs_reg_csr) = ZSWR0_RESET_TXINT;
- ZS_DELAY();
+ zs_write_csr(cs, ZSWR0_RESET_TXINT);
k->k_intr_flags |= INTR_TX_EMPTY;
/* Ask for softint() call. */
@@ -953,11 +950,8 @@ kbd_stint(cs)
k = cs->cs_private;
- rr0 = *(cs->cs_reg_csr);
- ZS_DELAY();
-
- *(cs->cs_reg_csr) = ZSWR0_RESET_STATUS;
- ZS_DELAY();
+ rr0 = zs_read_csr(cs);
+ zs_write_csr(cs, ZSWR0_RESET_STATUS);
#if 0
if (rr0 & ZSRR0_BREAK) {
@@ -1267,8 +1261,7 @@ kbd_start_tx(k)
/* Need splzs to avoid interruption of the delay. */
(void) splzs();
- *(cs->cs_reg_data) = c;
- ZS_DELAY();
+ zs_write_data(cs, c);
out:
splx(s);
diff --git a/sys/dev/sun/ms.c b/sys/dev/sun/ms.c
index 275481c76f7..c193db6a435 100644
--- a/sys/dev/sun/ms.c
+++ b/sys/dev/sun/ms.c
@@ -1,4 +1,4 @@
-/* $NetBSD: ms.c,v 1.1.1.1 1996/01/24 01:15:35 gwr Exp $ */
+/* $NetBSD: ms.c,v 1.2 1996/01/30 22:35:19 gwr Exp $ */
/*
* Copyright (c) 1992, 1993
@@ -196,7 +196,7 @@ ms_attach(parent, self, aux)
/* May need reset... */
reset = (channel == 0) ?
ZSWR9_A_RESET : ZSWR9_B_RESET;
- ZS_WRITE(cs, 9, reset);
+ zs_write_reg(cs, 9, reset);
/* These are OK as set by zscc: WR3, WR4, WR5 */
cs->cs_preg[5] |= ZSWR5_DTR | ZSWR5_RTS;
cs->cs_preg[12] = tconst;
@@ -487,16 +487,14 @@ ms_rxint(cs)
put = ms->ms_rbput;
/* Read the input data ASAP. */
- c = *(cs->cs_reg_data);
- ZS_DELAY();
+ c = zs_read_data(cs);
/* Save the status register too. */
- rr1 = ZS_READ(cs, 1);
+ rr1 = zs_read_reg(cs, 1);
if (rr1 & (ZSRR1_FE | ZSRR1_DO | ZSRR1_PE)) {
/* Clear the receive error. */
- *(cs->cs_reg_csr) = ZSWR0_RESET_ERRORS;
- ZS_DELAY();
+ zs_write_csr(cs, ZSWR0_RESET_ERRORS);
}
ms->ms_rbuf[put] = (c << 8) | rr1;
@@ -528,8 +526,7 @@ ms_txint(cs)
ms = cs->cs_private;
- *(cs->cs_reg_csr) = ZSWR0_RESET_TXINT;
- ZS_DELAY();
+ zs_write_csr(cs, ZSWR0_RESET_TXINT);
ms->ms_intr_flags |= INTR_TX_EMPTY;
/* Ask for softint() call. */
@@ -547,11 +544,8 @@ ms_stint(cs)
ms = cs->cs_private;
- rr0 = *(cs->cs_reg_csr);
- ZS_DELAY();
-
- *(cs->cs_reg_csr) = ZSWR0_RESET_STATUS;
- ZS_DELAY();
+ rr0 = zs_read_csr(cs);
+ zs_write_csr(cs, ZSWR0_RESET_STATUS);
ms->ms_intr_flags |= INTR_ST_CHECK;
/* Ask for softint() call. */