enc28j60_driver.h File Reference

ENC28J60 Ethernet controller. More...

Go to the source code of this file.

Data Structures

struct  Enc28j60Context
 ENC28J60 driver context. More...
 

Macros

#define ENC28J60_FULL_DUPLEX_SUPPORT   ENABLED
 
#define ENC28J60_REV_B1   0x02
 
#define ENC28J60_REV_B4   0x04
 
#define ENC28J60_REV_B5   0x05
 
#define ENC28J60_REV_B7   0x06
 
#define ENC28J60_RX_BUFFER_START   0x0000
 
#define ENC28J60_RX_BUFFER_STOP   0x17FF
 
#define ENC28J60_TX_BUFFER_START   0x1800
 
#define ENC28J60_TX_BUFFER_STOP   0x1FFF
 
#define ENC28J60_CMD_RCR   0x00
 
#define ENC28J60_CMD_RBM   0x3A
 
#define ENC28J60_CMD_WCR   0x40
 
#define ENC28J60_CMD_WBM   0x7A
 
#define ENC28J60_CMD_BFS   0x80
 
#define ENC28J60_CMD_BFC   0xA0
 
#define ENC28J60_CMD_SRC   0xFF
 
#define ETH_REG_TYPE   0x0000
 
#define MAC_REG_TYPE   0x1000
 
#define MII_REG_TYPE   0x2000
 
#define PHY_REG_TYPE   0x3000
 
#define BANK_0   0x0000
 
#define BANK_1   0x0100
 
#define BANK_2   0x0200
 
#define BANK_3   0x0300
 
#define REG_TYPE_MASK   0xF000
 
#define REG_BANK_MASK   0x0F00
 
#define REG_ADDR_MASK   0x001F
 
#define ENC28J60_REG_ERDPTL   (ETH_REG_TYPE | BANK_0 | 0x00)
 
#define ENC28J60_REG_ERDPTH   (ETH_REG_TYPE | BANK_0 | 0x01)
 
#define ENC28J60_REG_EWRPTL   (ETH_REG_TYPE | BANK_0 | 0x02)
 
#define ENC28J60_REG_EWRPTH   (ETH_REG_TYPE | BANK_0 | 0x03)
 
#define ENC28J60_REG_ETXSTL   (ETH_REG_TYPE | BANK_0 | 0x04)
 
#define ENC28J60_REG_ETXSTH   (ETH_REG_TYPE | BANK_0 | 0x05)
 
#define ENC28J60_REG_ETXNDL   (ETH_REG_TYPE | BANK_0 | 0x06)
 
#define ENC28J60_REG_ETXNDH   (ETH_REG_TYPE | BANK_0 | 0x07)
 
#define ENC28J60_REG_ERXSTL   (ETH_REG_TYPE | BANK_0 | 0x08)
 
#define ENC28J60_REG_ERXSTH   (ETH_REG_TYPE | BANK_0 | 0x09)
 
#define ENC28J60_REG_ERXNDL   (ETH_REG_TYPE | BANK_0 | 0x0A)
 
#define ENC28J60_REG_ERXNDH   (ETH_REG_TYPE | BANK_0 | 0x0B)
 
#define ENC28J60_REG_ERXRDPTL   (ETH_REG_TYPE | BANK_0 | 0x0C)
 
#define ENC28J60_REG_ERXRDPTH   (ETH_REG_TYPE | BANK_0 | 0x0D)
 
#define ENC28J60_REG_ERXWRPTL   (ETH_REG_TYPE | BANK_0 | 0x0E)
 
#define ENC28J60_REG_ERXWRPTH   (ETH_REG_TYPE | BANK_0 | 0x0F)
 
#define ENC28J60_REG_EDMASTL   (ETH_REG_TYPE | BANK_0 | 0x10)
 
#define ENC28J60_REG_EDMASTH   (ETH_REG_TYPE | BANK_0 | 0x11)
 
#define ENC28J60_REG_EDMANDL   (ETH_REG_TYPE | BANK_0 | 0x12)
 
#define ENC28J60_REG_EDMANDH   (ETH_REG_TYPE | BANK_0 | 0x13)
 
#define ENC28J60_REG_EDMADSTL   (ETH_REG_TYPE | BANK_0 | 0x14)
 
#define ENC28J60_REG_EDMADSTH   (ETH_REG_TYPE | BANK_0 | 0x15)
 
#define ENC28J60_REG_EDMACSL   (ETH_REG_TYPE | BANK_0 | 0x16)
 
#define ENC28J60_REG_EDMACSH   (ETH_REG_TYPE | BANK_0 | 0x17)
 
#define ENC28J60_REG_EIE   (ETH_REG_TYPE | BANK_0 | 0x1B)
 
#define ENC28J60_REG_EIR   (ETH_REG_TYPE | BANK_0 | 0x1C)
 
#define ENC28J60_REG_ESTAT   (ETH_REG_TYPE | BANK_0 | 0x1D)
 
#define ENC28J60_REG_ECON2   (ETH_REG_TYPE | BANK_0 | 0x1E)
 
#define ENC28J60_REG_ECON1   (ETH_REG_TYPE | BANK_0 | 0x1F)
 
#define ENC28J60_REG_EHT0   (ETH_REG_TYPE | BANK_1 | 0x00)
 
#define ENC28J60_REG_EHT1   (ETH_REG_TYPE | BANK_1 | 0x01)
 
#define ENC28J60_REG_EHT2   (ETH_REG_TYPE | BANK_1 | 0x02)
 
#define ENC28J60_REG_EHT3   (ETH_REG_TYPE | BANK_1 | 0x03)
 
#define ENC28J60_REG_EHT4   (ETH_REG_TYPE | BANK_1 | 0x04)
 
#define ENC28J60_REG_EHT5   (ETH_REG_TYPE | BANK_1 | 0x05)
 
#define ENC28J60_REG_EHT6   (ETH_REG_TYPE | BANK_1 | 0x06)
 
#define ENC28J60_REG_EHT7   (ETH_REG_TYPE | BANK_1 | 0x07)
 
#define ENC28J60_REG_EPMM0   (ETH_REG_TYPE | BANK_1 | 0x08)
 
#define ENC28J60_REG_EPMM1   (ETH_REG_TYPE | BANK_1 | 0x09)
 
#define ENC28J60_REG_EPMM2   (ETH_REG_TYPE | BANK_1 | 0x0A)
 
#define ENC28J60_REG_EPMM3   (ETH_REG_TYPE | BANK_1 | 0x0B)
 
#define ENC28J60_REG_EPMM4   (ETH_REG_TYPE | BANK_1 | 0x0C)
 
#define ENC28J60_REG_EPMM5   (ETH_REG_TYPE | BANK_1 | 0x0D)
 
#define ENC28J60_REG_EPMM6   (ETH_REG_TYPE | BANK_1 | 0x0E)
 
#define ENC28J60_REG_EPMM7   (ETH_REG_TYPE | BANK_1 | 0x0F)
 
#define ENC28J60_REG_EPMCSL   (ETH_REG_TYPE | BANK_1 | 0x10)
 
#define ENC28J60_REG_EPMCSH   (ETH_REG_TYPE | BANK_1 | 0x11)
 
#define ENC28J60_REG_EPMOL   (ETH_REG_TYPE | BANK_1 | 0x14)
 
#define ENC28J60_REG_EPMOH   (ETH_REG_TYPE | BANK_1 | 0x15)
 
#define ENC28J60_REG_EWOLIE   (ETH_REG_TYPE | BANK_1 | 0x16)
 
#define ENC28J60_REG_EWOLIR   (ETH_REG_TYPE | BANK_1 | 0x17)
 
#define ENC28J60_REG_ERXFCON   (ETH_REG_TYPE | BANK_1 | 0x18)
 
#define ENC28J60_REG_EPKTCNT   (ETH_REG_TYPE | BANK_1 | 0x19)
 
#define ENC28J60_REG_MACON1   (MAC_REG_TYPE | BANK_2 | 0x00)
 
#define ENC28J60_REG_MACON2   (MAC_REG_TYPE | BANK_2 | 0x01)
 
#define ENC28J60_REG_MACON3   (MAC_REG_TYPE | BANK_2 | 0x02)
 
#define ENC28J60_REG_MACON4   (MAC_REG_TYPE | BANK_2 | 0x03)
 
#define ENC28J60_REG_MABBIPG   (MAC_REG_TYPE | BANK_2 | 0x04)
 
#define ENC28J60_REG_MAIPGL   (MAC_REG_TYPE | BANK_2 | 0x06)
 
#define ENC28J60_REG_MAIPGH   (MAC_REG_TYPE | BANK_2 | 0x07)
 
#define ENC28J60_REG_MACLCON1   (MAC_REG_TYPE | BANK_2 | 0x08)
 
#define ENC28J60_REG_MACLCON2   (MAC_REG_TYPE | BANK_2 | 0x09)
 
#define ENC28J60_REG_MAMXFLL   (MAC_REG_TYPE | BANK_2 | 0x0A)
 
#define ENC28J60_REG_MAMXFLH   (MAC_REG_TYPE | BANK_2 | 0x0B)
 
#define ENC28J60_REG_MAPHSUP   (MAC_REG_TYPE | BANK_2 | 0x0D)
 
#define ENC28J60_REG_MICON   (MII_REG_TYPE | BANK_2 | 0x11)
 
#define ENC28J60_REG_MICMD   (MII_REG_TYPE | BANK_2 | 0x12)
 
