Nut/OS  4.10.3
API Reference
SAM7X EMAC

SAM7X EMAC registers. More...

Collaboration diagram for SAM7X EMAC:

Functions

void EmacRxThread (void *arg)
int EmacOutput (NUTDEVICE *dev, NETBUF *nb)
 Send Ethernet packet.
int EmacInit (NUTDEVICE *dev)
 Initialize Ethernet hardware.

Variables

NUTDEVICE devAt91Emac
 Device information structure.

Detailed Description

SAM7X EMAC registers.


Function Documentation

int EmacOutput ( NUTDEVICE dev,
NETBUF nb 
)

Send Ethernet packet.

Todo:
This routine does not work.
Parameters:
devIdentifies the device to use.
nbNetwork 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 649 of file at91sam7x_emac.c.

References _NUTDEVICE::dev_dcb, _EMACINFO::ni_insane, _EMACINFO::ni_mutex, _EMACINFO::ni_tx_rdy, NutEventPost(), NutEventWait(), _BufDescriptor::stat, and TXS_USED.

Here is the call graph for this function:

int EmacInit ( NUTDEVICE dev)

Initialize Ethernet hardware.

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

Parameters:
devIdentifies the device to initialize.

Definition at line 706 of file at91sam7x_emac.c.

References _NUTDEVICE::dev_dcb, EmacRxThread(), memset(), NUT_THREAD_NICRXSTACK, NUT_THREAD_STACK_ADD, NUT_THREAD_STACK_MULT, NutRegisterIrqHandler(), NutThreadCreate(), and sig_EMAC.

Here is the call graph for this function:


Variable Documentation

Initial value:
 {
    0,                          
    {'e', 't', 'h', '0', 0, 0, 0, 0, 0},        
    IFTYP_NET,                  
    0,                          
    0,                          
    &ifn_eth0,                  
    &dcb_eth0,                  
    EmacInit,                   
    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 763 of file at91sam7x_emac.c.