Modules/PCnetFAST3 - Quieten
[tpg/acess2.git] / KernelLand / Modules / Network / PRO100 / pro100.h
1 /*
2  * Acess2 PRO/100 Driver
3  * - By John Hodge (thePowersGang)
4  *
5  * pro100.h
6  * - Hardware header
7  */
8 #ifndef _PRO100_H_
9 #define _PRO100_H_
10
11 #include "pro100_hw.h"
12
13 #include <semaphore.h>
14 #include <mutex.h>
15
16 #define NUM_RX  4
17 #define RX_BUF_SIZE     ((PAGE_SIZE/2)-sizeof(tRXBuffer))
18 #define NUM_TX  (PAGE_SIZE/sizeof(tTXCommand))
19
20 typedef struct sCard    tCard;
21
22 struct sCard
23 {
24         Uint16  IOBase;
25         struct sCSR     *MMIO;
26         
27         union {
28                 Uint8   Bytes[6];
29                 Uint16  Words[3];       // Used to read the MAC from EEPROM
30         } MAC;
31
32          int    CurRXIndex;
33         tRXBuffer       *RXBufs[NUM_RX];
34         tSemaphore      RXSemaphore;
35
36         tSemaphore      TXCommandSem;
37         tMutex  lTXCommands;
38          int    LastTXIndex;
39          int    CurTXIndex;
40         tTXCommand      *TXCommands;
41         tIPStackBuffer  *TXBuffers[NUM_TX];
42 };
43
44 #endif
45

UCC git Repository :: git.ucc.asn.au