summaryrefslogtreecommitdiff
path: root/emu/port/dat.h
diff options
context:
space:
mode:
authorCharles.Forsyth <devnull@localhost>2009-03-25 16:37:32 +0000
committerCharles.Forsyth <devnull@localhost>2009-03-25 16:37:32 +0000
commite0a2b8d82a5521d9391ca8c6f055777954c76c2f (patch)
treebed98eebad567e161db651e8a173f1a819169292 /emu/port/dat.h
parentd8150d92150b08ade63d7cd8b666cb26551110ff (diff)
x20090315-1636
Diffstat (limited to 'emu/port/dat.h')
-rw-r--r--emu/port/dat.h18
1 files changed, 9 insertions, 9 deletions
diff --git a/emu/port/dat.h b/emu/port/dat.h
index b245b61c..90df4b87 100644
--- a/emu/port/dat.h
+++ b/emu/port/dat.h
@@ -108,8 +108,8 @@ struct Chan
Chan* next; /* allocation */
Chan* link;
vlong offset; /* in file */
- ushort type;
- ulong dev;
+ Dev* dev;
+ uint devno;
ushort mode; /* read/write */
ushort flag;
Qid qid;
@@ -142,7 +142,9 @@ struct Dev
int dc;
char* name;
+ void (*reset)(void);
void (*init)(void);
+ void (*shutdown)(void);
Chan* (*attach)(char*);
Walkqid* (*walk)(Chan*, Chan*, char**, int);
int (*stat)(Chan*, uchar*, int);
@@ -150,18 +152,16 @@ struct Dev
void (*create)(Chan*, char*, int, ulong);
void (*close)(Chan*);
long (*read)(Chan*, void*, long, vlong);
- Block* (*bread)(Chan*, long, ulong);
+ Block* (*bread)(Chan*, long, vlong);
long (*write)(Chan*, void*, long, vlong);
- long (*bwrite)(Chan*, Block*, ulong);
+ long (*bwrite)(Chan*, Block*, vlong);
void (*remove)(Chan*);
int (*wstat)(Chan*, uchar*, int);
};
enum
{
- BINTR = (1<<0),
- BFREE = (1<<1),
- BMORE = (1<<2) /* continued in next block */
+ BINTR = (1<<0)
};
struct Block
@@ -333,8 +333,8 @@ struct Skeyset
struct Uqid
{
Ref r;
- int type;
- int dev;
+ int dc;
+ int devno;
vlong oldpath;
vlong newpath;
Uqid* next;