#define ENC28J60_REG_MIREGADR   (MII_REG_TYPE | BANK_2 | 0x14)
 
#define ENC28J60_REG_MIWRL   (MII_REG_TYPE | BANK_2 | 0x16)
 
#define ENC28J60_REG_MIWRH   (MII_REG_TYPE | BANK_2 | 0x17)
 
#define ENC28J60_REG_MIRDL   (MII_REG_TYPE | BANK_2 | 0x18)
 
#define ENC28J60_REG_MIRDH   (MII_REG_TYPE | BANK_2 | 0x19)
 
#define ENC28J60_REG_MAADR5   (MAC_REG_TYPE | BANK_3 | 0x00)
 
#define ENC28J60_REG_MAADR6   (MAC_REG_TYPE | BANK_3 | 0x01)
 
#define ENC28J60_REG_MAADR3   (MAC_REG_TYPE | BANK_3 | 0x02)
 
#define ENC28J60_REG_MAADR4   (MAC_REG_TYPE | BANK_3 | 0x03)
 
#define ENC28J60_REG_MAADR1   (MAC_REG_TYPE | BANK_3 | 0x04)
 
#define ENC28J60_REG_MAADR2   (MAC_REG_TYPE | BANK_3 | 0x05)
 
#define ENC28J60_REG_EBSTSD   (ETH_REG_TYPE | BANK_3 | 0x06)
 
#define ENC28J60_REG_EBSTCON   (ETH_REG_TYPE | BANK_3 | 0x07)
 
#define ENC28J60_REG_EBSTCSL   (ETH_REG_TYPE | BANK_3 | 0x08)
 
#define ENC28J60_REG_EBSTCSH   (ETH_REG_TYPE | BANK_3 | 0x09)
 
#define ENC28J60_REG_MISTAT   (MII_REG_TYPE | BANK_3 | 0x0A)
 
#define ENC28J60_REG_EREVID   (ETH_REG_TYPE | BANK_3 | 0x12)
 
#define ENC28J60_REG_ECOCON   (ETH_REG_TYPE | BANK_3 | 0x15)
 
#define ENC28J60_REG_EFLOCON   (ETH_REG_TYPE | BANK_3 | 0x17)
 
#define ENC28J60_REG_EPAUSL   (ETH_REG_TYPE | BANK_3 | 0x18)
 
#define ENC28J60_REG_EPAUSH   (ETH_REG_TYPE | BANK_3 | 0x19)
 
#define ENC28J60_PHY_REG_PHCON1   (PHY_REG_TYPE | 0x00)
 
#define ENC28J60_PHY_REG_PHSTAT1   (PHY_REG_TYPE | 0x01)
 
#define ENC28J60_PHY_REG_PHID1   (PHY_REG_TYPE | 0x02)
 
#define ENC28J60_PHY_REG_PHID2   (PHY_REG_TYPE | 0x03)
 
#define ENC28J60_PHY_REG_PHCON2   (PHY_REG_TYPE | 0x10)
 
#define ENC28J60_PHY_REG_PHSTAT2   (PHY_REG_TYPE | 0x11)
 
#define ENC28J60_PHY_REG_PHIE   (PHY_REG_TYPE | 0x12)
 
#define ENC28J60_PHY_REG_PHIR   (PHY_REG_TYPE | 0x13)
 
#define ENC28J60_PHY_REG_PHLCON   (PHY_REG_TYPE | 0x14)
 
#define EIE_INTIE   (1 << 7)
 
#define EIE_PKTIE   (1 << 6)
 
#define EIE_DMAIE   (1 << 5)
 
#define EIE_LINKIE   (1 << 4)
 
#define EIE_TXIE   (1 << 3)
 
#define EIE_WOLIE   (1 << 2)
 
#define EIE_TXERIE   (1 << 1)
 
#define EIE_RXERIE   (1 << 0)
 
#define EIR_PKTIF   (1 << 6)
 
#define EIR_DMAIF   (1 << 5)
 
#define EIR_LINKIF   (1 << 4)
 
#define EIR_TXIF   (1 << 3)
 
#define EIR_WOLIF   (1 << 2)
 
#define EIR_TXERIF   (1 << 1)
 
#define EIR_RXERIF   (1 << 0)
 
#define ESTAT_INT   (1 << 7)
 
#define ESTAT_LATECOL   (1 << 4)
 
#define ESTAT_RXBUSY   (1 << 2)
 
#define ESTAT_TXABRT   (1 << 1)
 
#define ESTAT_CLKRDY   (1 << 0)
 
#define ECON2_AUTOINC   (1 << 7)
 
#define ECON2_PKTDEC   (1 << 6)
 
#define ECON2_PWRSV   (1 << 5)
 
#define ECON2_VRPS   (1 << 3)
 
#define ECON1_TXRST   (1 << 7)
 
#define ECON1_RXRST   (1 << 6)
 
#define ECON1_DMAST   (1 << 5)
 
#define ECON1_CSUMEN   (1 << 4)
 
#define ECON1_TXRTS   (1 << 3)
 
#define ECON1_RXEN   (1 << 2)
 
#define ECON1_BSEL1   (1 << 1)
 
#define ECON1_BSEL0   (1 << 0)
 
#define ERXFCON_UCEN   (1 << 7)
 
#define ERXFCON_ANDOR   (1 << 6)
 
#define ERXFCON_CRCEN   (1 << 5)
 
#define ERXFCON_PMEN   (1 << 4)
 
#define ERXFCON_MPEN   (1 << 3)
 
#define ERXFCON_HTEN   (1 << 2)
 
#define ERXFCON_MCEN   (1 << 1)
 
#define ERXFCON_BCEN   (1 << 0)
 
#define MACON1_LOOPBK   (1 << 4)
 
#define MACON1_TXPAUS   (1 << 3)
 
#define MACON1_RXPAUS   (1 << 2)
 
#define MACON1_PASSALL   (1 << 1)
 
#define MACON1_MARXEN   (1 << 0)
 
#define MACON2_MARST   (1 << 7)
 
#define MACON2_RNDRST   (1 << 6)
 
#define MACON2_MARXRST   (1 << 3)
 
#define MACON2_RFUNRST   (1 << 2)
 
#define MACON2_MATXRST   (1 << 1)
 
#define MACON2_TFUNRST   (1 << 0)
 
#define MACON3_PADCFG2   (1 << 7)
 
#define MACON3_PADCFG1   (1 << 6)
 
#define MACON3_PADCFG0   (1 << 5)
 
#define MACON3_TXCRCEN   (1 << 4)
 
#define MACON3_PHDRLEN   (1 << 3)
 
#define MACON3_HFRMLEN   (1 << 2)
 
#define MACON3_FRMLNEN   (1 << 1)
 
#define MACON3_FULDPX   (1 << 0)
 
#define MACON3_PADCFG(x)   ((x) << 5)
 
#define MACON4_DEFER   (1 << 6)
 
#define MACON4_BPEN   (1 << 5)
 
#define MACON4_NOBKOFF   (1 << 4)
 
#define MACON4_LONGPRE   (1 << 1)
 
#define MACON4_PUREPRE   (1 << 0)
 
#define MAPHSUP_RSTINTFC   (1 << 7)
 
#define MAPHSUP_RSTRMII   (1 << 3)
 
#define MICON_RSTMII   (1 << 7)
 
#define MICMD_MIISCAN   (1 << 1)
 
#define MICMD_MIIRD   (1 << 0)
 
#define EBSTCON_PSV2   (1 << 7)
 
#define EBSTCON_PSV1   (1 << 6)
 
#define EBSTCON_PSV0   (1 << 5)
 
#define EBSTCON_PSEL   (1 << 4)
 
#define EBSTCON_TMSEL1   (1 << 3)
 
#define EBSTCON_TMSEL0   (1 << 2)
 
#define EBSTCON_TME   (1 << 1)
 
#define EBSTCON_BISTST   (1 << 0)
 
#define MISTAT_NVALID   (1 << 2)
 
#define MISTAT_SCAN   (1 << 1)
 
#define MISTAT_BUSY   (1 << 0)
 
#define ECOCON_COCON2   (1 << 2)
 
#define ECOCON_COCON1   (1 << 1)
 
#define ECOCON_COCON0   (1 << 0)
 
#define EFLOCON_FULDPXS   (1 << 2)
 
#define EFLOCON_FCEN1   (1 << 1)
 
#define EFLOCON_FCEN0   (1 << 0)
 
#define PHCON1_PRST   (1 << 15)
 
#define PHCON1_PLOOPBK   (1 << 14)
 
#define PHCON1_PPWRSV   (1 << 11)
 
#define PHCON1_PDPXMD   (1 << 8)
 
#define PHSTAT1_PFDPX   (1 << 12)
 
#define PHSTAT1_PHDPX   (1 << 11)
 
#define PHSTAT1_LLSTAT   (1 << 2)
 
#define PHSTAT1_JBSTAT   (1 << 1)
 
#define PHCON2_FRCLINK   (1 << 14)
 
#define PHCON2_TXDIS   (1 << 13)
 
#define PHCON2_JABBER   (1 << 10)
 
#define PHCON2_HDLDIS   (1 << 8)
 
#define PHSTAT2_TXSTAT   (1 << 13)
 
#define PHSTAT2_RXSTAT   (1 << 12)
 
#define PHSTAT2_COLSTAT   (1 << 11)
 
#define PHSTAT2_LSTAT   (1 << 10)
 
#define PHSTAT2_DPXSTAT   (1 << 9)
 
