BSD 4_4 release
[unix-history] / usr / src / sys / vax / vax / flp.c
index a65afa5..d10a8e3 100644 (file)
@@ -1,18 +1,22 @@
-/*     flp.c   4.8     82/10/13        */
+/*
+ * Copyright (c) 1982, 1986 Regents of the University of California.
+ * All rights reserved.  The Berkeley software License Agreement
+ * specifies the terms and conditions for redistribution.
+ *
+ *     @(#)flp.c       7.4 (Berkeley) 12/16/90
+ */
 
 #if VAX780
 
 #if VAX780
-#include "../h/param.h"
-#include "../h/systm.h"
-#include "../h/conf.h"
-#include "../h/dir.h"
-#include "../h/user.h"
-#include "../h/buf.h"
-#include "../h/uio.h"
+#include "sys/param.h"
+#include "sys/systm.h"
+#include "sys/conf.h"
+#include "sys/user.h"
+#include "sys/buf.h"
 
 
-#include "../vax/cons.h"
-#include "../vax/cpu.h"
-#include "../vax/flp.h"
-#include "../vax/mtpr.h"
+#include "cons.h"
+#include "../include/cpu.h"
+#include "flp.h"
+#include "../include/mtpr.h"
 
 struct {
        short   fl_state;               /* open and busy flags */
 
 struct {
        short   fl_state;               /* open and busy flags */
@@ -29,19 +33,14 @@ flopen(dev, flag)
 {
        struct buf *geteblk();
 
 {
        struct buf *geteblk();
 
-#if VAX750
-       if (cpu != VAX_780) {
-               u.u_error = ENXIO;
-               return;
-       }
-#endif
-       if (fltab.fl_state != 0) {
-               u.u_error = ENXIO;
-               return;
-       }
+       if (cpu != VAX_780)
+               return (ENXIO);
+       if (fltab.fl_state != 0)
+               return (ENXIO);
        fltab.fl_state = FL_OPEN;
        fltab.fl_buf = geteblk(512);
        fltab.fl_active = FL_IDLE;
        fltab.fl_state = FL_OPEN;
        fltab.fl_buf = geteblk(512);
        fltab.fl_active = FL_IDLE;
+       return (0);
 }
 
 /*ARGSUSED*/
 }
 
 /*ARGSUSED*/
@@ -54,9 +53,11 @@ flclose(dev, flag)
        fltab.fl_state = 0;
 }
 
        fltab.fl_state = 0;
 }
 
-floperation(rw, uio)
-       enum uio_rw rw;
+/*ARGSUSED*/
+flrw(dev, uio, flag)
+       dev_t dev;
        struct uio *uio;
        struct uio *uio;
+       int flag;
 {
        register struct buf *bp;
        register int i;
 {
        register struct buf *bp;
        register int i;
@@ -84,17 +85,15 @@ floperation(rw, uio)
        while ((i = imin(RXBYSEC, uio->uio_resid)) > 0) {
                bp->b_blkno = uio->uio_offset>>7;
                if (bp->b_blkno >= MAXSEC || (uio->uio_offset & 0177) != 0) {
        while ((i = imin(RXBYSEC, uio->uio_resid)) > 0) {
                bp->b_blkno = uio->uio_offset>>7;
                if (bp->b_blkno >= MAXSEC || (uio->uio_offset & 0177) != 0) {
-                       /* block number out of range */
-                       /* or offset in middle of block */
-                       return (ENXIO);
-                       break;  
+                       error = ENXIO;
+                       break;
                }
                }
-               if (rw == UIO_WRITE) {
-                       error = uiomove(bp->b_un.b_addr, i, UIO_WRITE, uio);
+               if (uio->uio_rw == UIO_WRITE) {
+                       error = uiomove(bp->b_un.b_addr, i, uio);
                        if (error)
                                break;
                }
                        if (error)
                                break;
                }
-               bp->b_flags = rw == UIO_WRITE ? B_WRITE : B_READ;
+               bp->b_flags = uio->uio_rw == UIO_WRITE ? B_WRITE : B_READ;
                (void) spl4(); 
                flstart();
                while ((bp->b_flags & B_DONE) == 0)
                (void) spl4(); 
                flstart();
                while ((bp->b_flags & B_DONE) == 0)
@@ -104,8 +103,8 @@ floperation(rw, uio)
                        error = EIO;
                        break;
                }
                        error = EIO;
                        break;
                }
-               if (rw == UIO_READ) {
-                       error = uiomove(bp->b_un.b_addr, i, UIO_READ, uio);
+               if (uio->uio_rw == UIO_READ) {
+                       error = uiomove(bp->b_un.b_addr, i, uio);
                        if (error)
                                break;
                }
                        if (error)
                                break;
                }
@@ -115,24 +114,6 @@ floperation(rw, uio)
        return (error);
 }
 
        return (error);
 }
 
-/*ARGSUSED*/
-flread(dev, uio)
-       dev_t dev;
-       struct uio *uio;
-{
-
-       return (floperation(UIO_READ, uio));
-}
-
-/*ARGSUSED*/
-flwrite(dev, uio)
-       dev_t dev;
-       struct uio *uio;
-{
-
-       return (floperation(UIO_WRITE, uio));
-}
-
 flstart()
 {
        register struct buf *bp;
 flstart()
 {
        register struct buf *bp;