Davicom DM9000E
[Network Devices]

Collaboration diagram for Davicom DM9000E:


Detailed Description

100 MBit Ethernet controller.

The DM9000E chip is used in the Ethernut 3 reference design.


Modules

 DM9000E Registers
 Register definitions.

Functions

void NicRxLanc (void *arg)
int DmOutput (NUTDEVICE *dev, NETBUF *nb)
 Send Ethernet packet.
int DmInit (NUTDEVICE *dev)
 Initialize Ethernet hardware.

Variables

NUTDEVICE devDM9000E
 Device information structure.


Function Documentation

void NicRxLanc ( void *  arg  ) 

Definition at line 798 of file dm9000e.c.

References _NUTDEVICE::dev_dcb, _NUTDEVICE::dev_icb, and ifnet::if_mac.

int DmOutput ( NUTDEVICE dev,
NETBUF nb 
)

Send Ethernet packet.

Parameters:
dev Identifies the device to use.
nb Network buffer structure containing the packet to be sent. The structure must have been allocated by a previous call NutNetBufAlloc().
Returns:
0 on success, -1 in case of any errors.

Definition at line 893 of file dm9000e.c.

References _NUTDEVICE::dev_dcb, NICINFO::ni_tx_rdy, NutEventPost(), and NutEventWait().

int DmInit ( NUTDEVICE dev  ) 

Initialize Ethernet hardware.

Resets the LAN91C111 Ethernet controller, initializes all required hardware registers and starts a background thread for incoming Ethernet traffic.

Applications should do not directly call this function. It is automatically executed during during device registration by NutRegisterDevice().

If the network configuration hasn't been set by the application before registering the specified device, this function will call NutNetLoadConfig() to get the MAC address.

Parameters:
dev Identifies the device to initialize.

Definition at line 953 of file dm9000e.c.

References _NUTDEVICE::dev_dcb, memset(), NIC_ISR, NIC_ISR_IOM, NIC_ISR_M32, NIC_PID, NIC_SIGNAL, NIC_VID, NicRxLanc(), NUT_THREAD_NICRXSTACK, NutRegisterIrqHandler(), and NutThreadCreate().


Variable Documentation

NUTDEVICE devDM9000E

Initial value:

 {
    0,                          
    {'e', 't', 'h', '0', 0, 0, 0, 0, 0},        
    IFTYP_NET,                  
    0,                          
    0,                          
    &ifn_eth0,                  
    &dcb_eth0,                  
    DmInit,                     
    0,                          
    0,                          
    0,                          

    0,                          

    0,                          
    0,                          
    0                           
}
Device information structure.

A pointer to this structure must be passed to NutRegisterDevice() to bind this Ethernet device driver to the Nut/OS kernel. An application may then call NutNetIfConfig() with the name eth0 of this driver to initialize the network interface.

Definition at line 1024 of file dm9000e.c.


© 2000-2007 by egnite Software GmbH - visit http://www.ethernut.de/