#define PHSTAT2_PLRITY   (1 << 4)
 
#define PHIE_PLNKIE   (1 << 4)
 
#define PHIE_PGEIE   (1 << 1)
 
#define PHIR_PLNKIF   (1 << 4)
 
#define PHIR_PGIF   (1 << 2)
 
#define PHLCON_LACFG3   (1 << 11)
 
#define PHLCON_LACFG2   (1 << 10)
 
#define PHLCON_LACFG1   (1 << 9)
 
#define PHLCON_LACFG0   (1 << 8)
 
#define PHLCON_LBCFG3   (1 << 7)
 
#define PHLCON_LBCFG2   (1 << 6)
 
#define PHLCON_LBCFG1   (1 << 5)
 
#define PHLCON_LBCFG0   (1 << 4)
 
#define PHLCON_LFRQ1   (1 << 3)
 
#define PHLCON_LFRQ0   (1 << 2)
 
#define PHLCON_STRCH   (1 << 1)
 
#define PHLCON_LACFG(x)   ((x) << 8)
 
#define PHLCON_LBCFG(x)   ((x) << 4)
 
#define PHLCON_LFRQ(x)   ((x) << 2)
 
#define TX_CTRL_PHUGEEN   (1 << 3)
 
#define TX_CTRL_PPADEN   (1 << 2)
 
#define TX_CTRL_PCRCEN   (1 << 1)
 
#define TX_CTRL_POVERRIDE   (1 << 0)
 
#define RSV_VLAN_TYPE   0x4000
 
#define RSV_UNKNOWN_OPCODE   0x2000
 
#define RSV_PAUSE_CONTROL_FRAME   0x1000
 
#define RSV_CONTROL_FRAME   0x0800
 
#define RSV_DRIBBLE_NIBBLE   0x0400
 
#define RSV_BROADCAST_PACKET   0x0200
 
#define RSV_MULTICAST_PACKET   0x0100
 
#define RSV_RECEIVED_OK   0x0080
 
#define RSV_LENGTH_OUT_OF_RANGE   0x0040
 
#define RSV_LENGTH_CHECK_ERROR   0x0020
 
#define RSV_CRC_ERROR   0x0010
 
#define RSV_CARRIER_EVENT   0x0004
 
#define RSV_DROP_EVENT   0x0001
 

Functions

error_t enc28j60Init (NetInterface *interface)
 ENC28J60 controller initialization. More...
 
void enc28j60Tick (NetInterface *interface)
 ENC28J60 timer handler. More...
 
void enc28j60EnableIrq (NetInterface *interface)
 Enable interrupts. More...
 
void enc28j60DisableIrq (NetInterface *interface)
 Disable interrupts. More...
 
bool_t enc28j60IrqHandler (NetInterface *interface)
 ENC28J60 interrupt service routine. More...
 
void enc28j60EventHandler (NetInterface *interface)
 ENC28J60 event handler. More...
 
error_t enc28j60SendPacket (NetInterface *interface, const NetBuffer *buffer, size_t offset)
 Send a packet. More...
 
error_t enc28j60ReceivePacket (NetInterface *interface)
 Receive a packet. More...
 
error_t enc28j60UpdateMacAddrFilter (NetInterface *interface)
 Configure MAC address filtering. More...
 
void enc28j60SoftReset (NetInterface *interface)
 ENC28J60 controller reset. More...
 
void enc28j60SelectBank (NetInterface *interface, uint16_t address)
 Bank selection. More...
 
void enc28j60WriteReg (NetInterface *interface, uint16_t address, uint8_t data)
 Write ENC28J60 register. More...
 
uint8_t enc28j60ReadReg (NetInterface *interface, uint16_t address)
 Read ENC28J60 register. More...
 
void enc28j60WritePhyReg (NetInterface *interface, uint16_t address, uint16_t data)
 Write PHY register. More...
 
uint16_t enc28j60ReadPhyReg (NetInterface *interface, uint16_t address)
 Read PHY register. More...
 
void enc28j60WriteBuffer (NetInterface *interface, const NetBuffer *buffer, size_t offset)
 Write SRAM buffer. More...
 
void enc28j60ReadBuffer (NetInterface *interface, uint8_t *data, size_t length)
 Read SRAM buffer. More...
 
void enc28j60SetBit (NetInterface *interface, uint16_t address, uint16_t mask)
 Set bit field. More...
 
void enc28j60ClearBit (NetInterface *interface, uint16_t address, uint16_t mask)
 Clear bit field. More...
 
uint32_t enc28j60CalcCrc (const void *data, size_t length)
 CRC calculation using the polynomial 0x4C11DB7. More...
 
void enc28j60DumpReg (NetInterface *interface)
 Dump registers for debugging purpose. More...
 
void enc28j60DumpPhyReg (NetInterface *interface)
 Dump PHY registers for debugging purpose. More...
 

Variables

const NicDriver enc28j60Driver
 ENC28J60 driver. More...
 

Detailed Description

ENC28J60 Ethernet controller.

License

Copyright (C) 2010-2018 Oryx Embedded SARL. All rights reserved.

This file is part of CycloneTCP Open.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Author
Oryx Embedded SARL (www.oryx-embedded.com)
Version
1.9.0

Definition in file enc28j60_driver.h.

Macro Definition Documentation

◆ BANK_0

#define BANK_0   0x0000

Definition at line 67 of file enc28j60_driver.h.

◆ BANK_1

#define BANK_1   0x0100

Definition at line 68 of file enc28j60_driver.h.

◆ BANK_2

#define BANK_2   0x0200

Definition at line 69 of file enc28j60_driver.h.

◆ BANK_3

#define BANK_3   0x0300

Definition at line 70 of file enc28j60_driver.h.

◆ EBSTCON_BISTST

#define EBSTCON_BISTST   (1 << 0)

Definition at line 289 of file enc28j60_driver.h.

◆ EBSTCON_PSEL

#define EBSTCON_PSEL   (1 << 4)

Definition at line 285 of file enc28j60_driver.h.

◆ EBSTCON_PSV0

#define EBSTCON_PSV0   (1 << 5)

Definition at line 284 of file enc28j60_driver.h.

◆ EBSTCON_PSV1

#define EBSTCON_PSV1   (1 << 6)

Definition at line 283 of file enc28j60_driver.h.

◆ EBSTCON_PSV2

#define EBSTCON_PSV2   (1 << 7)

Definition at line 282 of file enc28j60_driver.h.

◆ EBSTCON_TME

#define EBSTCON_TME   (1 << 1)

Definition at line 288 of file enc28j60_driver.h.

◆ EBSTCON_TMSEL0

#define EBSTCON_TMSEL0   (1 << 2)

Definition at line 287 of file enc28j60_driver.h.

◆ EBSTCON_TMSEL1

#define EBSTCON_TMSEL1   (1 << 3)

Definition at line 286 of file enc28j60_driver.h.

◆ ECOCON_COCON0

#define ECOCON_COCON0   (1 << 0)

Definition at line 299 of file enc28j60_driver.h.

◆ ECOCON_COCON1

#define ECOCON_COCON1   (1 << 1)

Definition at line 298 of file enc28j60_driver.h.

◆ ECOCON_COCON2

#define ECOCON_COCON2   (1 << 2)

Definition at line 297 of file enc28j60_driver.h.

◆ ECON1_BSEL0

#define ECON1_BSEL0   (1 << 0)

Definition at line 224 of file enc28j60_driver.h.

◆ ECON1_BSEL1

#define ECON1_BSEL1   (1 << 1)

Definition at line 223 of file enc28j60_driver.h.

◆ ECON1_CSUMEN

#define ECON1_CSUMEN   (1 << 4)

Definition at line 220 of file enc28j60_driver.h.

◆ ECON1_DMAST

#define ECON1_DMAST   (1 << 5)

Definition at line 219 of file enc28j60_driver.h.

◆ ECON1_RXEN

#define ECON1_RXEN   (1 << 2)

Definition at line 222 of file enc28j60_driver.h.

◆ ECON1_RXRST

#define ECON1_RXRST   (1 << 6)

Definition at line 218 of file enc28j60_driver.h.

◆ ECON1_TXRST

#define ECON1_TXRST   (1 << 7)

Definition at line 217 of file enc28j60_driver.h.

◆ ECON1_TXRTS

#define ECON1_TXRTS   (1 << 3)

Definition at line 221 of file enc28j60_driver.h.

◆ ECON2_AUTOINC

#define ECON2_AUTOINC   (1 << 7)

Definition at line 211 of file enc28j60_driver.h.

◆ ECON2_PKTDEC

#define ECON2_PKTDEC   (1 << 6)

Definition at line 212 of file enc28j60_driver.h.

◆ ECON2_PWRSV

#define ECON2_PWRSV   (1 << 5)

Definition at line 213 of file enc28j60_driver.h.

◆ ECON2_VRPS

#define ECON2_VRPS   (1 << 3)

Definition at line 214 of file enc28j60_driver.h.

◆ EFLOCON_FCEN0

#define EFLOCON_FCEN0   (1 << 0)

Definition at line 304 of file enc28j60_driver.h.

◆ EFLOCON_FCEN1

#define EFLOCON_FCEN1   (1 << 1)

Definition at line 303 of file enc28j60_driver.h.

◆ EFLOCON_FULDPXS

#define EFLOCON_FULDPXS   (1 << 2)

Definition at line 302 of file enc28j60_driver.h.

◆ EIE_DMAIE

#define EIE_DMAIE   (1 << 5)

