Compaq AA-RNG2A-TE manual Defining Fifo Maintenance Information, Defining Bus-Specific Information

Models: AA-RNG2A-TE

1 159
Download 159 pages 42.56 Kb
Page 51
Image 51

access a CSR directly. The driver-specific macros handle the read and write operations that are made on these device registers.

The following code shows the declarations of the CSR addresses in the if_el device driver’s el_softc data structure. Make sure that the CSR pointer information part of your softc data structure has similar declarations.

io_handle_t regE; io_handle_t regC; io_handle_t regA; io_handle_t reg8; io_handle_t reg6; io_handle_t reg4; io_handle_t reg2; io_handle_t reg0; io_handle_t data;

1

1

Declares the CSR addresses for the if_el driver. These addresses are computed during the probe( ) routine by adding the specified offset (0xE, 0xC, 0xA, and so forth) to the base address.

3.8 Defining FIFO Maintenance Information

The first-in/first-out (FIFO) maintenance information in the if_el driver’s el_softc data structure consists of a variable that stores a value that the device keeps on board. The following code shows its declaration. This information is hardware-specific, so you can omit it from your network device driver’s softc data structure.

unsigned long txfree;

3.9 Defining Bus-Specific Information

The bus-specific information in a network driver’s softc data structure consists of information about the bus or buses on which the driver operates. The if_el driver operates on the PCMCIA and ISA buses, so that the information in this section reflects these buses.

The following code shows the bus-specific declarations in the if_el device driver’s el_softc data structure. The bus-specific information that is described here may not apply to your network device driver. However, the declarations do give you an idea of some of the information that a network driver needs to keep when operating on the PCMCIA and ISA buses.

int

irq;

1

 

 

 

 

 

 

 

 

 

 

 

 

 

int

iobase;

 

2

 

 

 

 

int

isa_tag;

 

 

 

 

3

 

 

int

cardout;

 

 

 

 

4

 

 

int

reprobe;

 

 

 

 

5

 

 

int

ispcmcia;

 

6

 

struct

card_info

*cinfop;

7

1

Contains the interrupt request (IRQ) to use.

Defining the softc Data Structure 3–7

Page 51
Image 51
Compaq AA-RNG2A-TE manual Defining Fifo Maintenance Information, Defining Bus-Specific Information