| plan 9 kernel history: overview | file list | diff list |
1997/0327/pc/etherif.h (diff list | history)
| 1993/1113/sys/src/9/pc/etherif.h:22,27 – 1993/1116/sys/src/9/pc/etherif.h:22,39 (short | long) | ||
|
Add Dp8390.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1113 | Netif; }; | |
| 1993/1116 | typedef struct { uchar bit16; /* true if a 16 bit interface */ uchar ram; /* true if card has shared memory */ ulong dp8390; /* I/O address of 8390 */ ulong data; /* I/O data port if no shared memory */ uchar nxtpkt; /* software bndry */ uchar tstart; /* 8390 ring addresses */ uchar pstart; uchar pstop; } Dp8390; | |
| 1993/1113 | #define NEXT(x, l) (((x)+1)%(l)) #define HOWMANY(x, y) (((x)+((y)-1))/(y)) #define ROUNDUP(x, y) (HOWMANY((x), (y))*(y)) | |
| 1993/1116/sys/src/9/pc/etherif.h:28,38 – 1993/1118/sys/src/9/pc/etherif.h:28,46 (short | long) | ||
|
Add dp8390 functions and Dp8390.busy.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1116 | ulong dp8390; /* I/O address of 8390 */ ulong data; /* I/O data port if no shared memory */ | |
| 1993/1118 | uchar nxtpkt; /* receive: software bndry */ uchar busy; /* transmit: busy */ | |
| 1993/1116 | uchar tstart; /* 8390 ring addresses */ uchar pstart; uchar pstop; } Dp8390; | |
| 1993/1118 | #define Dp8390BufSz 256 extern int dp8390reset(Ether*); extern void dp8390getea(Ether*); extern void dp8390setea(Ether*); | |
| 1993/1116 | ||
| 1993/1113 | #define NEXT(x, l) (((x)+1)%(l)) #define HOWMANY(x, y) (((x)+((y)-1))/(y)) | |
| 1993/1118/sys/src/9/pc/etherif.h:17,23 – 1993/1119/sys/src/9/pc/etherif.h:17,23 (short | long) | ||
|
Remove Dp8390.busy.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1113 | QLock tlock; /* lock for grabbing transmitter queue */ Rendez tr; /* wait here for free xmit buffer */ | |
| 1993/1119 | long tlen; /* length of data in tpkt */ | |
| 1993/1113 | Netif; }; | |
| 1993/1118/sys/src/9/pc/etherif.h:30,36 – 1993/1119/sys/src/9/pc/etherif.h:30,35 | ||
| 1993/1116 | ulong data; /* I/O data port if no shared memory */ | |
| 1993/1118 | uchar nxtpkt; /* receive: software bndry */ | |
| 1993/1116 | uchar tstart; /* 8390 ring addresses */ uchar pstart; uchar pstop; | |
| 1993/1119/sys/src/9/pc/etherif.h:9,15 – 1993/1124/sys/src/9/pc/etherif.h:9,15 (short | long) | ||
|
Change interrupt prototype.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1113 | void (*attach)(Ether*); /* filled in by reset routine */ long (*write)(Ether*, void*, long); | |
| 1993/1124 | void (*interrupt)(Ureg*, void*); | |
| 1993/1113 | void *private; Etherpkt tpkt; /* transmit buffer */ | |
| 1993/1124/sys/src/9/pc/etherif.h:40,45 – 1994/0128/sys/src/9/pc/etherif.h:40,47 (short | long) | ||
|
Add dp8390 functions.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1118 | extern int dp8390reset(Ether*); extern void dp8390getea(Ether*); extern void dp8390setea(Ether*); | |
| 1994/0128 | extern void *dp8390read(Dp8390*, void*, ulong, ulong); extern void *dp8390write(Dp8390*, ulong, void*, ulong); | |
| 1993/1116 | ||
| 1993/1113 | #define NEXT(x, l) (((x)+1)%(l)) #define HOWMANY(x, y) (((x)+((y)-1))/(y)) | |
| 1994/0128/sys/src/9/pc/etherif.h:38,47 – 1994/0130/sys/src/9/pc/etherif.h:38,47 (short | long) | ||
|
Format edit.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1118 | #define Dp8390BufSz 256 extern int dp8390reset(Ether*); | |
| 1994/0128 | extern void *dp8390read(Dp8390*, void*, ulong, ulong); extern void *dp8390write(Dp8390*, ulong, void*, ulong); | |
| 1994/0130 | extern void dp8390getea(Ether*); extern void dp8390setea(Ether*); | |
| 1993/1116 | ||
| 1993/1113 | #define NEXT(x, l) (((x)+1)%(l)) #define HOWMANY(x, y) (((x)+((y)-1))/(y)) | |
| 1994/0130/sys/src/9/pc/etherif.h:22,27 – 1994/0202/sys/src/9/pc/etherif.h:22,35 (short | long) | ||
|
Format edit. Comment edit. Add etherrloop.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1113 | Netif; }; | |
| 1994/0202 | extern void etherrloop(Ether*, Etherpkt*, long); extern void addethercard(char*, int(*)(Ether*)); /* * Stuff for the boards using the National Semiconductor DP8390 * and SMC 83C90 Network Interface Controller. * Common code is in ether8390.c. */ | |
| 1993/1116 | typedef struct { uchar bit16; /* true if a 16 bit interface */ uchar ram; /* true if card has shared memory */ | |
| 1994/0130/sys/src/9/pc/etherif.h:46,50 – 1994/0202/sys/src/9/pc/etherif.h:54,56 | ||
| 1993/1113 | #define NEXT(x, l) (((x)+1)%(l)) #define HOWMANY(x, y) (((x)+((y)-1))/(y)) #define ROUNDUP(x, y) (HOWMANY((x), (y))*(y)) | |
| 1994/0202/sys/src/9/pc/etherif.h:22,28 – 1994/0702/sys/src/9/pc/etherif.h:22,28 (short | long) | ||
|
Add parameter toetherrloop.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1113 | Netif; }; | |
| 1994/0202 |
| |
| 1994/0702 | extern void etherrloop(Ether*, Etherpkt*, long, int); | |
| 1994/0202 | extern void addethercard(char*, int(*)(Ether*)); /* | |
| 1994/0702/sys/src/9/pc/etherif.h:1,5 – 1995/0129/sys/src/9/pc/etherif.h:1,5 (short | long) | ||
|
Increase MaxEther.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1113 | enum { | |
| 1995/0129 | MaxEther = 8, | |
| 1993/1113 | Ntypes = 8, }; | |
| 1995/0129/sys/src/9/pc/etherif.h:6,16 – 1995/0721/sys/src/9/pc/etherif.h:6,17 (short | long) | ||
|
Rename Ether.private to Ether.ctlr. Remove parameter from etherrloop.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1113 | typedef struct Ether Ether; struct Ether { ISAConf; /* hardware info */ | |
| 1995/0721 | int ctlrno; | |
| 1993/1113 | void (*attach)(Ether*); /* filled in by reset routine */ long (*write)(Ether*, void*, long); | |
| 1993/1124 | void (*interrupt)(Ureg*, void*); | |
| 1993/1113 |
| |
| 1995/0721 | void *ctlr; | |
| 1993/1113 | Etherpkt tpkt; /* transmit buffer */ Etherpkt rpkt; /* receive buffer */ | |
| 1995/0129/sys/src/9/pc/etherif.h:22,28 – 1995/0721/sys/src/9/pc/etherif.h:23,29 | ||
| 1993/1113 | Netif; }; | |
| 1994/0702 |
| |
| 1995/0721 | extern void etherrloop(Ether*, Etherpkt*, long); | |
| 1994/0202 | extern void addethercard(char*, int(*)(Ether*)); /* | |
| 1995/0721/sys/src/9/pc/etherif.h:49,55 – 1996/0420/sys/src/9/pc/etherif.h:49,54 (short | long) | ||
|
Remove dp8390getea.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1118 | extern int dp8390reset(Ether*); | |
| 1994/0128 | extern void *dp8390read(Dp8390*, void*, ulong, ulong); extern void *dp8390write(Dp8390*, ulong, void*, ulong); | |
| 1994/0130 |
| |
| 1993/1116 | ||
| 1993/1113 | #define NEXT(x, l) (((x)+1)%(l)) | |
| 1996/0420/sys/src/9/pc/etherif.h:7,12 – 1996/0601/sys/src/9/pc/etherif.h:7,13 (short | long) | ||
|
Add Ether.mbps.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1113 | struct Ether { ISAConf; /* hardware info */ | |
| 1995/0721 | int ctlrno; | |
| 1996/0601 | int mbps; /* Mbps */ | |
| 1993/1113 | void (*attach)(Ether*); /* filled in by reset routine */ long (*write)(Ether*, void*, long); | |
| 1996/0601/sys/src/9/pc/etherif.h:1,5 – 1996/0607/sys/src/9/pc/etherif.h:1,5 (short | long) | ||
|
Increase MaxEther. Add Ether.ifstat.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1113 | enum { | |
| 1995/0129 |
| |
| 1996/0607 | MaxEther = 24, | |
| 1993/1113 | Ntypes = 8, }; | |
| 1996/0601/sys/src/9/pc/etherif.h:12,17 – 1996/0607/sys/src/9/pc/etherif.h:12,18 | ||
| 1993/1113 | void (*attach)(Ether*); /* filled in by reset routine */ long (*write)(Ether*, void*, long); | |
| 1993/1124 | void (*interrupt)(Ureg*, void*); | |
| 1996/0607 | long (*ifstat)(Ether*, void*, long, ulong); | |
| 1995/0721 | void *ctlr; | |
| 1993/1113 | Etherpkt tpkt; /* transmit buffer */ | |
| 1996/0607/sys/src/9/pc/etherif.h:54,58 – 1996/0622/sys/src/9/pc/etherif.h:54,59 (short | long) | ||
|
Add PREV macro.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1994/0130 | extern void dp8390setea(Ether*); | |
| 1993/1116 | ||
| 1993/1113 | #define NEXT(x, l) (((x)+1)%(l)) | |
| 1996/0622 | #define PREV(x, l) (((x) == 0) ? (l)-1: (x)-1) | |
| 1993/1113 | #define HOWMANY(x, y) (((x)+((y)-1))/(y)) #define ROUNDUP(x, y) (HOWMANY((x), (y))*(y)) | |
| 1996/0622/sys/src/9/pc/etherif.h:7,57 – 1997/0327/sys/src/9/pc/etherif.h:7,29 (short | long) | ||
|
In Ether: add ea, replace write with transmit and oq; remove explicit buffers. Add etheriq. Move Dp8390 code to etherdp8390.h XXX.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1113 | struct Ether { ISAConf; /* hardware info */ | |
| 1995/0721 | int ctlrno; | |
| 1997/0327 | int tbdf; /* type+busno+devno+funcno */ | |
| 1996/0601 | int mbps; /* Mbps */ | |
| 1997/0327 | uchar ea[Eaddrlen]; | |
| 1993/1113 | void (*attach)(Ether*); /* filled in by reset routine */ | |
| 1997/0327 | void (*transmit)(Ether*); | |
| 1993/1124 | void (*interrupt)(Ureg*, void*); | |
| 1996/0607 | long (*ifstat)(Ether*, void*, long, ulong); | |
| 1995/0721 | void *ctlr; | |
| 1993/1113 |
| |
| 1997/0327 | Queue* oq; | |
| 1993/1113 |
| |
| 1993/1119 |
| |
| 1993/1113 |
| |
| 1995/0721 |
| |
| 1997/0327 | extern Block* etheriq(Ether*, Block*, int); | |
| 1994/0202 | extern void addethercard(char*, int(*)(Ether*)); | |
| 1993/1116 |
| |
| 1993/1118 |
| |
| 1993/1116 |
| |
| 1993/1118 |
| |
| 1994/0128 |
| |
| 1994/0130 |
| |
| 1993/1116 | ||
| 1993/1113 | #define NEXT(x, l) (((x)+1)%(l)) | |
| 1996/0622 | #define PREV(x, l) (((x) == 0) ? (l)-1: (x)-1) | |
| 1997/0327/sys/src/9/pc/etherif.h:24,29 – 1997/0415/sys/src/9/pc/etherif.h:24,30 (short | long) | ||
|
Add ethercrc.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1113 | ||
| 1997/0327 | extern Block* etheriq(Ether*, Block*, int); | |
| 1994/0202 | extern void addethercard(char*, int(*)(Ether*)); | |
| 1997/0415 | extern ulong ethercrc(uchar*, int); | |
| 1993/1116 | ||
| 1993/1113 | #define NEXT(x, l) (((x)+1)%(l)) | |
| 1996/0622 | #define PREV(x, l) (((x) == 0) ? (l)-1: (x)-1) | |
| 1997/0415/sys/src/9/pc/etherif.h:6,11 – 1998/0423/sys/src/9/pc/etherif.h:6,12 (short | long) | ||
|
Formatting - add blank line.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1113 | typedef struct Ether Ether; struct Ether { ISAConf; /* hardware info */ | |
| 1998/0423 | ||
| 1995/0721 | int ctlrno; | |
| 1997/0327 | int tbdf; /* type+busno+devno+funcno */ | |
| 1996/0601 | int mbps; /* Mbps */ | |
| 1998/0423/sys/src/9/pc/etherif.h:11,21 – 2000/0817/sys/src/9/pc/etherif.h:11,23 (short | long) | ||
|
Add Ether.encry, Ether.ctl.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1997/0327 | int tbdf; /* type+busno+devno+funcno */ | |
| 1996/0601 | int mbps; /* Mbps */ | |
| 1997/0327 | uchar ea[Eaddrlen]; | |
| 2000/0817 | int encry; | |
| 1993/1113 | void (*attach)(Ether*); /* filled in by reset routine */ | |
| 1997/0327 | void (*transmit)(Ether*); | |
| 1993/1124 | void (*interrupt)(Ureg*, void*); | |
| 1996/0607 | long (*ifstat)(Ether*, void*, long, ulong); | |
| 2000/0817 | long (*ctl)(Ether*, void*, long); /* custom ctl messages */ | |
| 1995/0721 | void *ctlr; | |
| 1993/1113 | ||
| 1997/0327 | Queue* oq; | |
| 2000/0817/sys/src/9/pc/etherif.h:10,15 – 2000/0921/sys/src/9/pc/etherif.h:10,17 (short | long) | ||
|
Add Ether.minmtu, Ether.maxmtu.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1995/0721 | int ctlrno; | |
| 1997/0327 | int tbdf; /* type+busno+devno+funcno */ | |
| 1996/0601 | int mbps; /* Mbps */ | |
| 2000/0921 | int minmtu; int maxmtu; | |
| 1997/0327 | uchar ea[Eaddrlen]; | |
| 2000/0817 | int encry; | |
| 1993/1113 | ||
| 2000/0921/sys/src/9/pc/etherif.h:13,19 – 2001/1022/sys/src/9/pc/etherif.h:13,18 (short | long) | ||
|
Remove Ether.encry.
rsc Fri Mar 4 12:44:25 2005 | ||
| 2000/0921 | int minmtu; int maxmtu; | |
| 1997/0327 | uchar ea[Eaddrlen]; | |
| 2000/0817 |
| |
| 1993/1113 | void (*attach)(Ether*); /* filled in by reset routine */ | |
| 1997/0327 | void (*transmit)(Ether*); | |
| 2001/1022/sys/src/9/pc/etherif.h:19,24 – 2002/0109/sys/src/9/pc/etherif.h:19,25 (short | long) | ||
|
Add Dev.shutdown.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1124 | void (*interrupt)(Ureg*, void*); | |
| 1996/0607 | long (*ifstat)(Ether*, void*, long, ulong); | |
| 2000/0817 | long (*ctl)(Ether*, void*, long); /* custom ctl messages */ | |
| 2002/0109 | void (*shutdown)(Ether*); /* shutdown hardware before reboot */ | |
| 1995/0721 | void *ctlr; | |
| 1993/1113 | ||
| 1997/0327 | Queue* oq; | |
| 2002/0109/sys/src/9/pc/etherif.h:30,35 – 2002/0217/sys/src/9/pc/etherif.h:30,36 (short | long) | ||
|
Add parseether.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1997/0327 | extern Block* etheriq(Ether*, Block*, int); | |
| 1994/0202 | extern void addethercard(char*, int(*)(Ether*)); | |
| 1997/0415 | extern ulong ethercrc(uchar*, int); | |
| 2002/0217 | extern int parseether(uchar*, char*); | |
| 1993/1116 | ||
| 1993/1113 | #define NEXT(x, l) (((x)+1)%(l)) | |
| 1996/0622 | #define PREV(x, l) (((x) == 0) ? (l)-1: (x)-1) | |
| 2002/0217/sys/src/9/pc/etherif.h:15,20 – 2002/0615/sys/src/9/pc/etherif.h:15,21 (short | long) | ||
|
Add Ether.detach.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1997/0327 | uchar ea[Eaddrlen]; | |
| 1993/1113 | void (*attach)(Ether*); /* filled in by reset routine */ | |
| 2002/0615 | void (*detach)(Ether*); | |
| 1997/0327 | void (*transmit)(Ether*); | |
| 1993/1124 | void (*interrupt)(Ureg*, void*); | |
| 1996/0607 | long (*ifstat)(Ether*, void*, long, ulong); | |
| 2002/0615/sys/src/9/pc/etherif.h:20,25 – 2002/0620/sys/src/9/pc/etherif.h:20,26 (short | long) | ||
|
Add Ether.power.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1993/1124 | void (*interrupt)(Ureg*, void*); | |
| 1996/0607 | long (*ifstat)(Ether*, void*, long, ulong); | |
| 2000/0817 | long (*ctl)(Ether*, void*, long); /* custom ctl messages */ | |
| 2002/0620 | void (*power)(Ether*, int); /* power on/off */ | |
| 2002/0109 | void (*shutdown)(Ether*); /* shutdown hardware before reboot */ | |
| 1995/0721 | void *ctlr; | |
| 1993/1113 | ||
| 2002/0620/sys/src/9/pc/etherif.h:9,15 – 2003/0209/sys/src/9/pc/etherif.h:9,14 (short | long) | ||
|
Remove Ether.mbps.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1998/0423 | ||
| 1995/0721 | int ctlrno; | |
| 1997/0327 | int tbdf; /* type+busno+devno+funcno */ | |
| 1996/0601 |
| |
| 2000/0921 | int minmtu; int maxmtu; | |
| 1997/0327 | uchar ea[Eaddrlen]; | |