Definition at line 187 of file enc28j60_driver.h.

◆ EIE_INTIE

#define EIE_INTIE   (1 << 7)

Definition at line 185 of file enc28j60_driver.h.

◆ EIE_LINKIE

#define EIE_LINKIE   (1 << 4)

Definition at line 188 of file enc28j60_driver.h.

◆ EIE_PKTIE

#define EIE_PKTIE   (1 << 6)

Definition at line 186 of file enc28j60_driver.h.

◆ EIE_RXERIE

#define EIE_RXERIE   (1 << 0)

Definition at line 192 of file enc28j60_driver.h.

◆ EIE_TXERIE

#define EIE_TXERIE   (1 << 1)

Definition at line 191 of file enc28j60_driver.h.

◆ EIE_TXIE

#define EIE_TXIE   (1 << 3)

Definition at line 189 of file enc28j60_driver.h.

◆ EIE_WOLIE

#define EIE_WOLIE   (1 << 2)

Definition at line 190 of file enc28j60_driver.h.

◆ EIR_DMAIF

#define EIR_DMAIF   (1 << 5)

Definition at line 196 of file enc28j60_driver.h.

◆ EIR_LINKIF

#define EIR_LINKIF   (1 << 4)

Definition at line 197 of file enc28j60_driver.h.

◆ EIR_PKTIF

#define EIR_PKTIF   (1 << 6)

Definition at line 195 of file enc28j60_driver.h.

◆ EIR_RXERIF

#define EIR_RXERIF   (1 << 0)

Definition at line 201 of file enc28j60_driver.h.

◆ EIR_TXERIF

#define EIR_TXERIF   (1 << 1)

Definition at line 200 of file enc28j60_driver.h.

◆ EIR_TXIF

#define EIR_TXIF   (1 << 3)

Definition at line 198 of file enc28j60_driver.h.

◆ EIR_WOLIF

#define EIR_WOLIF   (1 << 2)

Definition at line 199 of file enc28j60_driver.h.

◆ ENC28J60_CMD_BFC

#define ENC28J60_CMD_BFC   0xA0

Definition at line 57 of file enc28j60_driver.h.

◆ ENC28J60_CMD_BFS

#define ENC28J60_CMD_BFS   0x80

Definition at line 56 of file enc28j60_driver.h.

◆ ENC28J60_CMD_RBM

#define ENC28J60_CMD_RBM   0x3A

Definition at line 53 of file enc28j60_driver.h.

◆ ENC28J60_CMD_RCR

#define ENC28J60_CMD_RCR   0x00

Definition at line 52 of file enc28j60_driver.h.

◆ ENC28J60_CMD_SRC

#define ENC28J60_CMD_SRC   0xFF

Definition at line 58 of file enc28j60_driver.h.

◆ ENC28J60_CMD_WBM

#define ENC28J60_CMD_WBM   0x7A

Definition at line 55 of file enc28j60_driver.h.

◆ ENC28J60_CMD_WCR

#define ENC28J60_CMD_WCR   0x40

Definition at line 54 of file enc28j60_driver.h.

◆ ENC28J60_FULL_DUPLEX_SUPPORT

#define ENC28J60_FULL_DUPLEX_SUPPORT   ENABLED

Definition at line 34 of file enc28j60_driver.h.

◆ ENC28J60_PHY_REG_PHCON1

#define ENC28J60_PHY_REG_PHCON1   (PHY_REG_TYPE | 0x00)

Definition at line 174 of file enc28j60_driver.h.

◆ ENC28J60_PHY_REG_PHCON2

#define ENC28J60_PHY_REG_PHCON2   (PHY_REG_TYPE | 0x10)

Definition at line 178 of file enc28j60_driver.h.

◆ ENC28J60_PHY_REG_PHID1

#define ENC28J60_PHY_REG_PHID1   (PHY_REG_TYPE | 0x02)

Definition at line 176 of file enc28j60_driver.h.

◆ ENC28J60_PHY_REG_PHID2

#define ENC28J60_PHY_REG_PHID2   (PHY_REG_TYPE | 0x03)

Definition at line 177 of file enc28j60_driver.h.

◆ ENC28J60_PHY_REG_PHIE

#define ENC28J60_PHY_REG_PHIE   (PHY_REG_TYPE | 0x12)

Definition at line 180 of file enc28j60_driver.h.

◆ ENC28J60_PHY_REG_PHIR

#define ENC28J60_PHY_REG_PHIR   (PHY_REG_TYPE | 0x13)

Definition at line 181 of file enc28j60_driver.h.

◆ ENC28J60_PHY_REG_PHLCON

#define ENC28J60_PHY_REG_PHLCON   (PHY_REG_TYPE | 0x14)

Definition at line 182 of file enc28j60_driver.h.

◆ ENC28J60_PHY_REG_PHSTAT1

#define ENC28J60_PHY_REG_PHSTAT1   (PHY_REG_TYPE | 0x01)

Definition at line 175 of file enc28j60_driver.h.

◆ ENC28J60_PHY_REG_PHSTAT2

#define ENC28J60_PHY_REG_PHSTAT2   (PHY_REG_TYPE | 0x11)

Definition at line 179 of file enc28j60_driver.h.

◆ ENC28J60_REG_EBSTCON

#define ENC28J60_REG_EBSTCON   (ETH_REG_TYPE | BANK_3 | 0x07)

Definition at line 163 of file enc28j60_driver.h.

◆ ENC28J60_REG_EBSTCSH

#define ENC28J60_REG_EBSTCSH   (ETH_REG_TYPE | BANK_3 | 0x09)

Definition at line 165 of file enc28j60_driver.h.

◆ ENC28J60_REG_EBSTCSL

#define ENC28J60_REG_EBSTCSL   (ETH_REG_TYPE | BANK_3 | 0x08)

Definition at line 164 of file enc28j60_driver.h.

◆ ENC28J60_REG_EBSTSD

#define ENC28J60_REG_EBSTSD   (ETH_REG_TYPE | BANK_3 | 0x06)

Definition at line 162 of file enc28j60_driver.h.

◆ ENC28J60_REG_ECOCON

#define ENC28J60_REG_ECOCON   (ETH_REG_TYPE | BANK_3 | 0x15)

Definition at line 168 of file enc28j60_driver.h.

◆ ENC28J60_REG_ECON1

#define ENC28J60_REG_ECON1   (ETH_REG_TYPE | BANK_0 | 0x1F)

Definition at line 106 of file enc28j60_driver.h.

◆ ENC28J60_REG_ECON2

#define ENC28J60_REG_ECON2   (ETH_REG_TYPE | BANK_0 | 0x1E)

Definition at line 105 of file enc28j60_driver.h.

◆ ENC28J60_REG_EDMACSH

#define ENC28J60_REG_EDMACSH   (ETH_REG_TYPE | BANK_0 | 0x17)

Definition at line 101 of file enc28j60_driver.h.

◆ ENC28J60_REG_EDMACSL

#define ENC28J60_REG_EDMACSL   (ETH_REG_TYPE | BANK_0 | 0x16)

Definition at line 100 of file enc28j60_driver.h.

◆ ENC28J60_REG_EDMADSTH

#define ENC28J60_REG_EDMADSTH   (ETH_REG_TYPE | BANK_0 | 0x15)

Definition at line 99 of file enc28j60_driver.h.

◆ ENC28J60_REG_EDMADSTL

#define ENC28J60_REG_EDMADSTL   (ETH_REG_TYPE | BANK_0 | 0x14)

Definition at line 98 of file enc28j60_driver.h.

◆ ENC28J60_REG_EDMANDH

#define ENC28J60_REG_EDMANDH   (ETH_REG_TYPE | BANK_0 | 0x13)

Definition at line 97 of file enc28j60_driver.h.

◆ ENC28J60_REG_EDMANDL

#define ENC28J60_REG_EDMANDL   (ETH_REG_TYPE | BANK_0 | 0x12)

Definition at line 96 of file enc28j60_driver.h.

◆ ENC28J60_REG_EDMASTH

#define ENC28J60_REG_EDMASTH   (ETH_REG_TYPE | BANK_0 | 0x11)

Definition at line 95 of file enc28j60_driver.h.

◆ ENC28J60_REG_EDMASTL

#define ENC28J60_REG_EDMASTL   (ETH_REG_TYPE | BANK_0 | 0x10)

Definition at line 94 of file enc28j60_driver.h.

◆ ENC28J60_REG_EFLOCON

#define ENC28J60_REG_EFLOCON   (ETH_REG_TYPE | BANK_3 | 0x17)

Definition at line 169 of file enc28j60_driver.h.

◆ ENC28J60_REG_EHT0

#define ENC28J60_REG_EHT0   (ETH_REG_TYPE | BANK_1 | 0x00)

Definition at line 109 of file enc28j60_driver.h.

◆ ENC28J60_REG_EHT1

#define ENC28J60_REG_EHT1   (ETH_REG_TYPE | BANK_1 | 0x01)

Definition at line 110 of file enc28j60_driver.h.

◆ ENC28J60_REG_EHT2

#define ENC28J60_REG_EHT2   (ETH_REG_TYPE | BANK_1 | 0x02)

Definition at line 111 of file enc28j60_driver.h.

◆ ENC28J60_REG_EHT3

#define ENC28J60_REG_EHT3   (ETH_REG_TYPE | BANK_1 | 0x03)

Definition at line 112 of file enc28j60_driver.h.

◆ ENC28J60_REG_EHT4

