summaryrefslogtreecommitdiffstats
path: root/sys/dev/ppbus/ppi.c
diff options
context:
space:
mode:
authornsouch <nsouch@FreeBSD.org>1999-01-30 15:35:39 +0000
committernsouch <nsouch@FreeBSD.org>1999-01-30 15:35:39 +0000
commit10ef2b8422913dafa8c05f64b5d0c07a3d2ad9c0 (patch)
tree40df97b8849853b739d2d4fdbd234d29a62ee63a /sys/dev/ppbus/ppi.c
parentc9bc4bf0090c71bd80805b53e37129f6052a7407 (diff)
downloadFreeBSD-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.c17
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;
OpenPOWER on IntegriCloud