M port/portdat.h => port/portdat.h +20 -0
@@ 35,6 35,7 @@ typedef struct Schedq Schedq;
typedef struct Segment Segment;
typedef struct Session Session;
typedef struct Talarm Talarm;
+typedef struct Target Target;
typedef struct Waitq Waitq;
typedef int Devgen(Chan*, Dirtab*, int, int, Dir*);
@@ 639,6 640,25 @@ enum
AUTHLEN = 8,
};
+/* Things scsi */
+enum
+{
+ STharderr =-1, /* Command status error returns */
+ STok = 0,
+ STcheck = 2,
+ STcondmet = 4,
+ STbusy = 8,
+ STintok = 16,
+ STconflict = 18,
+ STintcondmet = 20,
+ STterminated = 22,
+ STresconf = 24,
+ STqfull = 28,
+
+ SCSIread = 0,
+ SCSIwrite,
+};
+
/*
* mouse types
*/
M port/portfns.h => port/portfns.h +2 -0
@@ 213,6 213,8 @@ void sched(void);
void schedinit(void);
int screenbits(void);
void screenupdate(void);
+int scsiexec(Target*, int, uchar*, int, void*, int);
+int scsiinv(int, int, Target**, uchar**, int*, int*);
long seconds(void);
ulong segattach(Proc*, ulong, char *, ulong, ulong);
void segpage(Segment*, Page*);