#define ENC28J60_REG_EHT4   (ETH_REG_TYPE | BANK_1 | 0x04)

Definition at line 113 of file enc28j60_driver.h.

◆ ENC28J60_REG_EHT5

#define ENC28J60_REG_EHT5   (ETH_REG_TYPE | BANK_1 | 0x05)

Definition at line 114 of file enc28j60_driver.h.

◆ ENC28J60_REG_EHT6

#define ENC28J60_REG_EHT6   (ETH_REG_TYPE | BANK_1 | 0x06)

Definition at line 115 of file enc28j60_driver.h.

◆ ENC28J60_REG_EHT7

#define ENC28J60_REG_EHT7   (ETH_REG_TYPE | BANK_1 | 0x07)

Definition at line 116 of file enc28j60_driver.h.

◆ ENC28J60_REG_EIE

#define ENC28J60_REG_EIE   (ETH_REG_TYPE | BANK_0 | 0x1B)

Definition at line 102 of file enc28j60_driver.h.

◆ ENC28J60_REG_EIR

#define ENC28J60_REG_EIR   (ETH_REG_TYPE | BANK_0 | 0x1C)

Definition at line 103 of file enc28j60_driver.h.

◆ ENC28J60_REG_EPAUSH

#define ENC28J60_REG_EPAUSH   (ETH_REG_TYPE | BANK_3 | 0x19)

Definition at line 171 of file enc28j60_driver.h.

◆ ENC28J60_REG_EPAUSL

#define ENC28J60_REG_EPAUSL   (ETH_REG_TYPE | BANK_3 | 0x18)

Definition at line 170 of file enc28j60_driver.h.

◆ ENC28J60_REG_EPKTCNT

#define ENC28J60_REG_EPKTCNT   (ETH_REG_TYPE | BANK_1 | 0x19)

Definition at line 132 of file enc28j60_driver.h.

◆ ENC28J60_REG_EPMCSH

#define ENC28J60_REG_EPMCSH   (ETH_REG_TYPE | BANK_1 | 0x11)

Definition at line 126 of file enc28j60_driver.h.

◆ ENC28J60_REG_EPMCSL

#define ENC28J60_REG_EPMCSL   (ETH_REG_TYPE | BANK_1 | 0x10)

Definition at line 125 of file enc28j60_driver.h.

◆ ENC28J60_REG_EPMM0

#define ENC28J60_REG_EPMM0   (ETH_REG_TYPE | BANK_1 | 0x08)

Definition at line 117 of file enc28j60_driver.h.

◆ ENC28J60_REG_EPMM1

#define ENC28J60_REG_EPMM1   (ETH_REG_TYPE | BANK_1 | 0x09)

Definition at line 118 of file enc28j60_driver.h.

◆ ENC28J60_REG_EPMM2

#define ENC28J60_REG_EPMM2   (ETH_REG_TYPE | BANK_1 | 0x0A)

Definition at line 119 of file enc28j60_driver.h.

◆ ENC28J60_REG_EPMM3

#define ENC28J60_REG_EPMM3   (ETH_REG_TYPE | BANK_1 | 0x0B)

Definition at line 120 of file enc28j60_driver.h.

◆ ENC28J60_REG_EPMM4

#define ENC28J60_REG_EPMM4   (ETH_REG_TYPE | BANK_1 | 0x0C)

Definition at line 121 of file enc28j60_driver.h.

◆ ENC28J60_REG_EPMM5

#define ENC28J60_REG_EPMM5   (ETH_REG_TYPE | BANK_1 | 0x0D)

Definition at line 122 of file enc28j60_driver.h.

◆ ENC28J60_REG_EPMM6

#define ENC28J60_REG_EPMM6   (ETH_REG_TYPE | BANK_1 | 0x0E)

Definition at line 123 of file enc28j60_driver.h.

◆ ENC28J60_REG_EPMM7

#define ENC28J60_REG_EPMM7   (ETH_REG_TYPE | BANK_1 | 0x0F)

Definition at line 124 of file enc28j60_driver.h.

◆ ENC28J60_REG_EPMOH

#define ENC28J60_REG_EPMOH   (ETH_REG_TYPE | BANK_1 | 0x15)

Definition at line 128 of file enc28j60_driver.h.

◆ ENC28J60_REG_EPMOL

#define ENC28J60_REG_EPMOL   (ETH_REG_TYPE | BANK_1 | 0x14)

Definition at line 127 of file enc28j60_driver.h.

◆ ENC28J60_REG_ERDPTH

#define ENC28J60_REG_ERDPTH   (ETH_REG_TYPE | BANK_0 | 0x01)

Definition at line 79 of file enc28j60_driver.h.

◆ ENC28J60_REG_ERDPTL

#define ENC28J60_REG_ERDPTL   (ETH_REG_TYPE | BANK_0 | 0x00)

Definition at line 78 of file enc28j60_driver.h.

◆ ENC28J60_REG_EREVID

#define ENC28J60_REG_EREVID   (ETH_REG_TYPE | BANK_3 | 0x12)

Definition at line 167 of file enc28j60_driver.h.

◆ ENC28J60_REG_ERXFCON

#define ENC28J60_REG_ERXFCON   (ETH_REG_TYPE | BANK_1 | 0x18)

Definition at line 131 of file enc28j60_driver.h.

◆ ENC28J60_REG_ERXNDH

#define ENC28J60_REG_ERXNDH   (ETH_REG_TYPE | BANK_0 | 0x0B)

Definition at line 89 of file enc28j60_driver.h.

◆ ENC28J60_REG_ERXNDL

#define ENC28J60_REG_ERXNDL   (ETH_REG_TYPE | BANK_0 | 0x0A)

Definition at line 88 of file enc28j60_driver.h.

◆ ENC28J60_REG_ERXRDPTH

#define ENC28J60_REG_ERXRDPTH   (ETH_REG_TYPE | BANK_0 | 0x0D)

Definition at line 91 of file enc28j60_driver.h.

◆ ENC28J60_REG_ERXRDPTL

#define ENC28J60_REG_ERXRDPTL   (ETH_REG_TYPE | BANK_0 | 0x0C)

Definition at line 90 of file enc28j60_driver.h.

◆ ENC28J60_REG_ERXSTH

#define ENC28J60_REG_ERXSTH   (ETH_REG_TYPE | BANK_0 | 0x09)

Definition at line 87 of file enc28j60_driver.h.

◆ ENC28J60_REG_ERXSTL

#define ENC28J60_REG_ERXSTL   (ETH_REG_TYPE | BANK_0 | 0x08)

Definition at line 86 of file enc28j60_driver.h.

◆ ENC28J60_REG_ERXWRPTH

#define ENC28J60_REG_ERXWRPTH   (ETH_REG_TYPE | BANK_0 | 0x0F)

Definition at line 93 of file enc28j60_driver.h.

◆ ENC28J60_REG_ERXWRPTL

#define ENC28J60_REG_ERXWRPTL   (ETH_REG_TYPE | BANK_0 | 0x0E)

Definition at line 92 of file enc28j60_driver.h.

◆ ENC28J60_REG_ESTAT

#define ENC28J60_REG_ESTAT   (ETH_REG_TYPE | BANK_0 | 0x1D)

Definition at line 104 of file enc28j60_driver.h.

◆ ENC28J60_REG_ETXNDH

#define ENC28J60_REG_ETXNDH   (ETH_REG_TYPE | BANK_0 | 0x07)

Definition at line 85 of file enc28j60_driver.h.

◆ ENC28J60_REG_ETXNDL

#define ENC28J60_REG_ETXNDL   (ETH_REG_TYPE | BANK_0 | 0x06)

Definition at line 84 of file enc28j60_driver.h.

◆ ENC28J60_REG_ETXSTH

#define ENC28J60_REG_ETXSTH   (ETH_REG_TYPE | BANK_0 | 0x05)

Definition at line 83 of file enc28j60_driver.h.

◆ ENC28J60_REG_ETXSTL

#define ENC28J60_REG_ETXSTL   (ETH_REG_TYPE | BANK_0 | 0x04)

Definition at line 82 of file enc28j60_driver.h.

◆ ENC28J60_REG_EWOLIE

#define ENC28J60_REG_EWOLIE   (ETH_REG_TYPE | BANK_1 | 0x16)

Definition at line 129 of file enc28j60_driver.h.

◆ ENC28J60_REG_EWOLIR

#define ENC28J60_REG_EWOLIR   (ETH_REG_TYPE | BANK_1 | 0x17)

Definition at line 130 of file enc28j60_driver.h.

◆ ENC28J60_REG_EWRPTH

#define ENC28J60_REG_EWRPTH   (ETH_REG_TYPE | BANK_0 | 0x03)

Definition at line 81 of file enc28j60_driver.h.

◆ ENC28J60_REG_EWRPTL

#define ENC28J60_REG_EWRPTL   (ETH_REG_TYPE | BANK_0 | 0x02)

Definition at line 80 of file enc28j60_driver.h.

◆ ENC28J60_REG_MAADR1

#define ENC28J60_REG_MAADR1   (MAC_REG_TYPE | BANK_3 | 0x04)

Definition at line 160 of file enc28j60_driver.h.

◆ ENC28J60_REG_MAADR2

#define ENC28J60_REG_MAADR2   (MAC_REG_TYPE | BANK_3 | 0x05)

Definition at line 161 of file enc28j60_driver.h.

◆ ENC28J60_REG_MAADR3

#define ENC28J60_REG_MAADR3   (MAC_REG_TYPE | BANK_3 | 0x02)

