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

Realtek RTL8019AS Ethernet Interface Driver (rtl8019.c)
[Network Library]


Detailed Description

 #include "net/rtl8019.h" 
Overview
This driver provides initialization and transmit/receive functions for the Realtek RTL8019AS 10Mb Ethernet Controller and PHY.
Based in part on code by Louis Beaudoin (www.embedded-creations.com). Thanks to Adam Dunkels and Louis Beaudoin for providing the initial structure in which to write this driver.


Defines

#define nop()   asm volatile ("nop")
#define CR   0x00
#define PSTART   0x01
#define PSTOP   0x02
#define BNRY   0x03
#define RDMAPORT   0x10
#define MEMR   0x14
#define TR   0x15
#define SPP_DPR   0x18
#define SSP_SPR   0x19
#define SSP_CPR   0x1A
#define TSR   0x04
#define NCR   0x05
#define ISR   0x07
#define CRDA0   0x08
#define CRDA1   0x09
#define RSR   0x0C
#define CNTR0   0x0D
#define CNTR1   0x0E
#define CNTR2   0x0F
#define GPI   0x17
#define RSTPORT   0x1F
#define TPSR   0x04
#define TBCR0   0x05
#define TBCR1   0x06
#define RSAR0   0x08
#define RSAR1   0x09
#define RBCR0   0x0A
#define RBCR1   0x0B
#define RCR   0x0C
#define TCR   0x0D
#define DCR   0x0E
#define IMR   0x0F
#define GPOC   0x17
#define PAR0   0x01
#define PAR1   0x02
#define PAR2   0x03
#define PAR3   0x04
#define PAR4   0x05
#define PAR5   0x06
#define CURR   0x07
#define CPR   0x07
#define RTL_EECR   0x01
#define CR9346   0x01
#define CONFIG2   0x05
#define CONFIG3   0x06
#define PS1   0x80
#define PS0   0x40
#define RD2   0x20
#define RD1   0x10
#define RD0   0x08
#define TXP   0x04
#define START   0x02
#define STOP   0x01
#define RST   0x80
#define RDC   0x40
#define OVW   0x10
#define RXE   0x08
#define TXE   0x04
#define PTX   0x02
#define PRX   0x01
#define MON   0x20
#define PRO   0x10
#define AM   0x08
#define AB   0x04
#define AR   0x02
#define SEP   0x01
#define FDU   0x80
#define PD   0x40
#define RLO   0x20
#define LB1   0x04
#define LB0   0x02
#define CRC   0x01
#define EEM1   0x80
#define EEM0   0x40
#define EECS   0x08
#define EESK   0x04
#define EEDI   0x02
#define EEDO   0x01
#define RCR_INIT   (AB)
#define DCR_INIT   0x58
#define TCR_INIT   0x00
#define IMR_INIT   0x11
#define TXSTART_INIT   0x40
#define RXSTART_INIT   0x46
#define RXSTOP_INIT   0x60
#define ETHERNET_MIN_PACKET_LENGTH   0x3C
#define PKTHEADER_STATUS   0x00
#define PKTHEADER_NEXTPAGE   0x01
#define PKTHEADER_PKTLENL   0x02
#define PKTHEADER_PKTLENH   0x03

Functions

void rtl8019SetupPorts (void)
unsigned char rtl8019Read (unsigned char address)
void rtl8019Write (unsigned char address, unsigned char data)
void rtl8019Init (void)
void rtl8019BeginPacketSend (unsigned int packetLength)
void rtl8019SendPacketData (unsigned char *localBuffer, unsigned int length)
void rtl8019EndPacketSend (void)
unsigned int rtl8019BeginPacketRetreive (void)
void rtl8019RetreivePacketData (unsigned char *localBuffer, unsigned int length)
void rtl8019EndPacketRetreive (void)
void rtl8019ProcessInterrupt (void)
void rtl8019ReceiveOverflowRecover (void)
void rtl8019RegDump (void)


Generated on Sun Oct 29 03:41:10 2006 for Procyon AVRlib by  doxygen 1.4.2