Main Page | Modules | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals | Related Pages | Examples

Asix AX88796L
[Ethernet]

Collaboration diagram for Asix AX88796L:


Detailed Description

10/100 MBit NE2000 compatible controller.

Highly experimental.


Data Structures

struct  nic_pkt_header

Functions

void Delay16Cycles (void)
u_short NicPhyRead (u_char reg)
 Read contents of internel PHY register on 0x10 adress.
void NicPhyWrite (u_char reg, u_short val)
 Write value to PHY register.
void NicRxAsix (void *arg)
 NIC receiver thread.
void NicInterruptEntry (void)
int AsixOutput (NUTDEVICE *dev, NETBUF *nb)
 Send Ethernet packet.
int AsixInit (NUTDEVICE *dev)
 Initialize Ethernet hardware.

Variables

NUTDEVICE devAx88796
 Device information structure.


Function Documentation

u_short NicPhyRead u_char  reg  ) 
 

Read contents of internel PHY register on 0x10 adress.

Returns:
Contents of the specified register.

void NicPhyWrite u_char  reg,
u_short  val
 

Write value to PHY register.

Note:
NIC interrupts must have been disabled before calling this routine.
Parameters:
reg PHY register number.
val Value to write.

int AsixOutput 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.

int AsixInit NUTDEVICE dev  ) 
 

Initialize Ethernet hardware.

Resets the Asix Asix_L 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.


Variable Documentation

NUTDEVICE devAx88796
 

Initial value:

 {
    0,                          
    {'e', 't', 'h', '0', 0, 0, 0, 0, 0},        
    IFTYP_NET,                  
    0,                          
    0,                          
    &ifn_eth0,                  
    &dcb_eth0,                  
    AsixInit,                   
    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.


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