Definition at line 158 of file enc28j60_driver.h.

◆ ENC28J60_REG_MAADR4

#define ENC28J60_REG_MAADR4   (MAC_REG_TYPE | BANK_3 | 0x03)

Definition at line 159 of file enc28j60_driver.h.

◆ ENC28J60_REG_MAADR5

#define ENC28J60_REG_MAADR5   (MAC_REG_TYPE | BANK_3 | 0x00)

Definition at line 156 of file enc28j60_driver.h.

◆ ENC28J60_REG_MAADR6

#define ENC28J60_REG_MAADR6   (MAC_REG_TYPE | BANK_3 | 0x01)

Definition at line 157 of file enc28j60_driver.h.

◆ ENC28J60_REG_MABBIPG

#define ENC28J60_REG_MABBIPG   (MAC_REG_TYPE | BANK_2 | 0x04)

Definition at line 139 of file enc28j60_driver.h.

◆ ENC28J60_REG_MACLCON1

#define ENC28J60_REG_MACLCON1   (MAC_REG_TYPE | BANK_2 | 0x08)

Definition at line 142 of file enc28j60_driver.h.

◆ ENC28J60_REG_MACLCON2

#define ENC28J60_REG_MACLCON2   (MAC_REG_TYPE | BANK_2 | 0x09)

Definition at line 143 of file enc28j60_driver.h.

◆ ENC28J60_REG_MACON1

#define ENC28J60_REG_MACON1   (MAC_REG_TYPE | BANK_2 | 0x00)

Definition at line 135 of file enc28j60_driver.h.

◆ ENC28J60_REG_MACON2

#define ENC28J60_REG_MACON2   (MAC_REG_TYPE | BANK_2 | 0x01)

Definition at line 136 of file enc28j60_driver.h.

◆ ENC28J60_REG_MACON3

#define ENC28J60_REG_MACON3   (MAC_REG_TYPE | BANK_2 | 0x02)

Definition at line 137 of file enc28j60_driver.h.

◆ ENC28J60_REG_MACON4

#define ENC28J60_REG_MACON4   (MAC_REG_TYPE | BANK_2 | 0x03)

Definition at line 138 of file enc28j60_driver.h.

◆ ENC28J60_REG_MAIPGH

#define ENC28J60_REG_MAIPGH   (MAC_REG_TYPE | BANK_2 | 0x07)

Definition at line 141 of file enc28j60_driver.h.

◆ ENC28J60_REG_MAIPGL

#define ENC28J60_REG_MAIPGL   (MAC_REG_TYPE | BANK_2 | 0x06)

Definition at line 140 of file enc28j60_driver.h.

◆ ENC28J60_REG_MAMXFLH

#define ENC28J60_REG_MAMXFLH   (MAC_REG_TYPE | BANK_2 | 0x0B)

Definition at line 145 of file enc28j60_driver.h.

◆ ENC28J60_REG_MAMXFLL

#define ENC28J60_REG_MAMXFLL   (MAC_REG_TYPE | BANK_2 | 0x0A)

Definition at line 144 of file enc28j60_driver.h.

◆ ENC28J60_REG_MAPHSUP

#define ENC28J60_REG_MAPHSUP   (MAC_REG_TYPE | BANK_2 | 0x0D)

Definition at line 146 of file enc28j60_driver.h.

◆ ENC28J60_REG_MICMD

#define ENC28J60_REG_MICMD   (MII_REG_TYPE | BANK_2 | 0x12)

Definition at line 148 of file enc28j60_driver.h.

◆ ENC28J60_REG_MICON

#define ENC28J60_REG_MICON   (MII_REG_TYPE | BANK_2 | 0x11)

Definition at line 147 of file enc28j60_driver.h.

◆ ENC28J60_REG_MIRDH

#define ENC28J60_REG_MIRDH   (MII_REG_TYPE | BANK_2 | 0x19)

Definition at line 153 of file enc28j60_driver.h.

◆ ENC28J60_REG_MIRDL

#define ENC28J60_REG_MIRDL   (MII_REG_TYPE | BANK_2 | 0x18)

Definition at line 152 of file enc28j60_driver.h.

◆ ENC28J60_REG_MIREGADR

#define ENC28J60_REG_MIREGADR   (MII_REG_TYPE | BANK_2 | 0x14)

Definition at line 149 of file enc28j60_driver.h.

◆ ENC28J60_REG_MISTAT

#define ENC28J60_REG_MISTAT   (MII_REG_TYPE | BANK_3 | 0x0A)

Definition at line 166 of file enc28j60_driver.h.

◆ ENC28J60_REG_MIWRH

#define ENC28J60_REG_MIWRH   (MII_REG_TYPE | BANK_2 | 0x17)

Definition at line 151 of file enc28j60_driver.h.

◆ ENC28J60_REG_MIWRL

#define ENC28J60_REG_MIWRL   (MII_REG_TYPE | BANK_2 | 0x16)

Definition at line 150 of file enc28j60_driver.h.

◆ ENC28J60_REV_B1

#define ENC28J60_REV_B1   0x02

Definition at line 40 of file enc28j60_driver.h.

◆ ENC28J60_REV_B4

#define ENC28J60_REV_B4   0x04

Definition at line 41 of file enc28j60_driver.h.

◆ ENC28J60_REV_B5

#define ENC28J60_REV_B5   0x05

Definition at line 42 of file enc28j60_driver.h.

◆ ENC28J60_REV_B7

#define ENC28J60_REV_B7   0x06

Definition at line 43 of file enc28j60_driver.h.

◆ ENC28J60_RX_BUFFER_START

#define ENC28J60_RX_BUFFER_START   0x0000

Definition at line 46 of file enc28j60_driver.h.

◆ ENC28J60_RX_BUFFER_STOP

#define ENC28J60_RX_BUFFER_STOP   0x17FF

Definition at line 47 of file enc28j60_driver.h.

◆ ENC28J60_TX_BUFFER_START

#define ENC28J60_TX_BUFFER_START   0x1800

Definition at line 48 of file enc28j60_driver.h.

◆ ENC28J60_TX_BUFFER_STOP

#define ENC28J60_TX_BUFFER_STOP   0x1FFF

Definition at line 49 of file enc28j60_driver.h.

◆ ERXFCON_ANDOR

#define ERXFCON_ANDOR   (1 << 6)

Definition at line 228 of file enc28j60_driver.h.

◆ ERXFCON_BCEN

#define ERXFCON_BCEN   (1 << 0)

Definition at line 234 of file enc28j60_driver.h.

◆ ERXFCON_CRCEN

#define ERXFCON_CRCEN   (1 << 5)

Definition at line 229 of file enc28j60_driver.h.

◆ ERXFCON_HTEN

#define ERXFCON_HTEN   (1 << 2)

Definition at line 232 of file enc28j60_driver.h.

◆ ERXFCON_MCEN

#define ERXFCON_MCEN   (1 << 1)

Definition at line 233 of file enc28j60_driver.h.

◆ ERXFCON_MPEN

#define ERXFCON_MPEN   (1 << 3)

Definition at line 231 of file enc28j60_driver.h.

◆ ERXFCON_PMEN

#define ERXFCON_PMEN   (1 << 4)

Definition at line 230 of file enc28j60_driver.h.

◆ ERXFCON_UCEN

#define ERXFCON_UCEN   (1 << 7)

Definition at line 227 of file enc28j60_driver.h.

◆ ESTAT_CLKRDY

#define ESTAT_CLKRDY   (1 << 0)

Definition at line 208 of file enc28j60_driver.h.

◆ ESTAT_INT

#define ESTAT_INT   (1 << 7)

Definition at line 204 of file enc28j60_driver.h.

◆ ESTAT_LATECOL

#define ESTAT_LATECOL   (1 << 4)

Definition at line 205 of file enc28j60_driver.h.

◆ ESTAT_RXBUSY

#define ESTAT_RXBUSY   (1 << 2)

Definition at line 206 of file enc28j60_driver.h.

◆ ESTAT_TXABRT

#define ESTAT_TXABRT   (1 << 1)

Definition at line 207 of file enc28j60_driver.h.

◆ ETH_REG_TYPE

#define ETH_REG_TYPE   0x0000

Definition at line 61 of file enc28j60_driver.h.

◆ MAC_REG_TYPE

#define MAC_REG_TYPE   0x1000

Definition at line 62 of file enc28j60_driver.h.

◆ MACON1_LOOPBK

#define MACON1_LOOPBK   (1 << 4)

Definition at line 237 of file enc28j60_driver.h.

◆ MACON1_MARXEN

#define MACON1_MARXEN   (1 << 0)

Definition at line 241 of file enc28j60_driver.h.

◆ MACON1_PASSALL

#define MACON1_PASSALL   (1 << 1)

Definition at line 240 of file enc28j60_driver.h.

◆ MACON1_RXPAUS

#define MACON1_RXPAUS   (1 << 2)

Definition at line 239 of file enc28j60_driver.h.

◆ MACON1_TXPAUS

#define MACON1_TXPAUS   (1 << 3)

Definition at line 238 of file enc28j60_driver.h.

◆ MACON2_MARST

#define MACON2_MARST   (1 << 7)

Definition at line 244 of file enc28j60_driver.h.

◆ MACON2_MARXRST

#define MACON2_MARXRST   (1 << 3)

Definition at line 246 of file enc28j60_driver.h.

◆ MACON2_MATXRST

#define MACON2_MATXRST   (1 << 1)

