diff options
author | nsouch <nsouch@FreeBSD.org> | 1999-01-30 15:35:39 +0000 |
---|---|---|
committer | nsouch <nsouch@FreeBSD.org> | 1999-01-30 15:35:39 +0000 |
commit | 10ef2b8422913dafa8c05f64b5d0c07a3d2ad9c0 (patch) | |
tree | 40df97b8849853b739d2d4fdbd234d29a62ee63a /sys/dev/ppbus/ppi.c | |
parent | c9bc4bf0090c71bd80805b53e37129f6052a7407 (diff) | |
download | FreeBSD-src-10ef2b8422913dafa8c05f64b5d0c07a3d2ad9c0.zip FreeBSD-src-10ef2b8422913dafa8c05f64b5d0c07a3d2ad9c0.tar.gz |
Distinguish EPP address/data register. Add EPP address register access to ppi.
Change microseq offsets. Previously, offsets of the program counter where
added to the index of the current microinstruction. Make them rely on the
index of the next executed microinstruction.
Suggested by: Luigi Rizzo <luigi@labinfo.iet.unipi.it>
Diffstat (limited to 'sys/dev/ppbus/ppi.c')
-rw-r--r-- | sys/dev/ppbus/ppi.c | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/sys/dev/ppbus/ppi.c b/sys/dev/ppbus/ppi.c index 95d7644..7b04ce4 100644 --- a/sys/dev/ppbus/ppi.c +++ b/sys/dev/ppbus/ppi.c @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: ppi.c,v 1.9 1999/01/10 12:04:55 nsouch Exp $ + * $Id: ppi.c,v 1.10 1999/01/27 21:49:53 dillon Exp $ * */ #include "ppi.h" @@ -487,8 +487,8 @@ ppiioctl(dev_t dev, u_long cmd, caddr_t data, int flags, struct proc *p) case PPIGCTRL: /* get control bits */ *val = ppb_rctr(&ppi->ppi_dev); break; - case PPIGEPP: /* get EPP bits */ - *val = ppb_repp(&ppi->ppi_dev); + case PPIGEPPD: /* get EPP data bits */ + *val = ppb_repp_D(&ppi->ppi_dev); break; case PPIGECR: /* get ECP bits */ *val = ppb_recr(&ppi->ppi_dev); @@ -506,8 +506,8 @@ ppiioctl(dev_t dev, u_long cmd, caddr_t data, int flags, struct proc *p) case PPISCTRL: /* set control bits */ ppb_wctr(&ppi->ppi_dev, *val); break; - case PPISEPP: /* set EPP bits */ - ppb_wepp(&ppi->ppi_dev, *val); + case PPISEPPD: /* set EPP data bits */ + ppb_wepp_D(&ppi->ppi_dev, *val); break; case PPISECR: /* set ECP bits */ ppb_wecr(&ppi->ppi_dev, *val); @@ -515,6 +515,13 @@ ppiioctl(dev_t dev, u_long cmd, caddr_t data, int flags, struct proc *p) case PPISFIFO: /* write FIFO */ ppb_wfifo(&ppi->ppi_dev, *val); break; + + case PPIGEPPA: /* get EPP address bits */ + *val = ppb_repp_A(&ppi->ppi_dev); + break; + case PPISEPPA: /* set EPP address bits */ + ppb_wepp_A(&ppi->ppi_dev, *val); + break; default: error = ENOTTY; break; |