enc28j60_driver.c
bool_t osSetEventFromIsr(OsEvent *event)
Set an event object to the signaled state from an interrupt service routine.
Definition: os_port_chibios.c:270
void nicNotifyLinkChange(NetInterface *interface)
Process link state change notification.
Definition: nic.c:559
uint8_t enc28j60ReadReg(NetInterface *interface, uint16_t address)
Read ENC28J60 register.
Definition: enc28j60_driver.c:746
bool_t enc28j60IrqHandler(NetInterface *interface)
ENC28J60 interrupt service routine.
Definition: enc28j60_driver.c:291
void enc28j60ReadBuffer(NetInterface *interface, uint8_t *data, size_t length)
Read SRAM buffer.
Definition: enc28j60_driver.c:897
void enc28j60SoftReset(NetInterface *interface)
ENC28J60 controller reset.
Definition: enc28j60_driver.c:649
void nicProcessPacket(NetInterface *interface, uint8_t *packet, size_t length, NetRxAncillary *ancillary)
Handle a packet received by the network controller.
Definition: nic.c:392
void enc28j60WritePhyReg(NetInterface *interface, uint16_t address, uint16_t data)
Write PHY register.
Definition: enc28j60_driver.c:783
ENC28J60 Ethernet controller.
#define ENC28J60_MACLCON2_COLWIN_DEFAULT
Definition: enc28j60_driver.h:305
void enc28j60DumpReg(NetInterface *interface)
Dump registers for debugging purpose.
Definition: enc28j60_driver.c:1010
#define ENC28J60_ECOCON_COCON_DISABLED
Definition: enc28j60_driver.h:349
void enc28j60WriteReg(NetInterface *interface, uint16_t address, uint8_t data)
Write ENC28J60 register.
Definition: enc28j60_driver.c:721
void enc28j60DisableIrq(NetInterface *interface)
Disable interrupts.
Definition: enc28j60_driver.c:275
void enc28j60WriteBuffer(NetInterface *interface, const NetBuffer *buffer, size_t offset)
Write SRAM buffer.
Definition: enc28j60_driver.c:842
void enc28j60DumpPhyReg(NetInterface *interface)
Dump PHY registers for debugging purpose.
Definition: enc28j60_driver.c:1065
uint32_t enc28j60CalcCrc(const void *data, size_t length)
CRC calculation using the polynomial 0x4C11DB7.
Definition: enc28j60_driver.c:970
void enc28j60EventHandler(NetInterface *interface)
ENC28J60 event handler.
Definition: enc28j60_driver.c:354
size_t netBufferGetLength(const NetBuffer *buffer)
Get the actual length of a multi-part buffer.
Definition: net_mem.c:297
void enc28j60SetBit(NetInterface *interface, uint16_t address, uint16_t mask)
Set bit field.
Definition: enc28j60_driver.c:926
error_t enc28j60SendPacket(NetInterface *interface, const NetBuffer *buffer, size_t offset, NetTxAncillary *ancillary)
Send a packet.
Definition: enc28j60_driver.c:431
uint16_t enc28j60ReadPhyReg(NetInterface *interface, uint16_t address)
Read PHY register.
Definition: enc28j60_driver.c:808
error_t enc28j60UpdateMacAddrFilter(NetInterface *interface)
Configure MAC address filtering.
Definition: enc28j60_driver.c:586
void osSetEvent(OsEvent *event)
Set the specified event object to the signaled state.
Definition: os_port_chibios.c:202
__weak_func void enc28j60InitHook(NetInterface *interface)
ENC28J60 custom configuration.
Definition: enc28j60_driver.c:240
error_t enc28j60Init(NetInterface *interface)
ENC28J60 controller initialization.
Definition: enc28j60_driver.c:71
TCP/IP stack core.
void enc28j60SelectBank(NetInterface *interface, uint16_t address)
Bank selection.
Definition: enc28j60_driver.c:668
void enc28j60ClearBit(NetInterface *interface, uint16_t address, uint16_t mask)
Clear bit field.
Definition: enc28j60_driver.c:948
error_t enc28j60ReceivePacket(NetInterface *interface)
Receive a packet.
Definition: enc28j60_driver.c:495
Debugging facilities.