Definition at line 248 of file enc28j60_driver.h.

◆ MACON2_RFUNRST

#define MACON2_RFUNRST   (1 << 2)

Definition at line 247 of file enc28j60_driver.h.

◆ MACON2_RNDRST

#define MACON2_RNDRST   (1 << 6)

Definition at line 245 of file enc28j60_driver.h.

◆ MACON2_TFUNRST

#define MACON2_TFUNRST   (1 << 0)

Definition at line 249 of file enc28j60_driver.h.

◆ MACON3_FRMLNEN

#define MACON3_FRMLNEN   (1 << 1)

Definition at line 258 of file enc28j60_driver.h.

◆ MACON3_FULDPX

#define MACON3_FULDPX   (1 << 0)

Definition at line 259 of file enc28j60_driver.h.

◆ MACON3_HFRMLEN

#define MACON3_HFRMLEN   (1 << 2)

Definition at line 257 of file enc28j60_driver.h.

◆ MACON3_PADCFG

#define MACON3_PADCFG (   x)    ((x) << 5)

Definition at line 261 of file enc28j60_driver.h.

◆ MACON3_PADCFG0

#define MACON3_PADCFG0   (1 << 5)

Definition at line 254 of file enc28j60_driver.h.

◆ MACON3_PADCFG1

#define MACON3_PADCFG1   (1 << 6)

Definition at line 253 of file enc28j60_driver.h.

◆ MACON3_PADCFG2

#define MACON3_PADCFG2   (1 << 7)

Definition at line 252 of file enc28j60_driver.h.

◆ MACON3_PHDRLEN

#define MACON3_PHDRLEN   (1 << 3)

Definition at line 256 of file enc28j60_driver.h.

◆ MACON3_TXCRCEN

#define MACON3_TXCRCEN   (1 << 4)

Definition at line 255 of file enc28j60_driver.h.

◆ MACON4_BPEN

#define MACON4_BPEN   (1 << 5)

Definition at line 265 of file enc28j60_driver.h.

◆ MACON4_DEFER

#define MACON4_DEFER   (1 << 6)

Definition at line 264 of file enc28j60_driver.h.

◆ MACON4_LONGPRE

#define MACON4_LONGPRE   (1 << 1)

Definition at line 267 of file enc28j60_driver.h.

◆ MACON4_NOBKOFF

#define MACON4_NOBKOFF   (1 << 4)

Definition at line 266 of file enc28j60_driver.h.

◆ MACON4_PUREPRE

#define MACON4_PUREPRE   (1 << 0)

Definition at line 268 of file enc28j60_driver.h.

◆ MAPHSUP_RSTINTFC

#define MAPHSUP_RSTINTFC   (1 << 7)

Definition at line 271 of file enc28j60_driver.h.

◆ MAPHSUP_RSTRMII

#define MAPHSUP_RSTRMII   (1 << 3)

Definition at line 272 of file enc28j60_driver.h.

◆ MICMD_MIIRD

#define MICMD_MIIRD   (1 << 0)

Definition at line 279 of file enc28j60_driver.h.

◆ MICMD_MIISCAN

#define MICMD_MIISCAN   (1 << 1)

Definition at line 278 of file enc28j60_driver.h.

◆ MICON_RSTMII

#define MICON_RSTMII   (1 << 7)

Definition at line 275 of file enc28j60_driver.h.

◆ MII_REG_TYPE

#define MII_REG_TYPE   0x2000

Definition at line 63 of file enc28j60_driver.h.

◆ MISTAT_BUSY

#define MISTAT_BUSY   (1 << 0)

Definition at line 294 of file enc28j60_driver.h.

◆ MISTAT_NVALID

#define MISTAT_NVALID   (1 << 2)

Definition at line 292 of file enc28j60_driver.h.

◆ MISTAT_SCAN

#define MISTAT_SCAN   (1 << 1)

Definition at line 293 of file enc28j60_driver.h.

◆ PHCON1_PDPXMD

#define PHCON1_PDPXMD   (1 << 8)

Definition at line 310 of file enc28j60_driver.h.

◆ PHCON1_PLOOPBK

#define PHCON1_PLOOPBK   (1 << 14)

Definition at line 308 of file enc28j60_driver.h.

◆ PHCON1_PPWRSV

#define PHCON1_PPWRSV   (1 << 11)

Definition at line 309 of file enc28j60_driver.h.

◆ PHCON1_PRST

#define PHCON1_PRST   (1 << 15)

Definition at line 307 of file enc28j60_driver.h.

◆ PHCON2_FRCLINK

#define PHCON2_FRCLINK   (1 << 14)

Definition at line 319 of file enc28j60_driver.h.

◆ PHCON2_HDLDIS

#define PHCON2_HDLDIS   (1 << 8)

Definition at line 322 of file enc28j60_driver.h.

◆ PHCON2_JABBER

#define PHCON2_JABBER   (1 << 10)

Definition at line 321 of file enc28j60_driver.h.

◆ PHCON2_TXDIS

#define PHCON2_TXDIS   (1 << 13)

Definition at line 320 of file enc28j60_driver.h.

◆ PHIE_PGEIE

#define PHIE_PGEIE   (1 << 1)

Definition at line 334 of file enc28j60_driver.h.

◆ PHIE_PLNKIE

#define PHIE_PLNKIE   (1 << 4)

Definition at line 333 of file enc28j60_driver.h.

◆ PHIR_PGIF

#define PHIR_PGIF   (1 << 2)

Definition at line 338 of file enc28j60_driver.h.

◆ PHIR_PLNKIF

#define PHIR_PLNKIF   (1 << 4)

Definition at line 337 of file enc28j60_driver.h.

◆ PHLCON_LACFG

#define PHLCON_LACFG (   x)    ((x) << 8)

Definition at line 353 of file enc28j60_driver.h.

◆ PHLCON_LACFG0

#define PHLCON_LACFG0   (1 << 8)

Definition at line 344 of file enc28j60_driver.h.

◆ PHLCON_LACFG1

#define PHLCON_LACFG1   (1 << 9)

Definition at line 343 of file enc28j60_driver.h.

◆ PHLCON_LACFG2

#define PHLCON_LACFG2   (1 << 10)

Definition at line 342 of file enc28j60_driver.h.

◆ PHLCON_LACFG3

#define PHLCON_LACFG3   (1 << 11)

Definition at line 341 of file enc28j60_driver.h.

◆ PHLCON_LBCFG

#define PHLCON_LBCFG (   x)    ((x) << 4)

Definition at line 354 of file enc28j60_driver.h.

◆ PHLCON_LBCFG0

#define PHLCON_LBCFG0   (1 << 4)

Definition at line 348 of file enc28j60_driver.h.

◆ PHLCON_LBCFG1

#define PHLCON_LBCFG1   (1 << 5)

Definition at line 347 of file enc28j60_driver.h.

◆ PHLCON_LBCFG2

#define PHLCON_LBCFG2   (1 << 6)

Definition at line 346 of file enc28j60_driver.h.

◆ PHLCON_LBCFG3

#define PHLCON_LBCFG3   (1 << 7)

Definition at line 345 of file enc28j60_driver.h.

◆ PHLCON_LFRQ

#define PHLCON_LFRQ (   x)    ((x) << 2)

Definition at line 355 of file enc28j60_driver.h.

◆ PHLCON_LFRQ0

#define PHLCON_LFRQ0   (1 << 2)

Definition at line 350 of file enc28j60_driver.h.

◆ PHLCON_LFRQ1

#define PHLCON_LFRQ1   (1 << 3)

Definition at line 349 of file enc28j60_driver.h.

◆ PHLCON_STRCH

#define PHLCON_STRCH   (1 << 1)

Definition at line 351 of file enc28j60_driver.h.

◆ PHSTAT1_JBSTAT

#define PHSTAT1_JBSTAT   (1 << 1)

Definition at line 316 of file enc28j60_driver.h.

◆ PHSTAT1_LLSTAT

#define PHSTAT1_LLSTAT   (1 << 2)

Definition at line 315 of file enc28j60_driver.h.

◆ PHSTAT1_PFDPX

#define PHSTAT1_PFDPX   (1 << 12)

Definition at line 313 of file enc28j60_driver.h.

◆ PHSTAT1_PHDPX

#define PHSTAT1_PHDPX   (1 << 11)

Definition at line 314 of file enc28j60_driver.h.

◆ PHSTAT2_COLSTAT

#define PHSTAT2_COLSTAT   (1 << 11)

Definition at line 327 of file enc28j60_driver.h.

◆ PHSTAT2_DPXSTAT

#define PHSTAT2_DPXSTAT   (1 << 9)

Definition at line 329 of file enc28j60_driver.h.

◆ PHSTAT2_LSTAT

#define PHSTAT2_LSTAT   (1 << 10)

Definition at line 328 of file enc28j60_driver.h.

◆ PHSTAT2_PLRITY

#define PHSTAT2_PLRITY   (1 << 4)

Definition at line 330 of file enc28j60_driver.h.

◆ PHSTAT2_RXSTAT

#define PHSTAT2_RXSTAT   (1 << 12)

Definition at line 326 of file enc28j60_driver.h.

◆ PHSTAT2_TXSTAT

#define PHSTAT2_TXSTAT   (1 << 13)

Definition at line 325 of file enc28j60_driver.h.

◆ PHY_REG_TYPE

#define PHY_REG_TYPE   0x3000

Definition at line 64 of file enc28j60_driver.h.

◆ REG_ADDR_MASK

#define REG_ADDR_MASK   0x001F

Definition at line 75 of file enc28j60_driver.h.

◆ REG_BANK_MASK

#define REG_BANK_MASK   0x0F00

Definition at line 74 of file enc28j60_driver.h.

◆ REG_TYPE_MASK

#define REG_TYPE_MASK   0xF000

Definition at line 73 of file enc28j60_driver.h.

◆ RSV_BROADCAST_PACKET

#define RSV_BROADCAST_PACKET   0x0200

Definition at line 369 of file enc28j60_driver.h.

◆ RSV_CARRIER_EVENT

#define RSV_CARRIER_EVENT   0x0004

Definition at line 375 of file enc28j60_driver.h.

◆ RSV_CONTROL_FRAME

#define RSV_CONTROL_FRAME   0x0800

Definition at line 367 of file enc28j60_driver.h.

◆ RSV_CRC_ERROR

#define RSV_CRC_ERROR   0x0010

Definition at line 374 of file enc28j60_driver.h.

◆ RSV_DRIBBLE_NIBBLE

#define RSV_DRIBBLE_NIBBLE   0x0400

Definition at line 368 of file enc28j60_driver.h.

◆ RSV_DROP_EVENT

#define RSV_DROP_EVENT   0x0001

Definition at line 376 of file enc28j60_driver.h.

◆ RSV_LENGTH_CHECK_ERROR

#define RSV_LENGTH_CHECK_ERROR   0x0020

Definition at line 373 of file enc28j60_driver.h.

◆ RSV_LENGTH_OUT_OF_RANGE

#define RSV_LENGTH_OUT_OF_RANGE   0x0040

Definition at line 372 of file enc28j60_driver.h.

◆ RSV_MULTICAST_PACKET

#define RSV_MULTICAST_PACKET   0x0100

Definition at line 370 of file enc28j60_driver.h.

◆ RSV_PAUSE_CONTROL_FRAME

#define RSV_PAUSE_CONTROL_FRAME   0x1000

Definition at line 366 of file enc28j60_driver.h.

◆ RSV_RECEIVED_OK

#define RSV_RECEIVED_OK   0x0080

Definition at line 371 of file enc28j60_driver.h.

◆ RSV_UNKNOWN_OPCODE

#define RSV_UNKNOWN_OPCODE   0x2000

Definition at line 365 of file enc28j60_driver.h.

◆ RSV_VLAN_TYPE

#define RSV_VLAN_TYPE   0x4000

Definition at line 364 of file enc28j60_driver.h.

◆ TX_CTRL_PCRCEN

#define TX_CTRL_PCRCEN   (1 << 1)

Definition at line 360 of file enc28j60_driver.h.

◆ TX_CTRL_PHUGEEN

#define TX_CTRL_PHUGEEN   (1 << 3)

Definition at line 358 of file enc28j60_driver.h.

◆ TX_CTRL_POVERRIDE

#define TX_CTRL_POVERRIDE   (1 << 0)

Definition at line 361 of file enc28j60_driver.h.

◆ TX_CTRL_PPADEN

#define TX_CTRL_PPADEN   (1 << 2)

Definition at line 359 of file enc28j60_driver.h.

Function Documentation

◆ enc28j60CalcCrc()

uint32_t enc28j60CalcCrc ( const void *  data,
size_t  length 
)

CRC calculation using the polynomial 0x4C11DB7.

Parameters
[in]dataPointer to the data over which to calculate the CRC
[in]lengthNumber of bytes to process
Returns
Resulting CRC value

Definition at line 920 of file enc28j60_driver.c.

◆ enc28j60ClearBit()

void enc28j60ClearBit ( NetInterface interface,
uint16_t  address,
uint16_t  mask 
)

Clear bit field.

Parameters
[in]interfaceUnderlying network interface
[in]addressRegister address
[in]maskBits to clear in the target register

Definition at line 898 of file enc28j60_driver.c.

◆ enc28j60DisableIrq()

void enc28j60DisableIrq ( NetInterface interface)

Disable interrupts.

Parameters
[in]interfaceUnderlying network interface

Definition at line 256 of file enc28j60_driver.c.

◆ enc28j60DumpPhyReg()

void enc28j60DumpPhyReg ( NetInterface interface)

Dump PHY registers for debugging purpose.

Parameters
[in]interfaceUnderlying network interface

Definition at line 1003 of file enc28j60_driver.c.

◆ enc28j60DumpReg()

void enc28j60DumpReg ( NetInterface interface)

Dump registers for debugging purpose.

Parameters
[in]interfaceUnderlying network interface

Definition at line 954 of file enc28j60_driver.c.

◆ enc28j60EnableIrq()

void enc28j60EnableIrq ( NetInterface interface)

Enable interrupts.

Parameters
[in]interfaceUnderlying network interface

Definition at line 244 of file enc28j60_driver.c.

◆ enc28j60EventHandler()

void enc28j60EventHandler ( NetInterface interface)

ENC28J60 event handler.

Parameters
[in]interfaceUnderlying network interface

Definition at line 331 of file enc28j60_driver.c.

◆ enc28j60Init()

error_t enc28j60Init ( NetInterface interface)

ENC28J60 controller initialization.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 70 of file enc28j60_driver.c.

◆ enc28j60IrqHandler()

bool_t enc28j60IrqHandler ( NetInterface interface)

ENC28J60 interrupt service routine.

Parameters
[in]interfaceUnderlying network interface
Returns
TRUE if a higher priority task must be woken. Else FALSE is returned

Definition at line 269 of file enc28j60_driver.c.

◆ enc28j60ReadBuffer()

void enc28j60ReadBuffer ( NetInterface interface,
uint8_t *  data,
size_t  length 
)

Read SRAM buffer.

Parameters
[in]interfaceUnderlying network interface
[in]dataBuffer where to store the incoming data
[in]lengthNumber of data to read

Definition at line 849 of file enc28j60_driver.c.

◆ enc28j60ReadPhyReg()

uint16_t enc28j60ReadPhyReg ( NetInterface interface,
uint16_t  address 
)

Read PHY register.

Parameters
[in]interfaceUnderlying network interface
[in]addressPHY register address
Returns
Register value

Definition at line 765 of file enc28j60_driver.c.

◆ enc28j60ReadReg()

uint8_t enc28j60ReadReg ( NetInterface interface,
uint16_t  address 
)

Read ENC28J60 register.

Parameters
[in]interfaceUnderlying network interface
[in]addressRegister address
Returns
Register value

Definition at line 708 of file enc28j60_driver.c.

◆ enc28j60ReceivePacket()

error_t enc28j60ReceivePacket ( NetInterface interface)

Receive a packet.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 468 of file enc28j60_driver.c.

◆ enc28j60SelectBank()

void enc28j60SelectBank ( NetInterface interface,
uint16_t  address 
)

Bank selection.

Parameters
[in]interfaceUnderlying network interface
[in]addressRegister address

Definition at line 630 of file enc28j60_driver.c.

◆ enc28j60SendPacket()

error_t enc28j60SendPacket ( NetInterface interface,
const NetBuffer buffer,
size_t  offset 
)

Send a packet.

Parameters
[in]interfaceUnderlying network interface
[in]bufferMulti-part buffer containing the data to send
[in]offsetOffset to the first data byte
Returns
Error code

Definition at line 405 of file enc28j60_driver.c.

◆ enc28j60SetBit()

void enc28j60SetBit ( NetInterface interface,
uint16_t  address,
uint16_t  mask 
)

Set bit field.

Parameters
[in]interfaceUnderlying network interface
[in]addressRegister address
[in]maskBits to set in the target register

Definition at line 876 of file enc28j60_driver.c.

◆ enc28j60SoftReset()

void enc28j60SoftReset ( NetInterface interface)

ENC28J60 controller reset.

Parameters
[in]interfaceUnderlying network interface

Definition at line 611 of file enc28j60_driver.c.

◆ enc28j60Tick()

void enc28j60Tick ( NetInterface interface)

ENC28J60 timer handler.

Parameters
[in]interfaceUnderlying network interface

Definition at line 234 of file enc28j60_driver.c.

◆ enc28j60UpdateMacAddrFilter()

error_t enc28j60UpdateMacAddrFilter ( NetInterface interface)

Configure MAC address filtering.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 548 of file enc28j60_driver.c.

◆ enc28j60WriteBuffer()

void enc28j60WriteBuffer ( NetInterface interface,
const NetBuffer buffer,
size_t  offset 
)

Write SRAM buffer.

Parameters
[in]interfaceUnderlying network interface
[in]bufferMulti-part buffer containing the data to be written
[in]offsetOffset to the first data byte

Definition at line 796 of file enc28j60_driver.c.

◆ enc28j60WritePhyReg()

void enc28j60WritePhyReg ( NetInterface interface,
uint16_t  address,
uint16_t  data 
)

Write PHY register.

Parameters
[in]interfaceUnderlying network interface
[in]addressPHY register address
[in]dataRegister value

Definition at line 743 of file enc28j60_driver.c.

◆ enc28j60WriteReg()

void enc28j60WriteReg ( NetInterface interface,
uint16_t  address,
uint8_t  data 
)

Write ENC28J60 register.

Parameters
[in]interfaceUnderlying network interface
[in]addressRegister address
[in]dataRegister value

Definition at line 683 of file enc28j60_driver.c.

Variable Documentation

◆ enc28j60Driver

const NicDriver enc28j60Driver

ENC28J60 driver.

Definition at line 43 of file enc28j60_driver.c.