w5100_driver.h File Reference

WIZnet W5100 Ethernet controller. More...

#include "core/nic.h"

Go to the source code of this file.

Macros

#define W5100_ETH_TX_BUFFER_SIZE   1536
 
#define W5100_ETH_RX_BUFFER_SIZE   1536
 
#define W5100_CTRL_READ   0x0F
 
#define W5100_CTRL_WRITE   0xF0
 
#define W5100_MR   0x00
 
#define W5100_GAR0   0x01
 
#define W5100_GAR1   0x02
 
#define W5100_GAR2   0x03
 
#define W5100_GAR3   0x04
 
#define W5100_SUBR0   0x05
 
#define W5100_SUBR1   0x06
 
#define W5100_SUBR2   0x07
 
#define W5100_SUBR3   0x08
 
#define W5100_SHAR0   0x09
 
#define W5100_SHAR1   0x0A
 
#define W5100_SHAR2   0x0B
 
#define W5100_SHAR3   0x0C
 
#define W5100_SHAR4   0x0D
 
#define W5100_SHAR5   0x0E
 
#define W5100_SIPR0   0x0F
 
#define W5100_SIPR1   0x10
 
#define W5100_SIPR2   0x11
 
#define W5100_SIPR3   0x12
 
#define W5100_IR   0x15
 
#define W5100_IMR   0x16
 
#define W5100_RTR0   0x17
 
#define W5100_RTR1   0x18
 
#define W5100_RCR   0x19
 
#define W5100_RMSR   0x1A
 
#define W5100_TMSR   0x1B
 
#define W5100_PATR0   0x1C
 
#define W5100_PATR1   0x1D
 
#define W5100_PTIMER   0x28
 
#define W5100_PMAGIC   0x29
 
#define W5100_UIPR0   0x2A
 
#define W5100_UIPR1   0x2B
 
#define W5100_UIPR2   0x2C
 
#define W5100_UIPR3   0x2D
 
#define W5100_UPORT0   0x2E
 
#define W5100_UPORT1   0x2F
 
#define W5100_S0_MR   0x0400
 
#define W5100_S0_CR   0x0401
 
#define W5100_S0_IR   0x0402
 
#define W5100_S0_SR   0x0403
 
#define W5100_S0_PORT0   0x0404
 
#define W5100_S0_PORT1   0x0405
 
#define W5100_S0_DHAR0   0x0406
 
#define W5100_S0_DHAR1   0x0407
 
#define W5100_S0_DHAR2   0x0408
 
#define W5100_S0_DHAR3   0x0409
 
#define W5100_S0_DHAR4   0x040A
 
#define W5100_S0_DHAR5   0x040B
 
#define W5100_S0_DIPR0   0x040C
 
#define W5100_S0_DIPR1   0x040D
 
#define W5100_S0_DIPR2   0x040E
 
#define W5100_S0_DIPR3   0x040F
 
#define W5100_S0_DPORT0   0x0410
 
#define W5100_S0_DPORT1   0x0411
 
#define W5100_S0_MSSR0   0x0412
 
#define W5100_S0_MSSR1   0x0413
 
#define W5100_S0_PROTO   0x0414
 
#define W5100_S0_TOS   0x0415
 
#define W5100_S0_TTL   0x0416
 
#define W5100_S0_TX_FSR0   0x0420
 
#define W5100_S0_TX_FSR1   0x0421
 
#define W5100_S0_TX_RD0   0x0422
 
#define W5100_S0_TX_RD1   0x0423
 
#define W5100_S0_TX_WR0   0x0424
 
#define W5100_S0_TX_WR1   0x0425
 
#define W5100_S0_RX_RSR0   0x0426
 
#define W5100_S0_RX_RSR1   0x0427
 
#define W5100_S0_RX_RD0   0x0428
 
#define W5100_S0_RX_RD1   0x0429
 
#define W5100_S1_MR   0x0500
 
#define W5100_S1_CR   0x0501
 
#define W5100_S1_IR   0x0502
 
#define W5100_S1_SR   0x0503
 
#define W5100_S1_PORT0   0x0504
 
#define W5100_S1_PORT1   0x0505
 
#define W5100_S1_DHAR0   0x0506
 
#define W5100_S1_DHAR1   0x0507
 
#define W5100_S1_DHAR2   0x0508
 
#define W5100_S1_DHAR3   0x0509
 
#define W5100_S1_DHAR4   0x050A
 
#define W5100_S1_DHAR5   0x050B
 
#define W5100_S1_DIPR0   0x050C
 
#define W5100_S1_DIPR1   0x050D
 
#define W5100_S1_DIPR2   0x050E
 
#define W5100_S1_DIPR3   0x050F
 
#define W5100_S1_DPORT0   0x0510
 
#define W5100_S1_DPORT1   0x0511
 
#define W5100_S1_MSSR0   0x0512
 
#define W5100_S1_MSSR1   0x0513
 
#define W5100_S1_PROTO   0x0514
 
#define W5100_S1_TOS   0x0515
 
#define W5100_S1_TTL   0x0516
 
#define W5100_S1_TX_FSR0   0x0520
 
#define W5100_S1_TX_FSR1   0x0521
 
#define W5100_S1_TX_RD0   0x0522
 
#define W5100_S1_TX_RD1   0x0523
 
#define W5100_S1_TX_WR0   0x0524
 
#define W5100_S1_TX_WR1   0x0525
 
#define W5100_S1_RX_RSR0   0x0526
 
#define W5100_S1_RX_RSR1   0x0527
 
#define W5100_S1_RX_RD0   0x0528
 
#define W5100_S1_RX_RD1   0x0529
 
#define W5100_S2_MR   0x0600
 
#define W5100_S2_CR   0x0601
 
#define W5100_S2_IR   0x0602
 
#define W5100_S2_SR   0x0603
 
#define W5100_S2_PORT0   0x0604
 
#define W5100_S2_PORT1   0x0605
 
#define W5100_S2_DHAR0   0x0606
 
#define W5100_S2_DHAR1   0x0607
 
#define W5100_S2_DHAR2   0x0608
 
#define W5100_S2_DHAR3   0x0609
 
#define W5100_S2_DHAR4   0x060A
 
#define W5100_S2_DHAR5   0x060B
 
#define W5100_S2_DIPR0   0x060C
 
#define W5100_S2_DIPR1   0x060D
 
#define W5100_S2_DIPR2   0x060E
 
#define W5100_S2_DIPR3   0x060F
 
#define W5100_S2_DPORT0   0x0610
 
#define W5100_S2_DPORT1   0x0611
 
#define W5100_S2_MSSR0   0x0612
 
#define W5100_S2_MSSR1   0x0613
 
#define W5100_S2_PROTO   0x0614
 
#define W5100_S2_TOS   0x0615
 
#define W5100_S2_TTL   0x0616
 
#define W5100_S2_TX_FSR0   0x0620
 
#define W5100_S2_TX_FSR1   0x0621
 
#define W5100_S2_TX_RD0   0x0622
 
#define W5100_S2_TX_RD1   0x0623
 
#define W5100_S2_TX_WR0   0x0624
 
#define W5100_S2_TX_WR1   0x0625
 
#define W5100_S2_RX_RSR0   0x0626
 
#define W5100_S2_RX_RSR1   0x0627
 
#define W5100_S2_RX_RD0   0x0628
 
#define W5100_S2_RX_RD1   0x0629
 
#define W5100_S3_MR   0x0700
 
#define W5100_S3_CR   0x0701
 
#define W5100_S3_IR   0x0702
 
#define W5100_S3_SR   0x0703
 
#define W5100_S3_PORT0   0x0704
 
#define W5100_S3_PORT1   0x0705
 
#define W5100_S3_DHAR0   0x0706
 
#define W5100_S3_DHAR1   0x0707
 
#define W5100_S3_DHAR2   0x0708
 
#define W5100_S3_DHAR3   0x0709
 
#define W5100_S3_DHAR4   0x070A
 
#define W5100_S3_DHAR5   0x070B
 
#define W5100_S3_DIPR0   0x070C
 
#define W5100_S3_DIPR1   0x070D
 
#define W5100_S3_DIPR2   0x070E
 
#define W5100_S3_DIPR3   0x070F
 
#define W5100_S3_DPORT0   0x0710
 
#define W5100_S3_DPORT1   0x0711
 
#define W5100_S3_MSSR0   0x0712
 
#define W5100_S3_MSSR1   0x0713
 
#define W5100_S3_PROTO   0x0714
 
#define W5100_S3_TOS   0x0715
 
#define W5100_S3_TTL   0x0716
 
#define W5100_S3_TX_FSR0   0x0720
 
#define W5100_S3_TX_FSR1   0x0721
 
#define W5100_S3_TX_RD0   0x0722
 
#define W5100_S3_TX_RD1   0x0723
 
#define W5100_S3_TX_WR0   0x0724
 
#define W5100_S3_TX_WR1   0x0725
 
#define W5100_S3_RX_RSR0   0x0726
 
#define W5100_S3_RX_RSR1   0x0727
 
#define W5100_S3_RX_RD0   0x0728
 
#define W5100_S3_RX_RD1   0x0729
 
#define W5100_Sn_MR(n)   (0x0400 + ((n) * 0x0100))
 
#define W5100_Sn_CR(n)   (0x0401 + ((n) * 0x0100))
 
#define W5100_Sn_IR(n)   (0x0402 + ((n) * 0x0100))
 
#define W5100_Sn_SR(n)   (0x0403 + ((n) * 0x0100))
 
#define W5100_Sn_PORT0(n)   (0x0404 + ((n) * 0x0100))
 
#define W5100_Sn_PORT1(n)   (0x0405 + ((n) * 0x0100))
 
#define W5100_Sn_DHAR0(n)   (0x0406 + ((n) * 0x0100))
 
#define W5100_Sn_DHAR1(n)   (0x0407 + ((n) * 0x0100))
 
#define W5100_Sn_DHAR2(n)   (0x0408 + ((n) * 0x0100))
 
#define W5100_Sn_DHAR3(n)   (0x0409 + ((n) * 0x0100))
 
#define W5100_Sn_DHAR4(n)   (0x040A + ((n) * 0x0100))
 
#define W5100_Sn_DHAR5(n)   (0x040B + ((n) * 0x0100))
 
#define W5100_Sn_DIPR0(n)   (0x040C + ((n) * 0x0100))
 
#define W5100_Sn_DIPR1(n)   (0x040D + ((n) * 0x0100))
 
#define W5100_Sn_DIPR2(n)   (0x040E + ((n) * 0x0100))
 
#define W5100_Sn_DIPR3(n)   (0x040F + ((n) * 0x0100))
 
#define W5100_Sn_DPORT0(n)   (0x0410 + ((n) * 0x0100))
 
#define W5100_Sn_DPORT1(n)   (0x0411 + ((n) * 0x0100))
 
#define W5100_Sn_MSSR0(n)   (0x0412 + ((n) * 0x0100))
 
#define W5100_Sn_MSSR1(n)   (0x0413 + ((n) * 0x0100))
 
#define W5100_Sn_PROTO(n)   (0x0414 + ((n) * 0x0100))
 
#define W5100_Sn_TOS(n)   (0x0415 + ((n) * 0x0100))
 
#define W5100_Sn_TTL(n)   (0x0416 + ((n) * 0x0100))
 
#define W5100_Sn_TX_FSR0(n)   (0x0420 + ((n) * 0x0100))
 
#define W5100_Sn_TX_FSR1(n)   (0x0421 + ((n) * 0x0100))
 
#define W5100_Sn_TX_RD0(n)   (0x0422 + ((n) * 0x0100))
 
#define W5100_Sn_TX_RD1(n)   (0x0423 + ((n) * 0x0100))
 
#define W5100_Sn_TX_WR0(n)   (0x0424 + ((n) * 0x0100))
 
#define W5100_Sn_TX_WR1(n)   (0x0425 + ((n) * 0x0100))
 
#define W5100_Sn_RX_RSR0(n)   (0x0426 + ((n) * 0x0100))
 
#define W5100_Sn_RX_RSR1(n)   (0x0427 + ((n) * 0x0100))
 
#define W5100_Sn_RX_RD0(n)   (0x0428 + ((n) * 0x0100))
 
#define W5100_Sn_RX_RD1(n)   (0x0429 + ((n) * 0x0100))
 
#define W5100_TX_BUFFER   0x4000
 
#define W5100_RX_BUFFER   0x6000
 
#define W5100_MR_RST   0x80
 
#define W5100_MR_PB   0x10
 
#define W5100_MR_PPPOE   0x08
 
#define W5100_MR_AI   0x02
 
#define W5100_MR_IND   0x01
 
#define W5100_IR_CONFLICT   0x80
 
#define W5100_IR_UNREACH   0x40
 
#define W5100_IR_PPPOE   0x20
 
#define W5100_IR_S3_INT   0x08
 
#define W5100_IR_S2_INT   0x04
 
#define W5100_IR_S1_INT   0x02
 
#define W5100_IR_S0_INT   0x01
 
#define W5100_IMR_IM_IR7   0x80
 
#define W5100_IMR_IM_IR6   0x40
 
#define W5100_IMR_IM_IR5   0x20
 
#define W5100_IMR_IM_IR3   0x08
 
#define W5100_IMR_IM_IR2   0x04
 
#define W5100_IMR_IM_IR1   0x02
 
#define W5100_IMR_IM_IR0   0x01
 
#define W5100_RMSR_SOCKET3   0xC0
 
#define W5100_RMSR_SOCKET3_1KB   0x00
 
#define W5100_RMSR_SOCKET3_2KB   0x40
 
#define W5100_RMSR_SOCKET3_4KB   0x80
 
#define W5100_RMSR_SOCKET3_8KB   0xC0
 
#define W5100_RMSR_SOCKET2   0x30
 
#define W5100_RMSR_SOCKET2_1KB   0x00
 
#define W5100_RMSR_SOCKET2_2KB   0x10
 
#define W5100_RMSR_SOCKET2_4KB   0x20
 
#define W5100_RMSR_SOCKET2_8KB   0x30
 
#define W5100_RMSR_SOCKET1   0x0C
 
#define W5100_RMSR_SOCKET1_1KB   0x00
 
#define W5100_RMSR_SOCKET1_2KB   0x04
 
#define W5100_RMSR_SOCKET1_4KB   0x08
 
#define W5100_RMSR_SOCKET1_8KB   0x0C
 
#define W5100_RMSR_SOCKET0   0x03
 
#define W5100_RMSR_SOCKET0_1KB   0x00
 
#define W5100_RMSR_SOCKET0_2KB   0x01
 
#define W5100_RMSR_SOCKET0_4KB   0x02
 
#define W5100_RMSR_SOCKET0_8KB   0x03
 
#define W5100_TMSR_SOCKET3   0xC0
 
#define W5100_TMSR_SOCKET3_1KB   0x00
 
#define W5100_TMSR_SOCKET3_2KB   0x40
 
#define W5100_TMSR_SOCKET3_4KB   0x80
 
#define W5100_TMSR_SOCKET3_8KB   0xC0
 
#define W5100_TMSR_SOCKET2   0x30
 
#define W5100_TMSR_SOCKET2_1KB   0x00
 
#define W5100_TMSR_SOCKET2_2KB   0x10
 
#define W5100_TMSR_SOCKET2_4KB   0x20
 
#define W5100_TMSR_SOCKET2_8KB   0x30
 
#define W5100_TMSR_SOCKET1   0x0C
 
#define W5100_TMSR_SOCKET1_1KB   0x00
 
#define W5100_TMSR_SOCKET1_2KB   0x04
 
#define W5100_TMSR_SOCKET1_4KB   0x08
 
#define W5100_TMSR_SOCKET1_8KB   0x0C
 
#define W5100_TMSR_SOCKET0   0x03
 
#define W5100_TMSR_SOCKET0_1KB   0x00
 
#define W5100_TMSR_SOCKET0_2KB   0x01
 
#define W5100_TMSR_SOCKET0_4KB   0x02
 
#define W5100_TMSR_SOCKET0_8KB   0x03
 
#define W5100_Sn_MR_MULTI   0x80
 
#define W5100_Sn_MR_ND   0x20
 
#define W5100_Sn_MR_MC   0x20
 
#define W5100_Sn_MR_PROTOCOL   0x0F
 
#define W5100_Sn_MR_PROTOCOL_CLOSED   0x00
 
#define W5100_Sn_MR_PROTOCOL_TCP   0x01
 
#define W5100_Sn_MR_PROTOCOL_UDP   0x02
 
#define W5100_Sn_MR_PROTOCOL_IPRAW   0x03
 
#define W5100_Sn_MR_PROTOCOL_MACRAW   0x04
 
#define W5100_Sn_MR_PROTOCOL_PPPOE   0x05
 
#define W5100_Sn_CR_OPEN   0x01
 
#define W5100_Sn_CR_LISTEN   0x02
 
#define W5100_Sn_CR_CONNECT   0x04
 
#define W5100_Sn_CR_DISCON   0x08
 
#define W5100_Sn_CR_CLOSE   0x10
 
#define W5100_Sn_CR_SEND   0x20
 
#define W5100_Sn_CR_SEND_MAC   0x21
 
#define W5100_Sn_CR_SEND_KEEP   0x22
 
#define W5100_Sn_CR_RECV   0x40
 
#define W5100_Sn_IR_SEND_OK   0x10
 
#define W5100_Sn_IR_TIMEOUT   0x08
 
#define W5100_Sn_IR_RECV   0x04
 
#define W5100_Sn_IR_DISCON   0x02
 
#define W5100_Sn_IR_CON   0x01
 
#define W5100_Sn_SR_SOCK_CLOSED   0x00
 
#define W5100_Sn_SR_SOCK_ARP_1   0x11
 
#define W5100_Sn_SR_SOCK_INIT   0x13
 
#define W5100_Sn_SR_SOCK_LISTEN   0x14
 
#define W5100_Sn_SR_SOCK_SYNSENT   0x15
 
#define W5100_Sn_SR_SOCK_SYNRECV   0x16
 
#define W5100_Sn_SR_SOCK_ESTABLISHED   0x17
 
#define W5100_Sn_SR_SOCK_FIN_WAIT   0x18
 
#define W5100_Sn_SR_SOCK_CLOSING   0x1A
 
#define W5100_Sn_SR_SOCK_TIME_WAIT   0x1B
 
#define W5100_Sn_SR_SOCK_CLOSE_WAIT   0x1C
 
#define W5100_Sn_SR_SOCK_LAST_ACK   0x1D
 
#define W5100_Sn_SR_SOCK_ARP_2   0x21
 
#define W5100_Sn_SR_SOCK_UDP   0x22
 
#define W5100_Sn_SR_SOCK_ARP_3   0x31
 
#define W5100_Sn_SR_SOCK_IPRAW   0x32
 
#define W5100_Sn_SR_SOCK_MACRAW   0x42
 
#define W5100_Sn_SR_SOCK_PPPOE   0x5F
 

Functions

error_t w5100Init (NetInterface *interface)
 W5100 controller initialization. More...
 
void w5100InitHook (NetInterface *interface)
 W5100 custom configuration. More...
 
void w5100Tick (NetInterface *interface)
 W5100 timer handler. More...
 
void w5100EnableIrq (NetInterface *interface)
 Enable interrupts. More...
 
void w5100DisableIrq (NetInterface *interface)
 Disable interrupts. More...
 
bool_t w5100IrqHandler (NetInterface *interface)
 W5100 interrupt service routine. More...
 
void w5100EventHandler (NetInterface *interface)
 W5100 event handler. More...
 
error_t w5100SendPacket (NetInterface *interface, const NetBuffer *buffer, size_t offset, NetTxAncillary *ancillary)
 Send a packet. More...
 
error_t w5100ReceivePacket (NetInterface *interface)
 Receive a packet. More...
 
error_t w5100UpdateMacAddrFilter (NetInterface *interface)
 Configure MAC address filtering. More...
 
void w5100WriteReg8 (NetInterface *interface, uint16_t address, uint8_t data)
 Write 8-bit register. More...
 
uint8_t w5100ReadReg8 (NetInterface *interface, uint16_t address)
 Read 8-bit register. More...
 
void w5100WriteReg16 (NetInterface *interface, uint16_t address, uint16_t data)
 Write 16-bit register. More...
 
uint16_t w5100ReadReg16 (NetInterface *interface, uint16_t address)
 Read 16-bit register. More...
 
void w5100WriteData (NetInterface *interface, const uint8_t *data, size_t length)
 Write data. More...
 
void w5100ReadData (NetInterface *interface, uint8_t *data, size_t length)
 Read data. More...
 
void w5100WriteBuffer (NetInterface *interface, uint16_t offset, const uint8_t *data, size_t length)
 Write TX buffer. More...
 
void w5100ReadBuffer (NetInterface *interface, uint16_t address, uint8_t *data, size_t length)
 Read RX buffer. More...
 
void w5100DumpReg (NetInterface *interface)
 Dump registers for debugging purpose. More...
 

Variables

const NicDriver w5100Driver
 W5100 driver. More...
 

Detailed Description

WIZnet W5100 Ethernet controller.

License

SPDX-License-Identifier: GPL-2.0-or-later

Copyright (C) 2010-2024 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
2.4.4

Definition in file w5100_driver.h.

Macro Definition Documentation

◆ W5100_CTRL_READ

#define W5100_CTRL_READ   0x0F

Definition at line 52 of file w5100_driver.h.

◆ W5100_CTRL_WRITE

#define W5100_CTRL_WRITE   0xF0

Definition at line 53 of file w5100_driver.h.

◆ W5100_ETH_RX_BUFFER_SIZE

#define W5100_ETH_RX_BUFFER_SIZE   1536

Definition at line 46 of file w5100_driver.h.

◆ W5100_ETH_TX_BUFFER_SIZE

#define W5100_ETH_TX_BUFFER_SIZE   1536

Definition at line 39 of file w5100_driver.h.

◆ W5100_GAR0

#define W5100_GAR0   0x01

Definition at line 57 of file w5100_driver.h.

◆ W5100_GAR1

#define W5100_GAR1   0x02

Definition at line 58 of file w5100_driver.h.

◆ W5100_GAR2

#define W5100_GAR2   0x03

Definition at line 59 of file w5100_driver.h.

◆ W5100_GAR3

#define W5100_GAR3   0x04

Definition at line 60 of file w5100_driver.h.

◆ W5100_IMR

#define W5100_IMR   0x16

Definition at line 76 of file w5100_driver.h.

◆ W5100_IMR_IM_IR0

#define W5100_IMR_IM_IR0   0x01

Definition at line 289 of file w5100_driver.h.

◆ W5100_IMR_IM_IR1

#define W5100_IMR_IM_IR1   0x02

Definition at line 288 of file w5100_driver.h.

◆ W5100_IMR_IM_IR2

#define W5100_IMR_IM_IR2   0x04

Definition at line 287 of file w5100_driver.h.

◆ W5100_IMR_IM_IR3

#define W5100_IMR_IM_IR3   0x08

Definition at line 286 of file w5100_driver.h.

◆ W5100_IMR_IM_IR5

#define W5100_IMR_IM_IR5   0x20

Definition at line 285 of file w5100_driver.h.

◆ W5100_IMR_IM_IR6

#define W5100_IMR_IM_IR6   0x40

Definition at line 284 of file w5100_driver.h.

◆ W5100_IMR_IM_IR7

#define W5100_IMR_IM_IR7   0x80

Definition at line 283 of file w5100_driver.h.

◆ W5100_IR

#define W5100_IR   0x15

Definition at line 75 of file w5100_driver.h.

◆ W5100_IR_CONFLICT

#define W5100_IR_CONFLICT   0x80

Definition at line 274 of file w5100_driver.h.

◆ W5100_IR_PPPOE

#define W5100_IR_PPPOE   0x20

Definition at line 276 of file w5100_driver.h.

◆ W5100_IR_S0_INT

#define W5100_IR_S0_INT   0x01

Definition at line 280 of file w5100_driver.h.

◆ W5100_IR_S1_INT

#define W5100_IR_S1_INT   0x02

Definition at line 279 of file w5100_driver.h.

◆ W5100_IR_S2_INT

#define W5100_IR_S2_INT   0x04

Definition at line 278 of file w5100_driver.h.

◆ W5100_IR_S3_INT

#define W5100_IR_S3_INT   0x08

Definition at line 277 of file w5100_driver.h.

◆ W5100_IR_UNREACH

#define W5100_IR_UNREACH   0x40

Definition at line 275 of file w5100_driver.h.

◆ W5100_MR

#define W5100_MR   0x00

Definition at line 56 of file w5100_driver.h.

◆ W5100_MR_AI

#define W5100_MR_AI   0x02

Definition at line 270 of file w5100_driver.h.

◆ W5100_MR_IND

#define W5100_MR_IND   0x01

Definition at line 271 of file w5100_driver.h.

◆ W5100_MR_PB

#define W5100_MR_PB   0x10

Definition at line 268 of file w5100_driver.h.

◆ W5100_MR_PPPOE

#define W5100_MR_PPPOE   0x08

Definition at line 269 of file w5100_driver.h.

◆ W5100_MR_RST

#define W5100_MR_RST   0x80

Definition at line 267 of file w5100_driver.h.

◆ W5100_PATR0

#define W5100_PATR0   0x1C

Definition at line 82 of file w5100_driver.h.

◆ W5100_PATR1

#define W5100_PATR1   0x1D

Definition at line 83 of file w5100_driver.h.

◆ W5100_PMAGIC

#define W5100_PMAGIC   0x29

Definition at line 85 of file w5100_driver.h.

◆ W5100_PTIMER

#define W5100_PTIMER   0x28

Definition at line 84 of file w5100_driver.h.

◆ W5100_RCR

#define W5100_RCR   0x19

Definition at line 79 of file w5100_driver.h.

◆ W5100_RMSR

#define W5100_RMSR   0x1A

Definition at line 80 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET0

#define W5100_RMSR_SOCKET0   0x03

Definition at line 307 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET0_1KB

#define W5100_RMSR_SOCKET0_1KB   0x00

Definition at line 308 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET0_2KB

#define W5100_RMSR_SOCKET0_2KB   0x01

Definition at line 309 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET0_4KB

#define W5100_RMSR_SOCKET0_4KB   0x02

Definition at line 310 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET0_8KB

#define W5100_RMSR_SOCKET0_8KB   0x03

Definition at line 311 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET1

#define W5100_RMSR_SOCKET1   0x0C

Definition at line 302 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET1_1KB

#define W5100_RMSR_SOCKET1_1KB   0x00

Definition at line 303 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET1_2KB

#define W5100_RMSR_SOCKET1_2KB   0x04

Definition at line 304 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET1_4KB

#define W5100_RMSR_SOCKET1_4KB   0x08

Definition at line 305 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET1_8KB

#define W5100_RMSR_SOCKET1_8KB   0x0C

Definition at line 306 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET2

#define W5100_RMSR_SOCKET2   0x30

Definition at line 297 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET2_1KB

#define W5100_RMSR_SOCKET2_1KB   0x00

Definition at line 298 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET2_2KB

#define W5100_RMSR_SOCKET2_2KB   0x10

Definition at line 299 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET2_4KB

#define W5100_RMSR_SOCKET2_4KB   0x20

Definition at line 300 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET2_8KB

#define W5100_RMSR_SOCKET2_8KB   0x30

Definition at line 301 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET3

#define W5100_RMSR_SOCKET3   0xC0

Definition at line 292 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET3_1KB

#define W5100_RMSR_SOCKET3_1KB   0x00

Definition at line 293 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET3_2KB

#define W5100_RMSR_SOCKET3_2KB   0x40

Definition at line 294 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET3_4KB

#define W5100_RMSR_SOCKET3_4KB   0x80

Definition at line 295 of file w5100_driver.h.

◆ W5100_RMSR_SOCKET3_8KB

#define W5100_RMSR_SOCKET3_8KB   0xC0

Definition at line 296 of file w5100_driver.h.

◆ W5100_RTR0

#define W5100_RTR0   0x17

Definition at line 77 of file w5100_driver.h.

◆ W5100_RTR1

#define W5100_RTR1   0x18

Definition at line 78 of file w5100_driver.h.

◆ W5100_RX_BUFFER

#define W5100_RX_BUFFER   0x6000

Definition at line 264 of file w5100_driver.h.

◆ W5100_S0_CR

#define W5100_S0_CR   0x0401

Definition at line 95 of file w5100_driver.h.

◆ W5100_S0_DHAR0

#define W5100_S0_DHAR0   0x0406

Definition at line 100 of file w5100_driver.h.

◆ W5100_S0_DHAR1

#define W5100_S0_DHAR1   0x0407

Definition at line 101 of file w5100_driver.h.

◆ W5100_S0_DHAR2

#define W5100_S0_DHAR2   0x0408

Definition at line 102 of file w5100_driver.h.

◆ W5100_S0_DHAR3

#define W5100_S0_DHAR3   0x0409

Definition at line 103 of file w5100_driver.h.

◆ W5100_S0_DHAR4

#define W5100_S0_DHAR4   0x040A

Definition at line 104 of file w5100_driver.h.

◆ W5100_S0_DHAR5

#define W5100_S0_DHAR5   0x040B

Definition at line 105 of file w5100_driver.h.

◆ W5100_S0_DIPR0

#define W5100_S0_DIPR0   0x040C

Definition at line 106 of file w5100_driver.h.

◆ W5100_S0_DIPR1

#define W5100_S0_DIPR1   0x040D

Definition at line 107 of file w5100_driver.h.

◆ W5100_S0_DIPR2

#define W5100_S0_DIPR2   0x040E

Definition at line 108 of file w5100_driver.h.

◆ W5100_S0_DIPR3

#define W5100_S0_DIPR3   0x040F

Definition at line 109 of file w5100_driver.h.

◆ W5100_S0_DPORT0

#define W5100_S0_DPORT0   0x0410

Definition at line 110 of file w5100_driver.h.

◆ W5100_S0_DPORT1

#define W5100_S0_DPORT1   0x0411

Definition at line 111 of file w5100_driver.h.

◆ W5100_S0_IR

#define W5100_S0_IR   0x0402

Definition at line 96 of file w5100_driver.h.

◆ W5100_S0_MR

#define W5100_S0_MR   0x0400

Definition at line 94 of file w5100_driver.h.

◆ W5100_S0_MSSR0

#define W5100_S0_MSSR0   0x0412

Definition at line 112 of file w5100_driver.h.

◆ W5100_S0_MSSR1

#define W5100_S0_MSSR1   0x0413

Definition at line 113 of file w5100_driver.h.

◆ W5100_S0_PORT0

#define W5100_S0_PORT0   0x0404

Definition at line 98 of file w5100_driver.h.

◆ W5100_S0_PORT1

#define W5100_S0_PORT1   0x0405

Definition at line 99 of file w5100_driver.h.

◆ W5100_S0_PROTO

#define W5100_S0_PROTO   0x0414

Definition at line 114 of file w5100_driver.h.

◆ W5100_S0_RX_RD0

#define W5100_S0_RX_RD0   0x0428

Definition at line 125 of file w5100_driver.h.

◆ W5100_S0_RX_RD1

#define W5100_S0_RX_RD1   0x0429

Definition at line 126 of file w5100_driver.h.

◆ W5100_S0_RX_RSR0

#define W5100_S0_RX_RSR0   0x0426

Definition at line 123 of file w5100_driver.h.

◆ W5100_S0_RX_RSR1

#define W5100_S0_RX_RSR1   0x0427

Definition at line 124 of file w5100_driver.h.

◆ W5100_S0_SR

#define W5100_S0_SR   0x0403

Definition at line 97 of file w5100_driver.h.

◆ W5100_S0_TOS

#define W5100_S0_TOS   0x0415

Definition at line 115 of file w5100_driver.h.

◆ W5100_S0_TTL

#define W5100_S0_TTL   0x0416

Definition at line 116 of file w5100_driver.h.

◆ W5100_S0_TX_FSR0

#define W5100_S0_TX_FSR0   0x0420

Definition at line 117 of file w5100_driver.h.

◆ W5100_S0_TX_FSR1

#define W5100_S0_TX_FSR1   0x0421

Definition at line 118 of file w5100_driver.h.

◆ W5100_S0_TX_RD0

#define W5100_S0_TX_RD0   0x0422

Definition at line 119 of file w5100_driver.h.

◆ W5100_S0_TX_RD1

#define W5100_S0_TX_RD1   0x0423

Definition at line 120 of file w5100_driver.h.

◆ W5100_S0_TX_WR0

#define W5100_S0_TX_WR0   0x0424

Definition at line 121 of file w5100_driver.h.

◆ W5100_S0_TX_WR1

#define W5100_S0_TX_WR1   0x0425

Definition at line 122 of file w5100_driver.h.

◆ W5100_S1_CR

#define W5100_S1_CR   0x0501

Definition at line 128 of file w5100_driver.h.

◆ W5100_S1_DHAR0

#define W5100_S1_DHAR0   0x0506

Definition at line 133 of file w5100_driver.h.

◆ W5100_S1_DHAR1

#define W5100_S1_DHAR1   0x0507

Definition at line 134 of file w5100_driver.h.

◆ W5100_S1_DHAR2

#define W5100_S1_DHAR2   0x0508

Definition at line 135 of file w5100_driver.h.

◆ W5100_S1_DHAR3

#define W5100_S1_DHAR3   0x0509

Definition at line 136 of file w5100_driver.h.

◆ W5100_S1_DHAR4

#define W5100_S1_DHAR4   0x050A

Definition at line 137 of file w5100_driver.h.

◆ W5100_S1_DHAR5

#define W5100_S1_DHAR5   0x050B

Definition at line 138 of file w5100_driver.h.

◆ W5100_S1_DIPR0

#define W5100_S1_DIPR0   0x050C

Definition at line 139 of file w5100_driver.h.

◆ W5100_S1_DIPR1

#define W5100_S1_DIPR1   0x050D

Definition at line 140 of file w5100_driver.h.

◆ W5100_S1_DIPR2

#define W5100_S1_DIPR2   0x050E

Definition at line 141 of file w5100_driver.h.

◆ W5100_S1_DIPR3

#define W5100_S1_DIPR3   0x050F

Definition at line 142 of file w5100_driver.h.

◆ W5100_S1_DPORT0

#define W5100_S1_DPORT0   0x0510

Definition at line 143 of file w5100_driver.h.

◆ W5100_S1_DPORT1

#define W5100_S1_DPORT1   0x0511

Definition at line 144 of file w5100_driver.h.

◆ W5100_S1_IR

#define W5100_S1_IR   0x0502

Definition at line 129 of file w5100_driver.h.

◆ W5100_S1_MR

#define W5100_S1_MR   0x0500

Definition at line 127 of file w5100_driver.h.

◆ W5100_S1_MSSR0

#define W5100_S1_MSSR0   0x0512

Definition at line 145 of file w5100_driver.h.

◆ W5100_S1_MSSR1

#define W5100_S1_MSSR1   0x0513

Definition at line 146 of file w5100_driver.h.

◆ W5100_S1_PORT0

#define W5100_S1_PORT0   0x0504

Definition at line 131 of file w5100_driver.h.

◆ W5100_S1_PORT1

#define W5100_S1_PORT1   0x0505

Definition at line 132 of file w5100_driver.h.

◆ W5100_S1_PROTO

#define W5100_S1_PROTO   0x0514

Definition at line 147 of file w5100_driver.h.

◆ W5100_S1_RX_RD0

#define W5100_S1_RX_RD0   0x0528

Definition at line 158 of file w5100_driver.h.

◆ W5100_S1_RX_RD1

#define W5100_S1_RX_RD1   0x0529

Definition at line 159 of file w5100_driver.h.

◆ W5100_S1_RX_RSR0

#define W5100_S1_RX_RSR0   0x0526

Definition at line 156 of file w5100_driver.h.

◆ W5100_S1_RX_RSR1

#define W5100_S1_RX_RSR1   0x0527

Definition at line 157 of file w5100_driver.h.

◆ W5100_S1_SR

#define W5100_S1_SR   0x0503

Definition at line 130 of file w5100_driver.h.

◆ W5100_S1_TOS

#define W5100_S1_TOS   0x0515

Definition at line 148 of file w5100_driver.h.

◆ W5100_S1_TTL

#define W5100_S1_TTL   0x0516

Definition at line 149 of file w5100_driver.h.

◆ W5100_S1_TX_FSR0

#define W5100_S1_TX_FSR0   0x0520

Definition at line 150 of file w5100_driver.h.

◆ W5100_S1_TX_FSR1

#define W5100_S1_TX_FSR1   0x0521

Definition at line 151 of file w5100_driver.h.

◆ W5100_S1_TX_RD0

#define W5100_S1_TX_RD0   0x0522

Definition at line 152 of file w5100_driver.h.

◆ W5100_S1_TX_RD1

#define W5100_S1_TX_RD1   0x0523

Definition at line 153 of file w5100_driver.h.

◆ W5100_S1_TX_WR0

#define W5100_S1_TX_WR0   0x0524

Definition at line 154 of file w5100_driver.h.

◆ W5100_S1_TX_WR1

#define W5100_S1_TX_WR1   0x0525

Definition at line 155 of file w5100_driver.h.

◆ W5100_S2_CR

#define W5100_S2_CR   0x0601

Definition at line 161 of file w5100_driver.h.

◆ W5100_S2_DHAR0

#define W5100_S2_DHAR0   0x0606

Definition at line 166 of file w5100_driver.h.

◆ W5100_S2_DHAR1

#define W5100_S2_DHAR1   0x0607

Definition at line 167 of file w5100_driver.h.

◆ W5100_S2_DHAR2

#define W5100_S2_DHAR2   0x0608

Definition at line 168 of file w5100_driver.h.

◆ W5100_S2_DHAR3

#define W5100_S2_DHAR3   0x0609

Definition at line 169 of file w5100_driver.h.

◆ W5100_S2_DHAR4

#define W5100_S2_DHAR4   0x060A

Definition at line 170 of file w5100_driver.h.

◆ W5100_S2_DHAR5

#define W5100_S2_DHAR5   0x060B

Definition at line 171 of file w5100_driver.h.

◆ W5100_S2_DIPR0

#define W5100_S2_DIPR0   0x060C

Definition at line 172 of file w5100_driver.h.

◆ W5100_S2_DIPR1

#define W5100_S2_DIPR1   0x060D

Definition at line 173 of file w5100_driver.h.

◆ W5100_S2_DIPR2

#define W5100_S2_DIPR2   0x060E

Definition at line 174 of file w5100_driver.h.

◆ W5100_S2_DIPR3

#define W5100_S2_DIPR3   0x060F

Definition at line 175 of file w5100_driver.h.

◆ W5100_S2_DPORT0

#define W5100_S2_DPORT0   0x0610

Definition at line 176 of file w5100_driver.h.

◆ W5100_S2_DPORT1

#define W5100_S2_DPORT1   0x0611

Definition at line 177 of file w5100_driver.h.

◆ W5100_S2_IR

#define W5100_S2_IR   0x0602

Definition at line 162 of file w5100_driver.h.

◆ W5100_S2_MR

#define W5100_S2_MR   0x0600

Definition at line 160 of file w5100_driver.h.

◆ W5100_S2_MSSR0

#define W5100_S2_MSSR0   0x0612

Definition at line 178 of file w5100_driver.h.

◆ W5100_S2_MSSR1

#define W5100_S2_MSSR1   0x0613

Definition at line 179 of file w5100_driver.h.

◆ W5100_S2_PORT0

#define W5100_S2_PORT0   0x0604

Definition at line 164 of file w5100_driver.h.

◆ W5100_S2_PORT1

#define W5100_S2_PORT1   0x0605

Definition at line 165 of file w5100_driver.h.

◆ W5100_S2_PROTO

#define W5100_S2_PROTO   0x0614

Definition at line 180 of file w5100_driver.h.

◆ W5100_S2_RX_RD0

#define W5100_S2_RX_RD0   0x0628

Definition at line 191 of file w5100_driver.h.

◆ W5100_S2_RX_RD1

#define W5100_S2_RX_RD1   0x0629

Definition at line 192 of file w5100_driver.h.

◆ W5100_S2_RX_RSR0

#define W5100_S2_RX_RSR0   0x0626

Definition at line 189 of file w5100_driver.h.

◆ W5100_S2_RX_RSR1

#define W5100_S2_RX_RSR1   0x0627

Definition at line 190 of file w5100_driver.h.

◆ W5100_S2_SR

#define W5100_S2_SR   0x0603

Definition at line 163 of file w5100_driver.h.

◆ W5100_S2_TOS

#define W5100_S2_TOS   0x0615

Definition at line 181 of file w5100_driver.h.

◆ W5100_S2_TTL

#define W5100_S2_TTL   0x0616

Definition at line 182 of file w5100_driver.h.

◆ W5100_S2_TX_FSR0

#define W5100_S2_TX_FSR0   0x0620

Definition at line 183 of file w5100_driver.h.

◆ W5100_S2_TX_FSR1

#define W5100_S2_TX_FSR1   0x0621

Definition at line 184 of file w5100_driver.h.

◆ W5100_S2_TX_RD0

#define W5100_S2_TX_RD0   0x0622

Definition at line 185 of file w5100_driver.h.

◆ W5100_S2_TX_RD1

#define W5100_S2_TX_RD1   0x0623

Definition at line 186 of file w5100_driver.h.

◆ W5100_S2_TX_WR0

#define W5100_S2_TX_WR0   0x0624

Definition at line 187 of file w5100_driver.h.

◆ W5100_S2_TX_WR1

#define W5100_S2_TX_WR1   0x0625

Definition at line 188 of file w5100_driver.h.

◆ W5100_S3_CR

#define W5100_S3_CR   0x0701

Definition at line 194 of file w5100_driver.h.

◆ W5100_S3_DHAR0

#define W5100_S3_DHAR0   0x0706

Definition at line 199 of file w5100_driver.h.

◆ W5100_S3_DHAR1

#define W5100_S3_DHAR1   0x0707

Definition at line 200 of file w5100_driver.h.

◆ W5100_S3_DHAR2

#define W5100_S3_DHAR2   0x0708

Definition at line 201 of file w5100_driver.h.

◆ W5100_S3_DHAR3

#define W5100_S3_DHAR3   0x0709

Definition at line 202 of file w5100_driver.h.

◆ W5100_S3_DHAR4

#define W5100_S3_DHAR4   0x070A

Definition at line 203 of file w5100_driver.h.

◆ W5100_S3_DHAR5

#define W5100_S3_DHAR5   0x070B

Definition at line 204 of file w5100_driver.h.

◆ W5100_S3_DIPR0

#define W5100_S3_DIPR0   0x070C

Definition at line 205 of file w5100_driver.h.

◆ W5100_S3_DIPR1

#define W5100_S3_DIPR1   0x070D

Definition at line 206 of file w5100_driver.h.

◆ W5100_S3_DIPR2

#define W5100_S3_DIPR2   0x070E

Definition at line 207 of file w5100_driver.h.

◆ W5100_S3_DIPR3

#define W5100_S3_DIPR3   0x070F

Definition at line 208 of file w5100_driver.h.

◆ W5100_S3_DPORT0

#define W5100_S3_DPORT0   0x0710

Definition at line 209 of file w5100_driver.h.

◆ W5100_S3_DPORT1

#define W5100_S3_DPORT1   0x0711

Definition at line 210 of file w5100_driver.h.

◆ W5100_S3_IR

#define W5100_S3_IR   0x0702

Definition at line 195 of file w5100_driver.h.

◆ W5100_S3_MR

#define W5100_S3_MR   0x0700

Definition at line 193 of file w5100_driver.h.

◆ W5100_S3_MSSR0

#define W5100_S3_MSSR0   0x0712

Definition at line 211 of file w5100_driver.h.

◆ W5100_S3_MSSR1

#define W5100_S3_MSSR1   0x0713

Definition at line 212 of file w5100_driver.h.

◆ W5100_S3_PORT0

#define W5100_S3_PORT0   0x0704

Definition at line 197 of file w5100_driver.h.

◆ W5100_S3_PORT1

#define W5100_S3_PORT1   0x0705

Definition at line 198 of file w5100_driver.h.

◆ W5100_S3_PROTO

#define W5100_S3_PROTO   0x0714

Definition at line 213 of file w5100_driver.h.

◆ W5100_S3_RX_RD0

#define W5100_S3_RX_RD0   0x0728

Definition at line 224 of file w5100_driver.h.

◆ W5100_S3_RX_RD1

#define W5100_S3_RX_RD1   0x0729

Definition at line 225 of file w5100_driver.h.

◆ W5100_S3_RX_RSR0

#define W5100_S3_RX_RSR0   0x0726

Definition at line 222 of file w5100_driver.h.

◆ W5100_S3_RX_RSR1

#define W5100_S3_RX_RSR1   0x0727

Definition at line 223 of file w5100_driver.h.

◆ W5100_S3_SR

#define W5100_S3_SR   0x0703

Definition at line 196 of file w5100_driver.h.

◆ W5100_S3_TOS

#define W5100_S3_TOS   0x0715

Definition at line 214 of file w5100_driver.h.

◆ W5100_S3_TTL

#define W5100_S3_TTL   0x0716

Definition at line 215 of file w5100_driver.h.

◆ W5100_S3_TX_FSR0

#define W5100_S3_TX_FSR0   0x0720

Definition at line 216 of file w5100_driver.h.

◆ W5100_S3_TX_FSR1

#define W5100_S3_TX_FSR1   0x0721

Definition at line 217 of file w5100_driver.h.

◆ W5100_S3_TX_RD0

#define W5100_S3_TX_RD0   0x0722

Definition at line 218 of file w5100_driver.h.

◆ W5100_S3_TX_RD1

#define W5100_S3_TX_RD1   0x0723

Definition at line 219 of file w5100_driver.h.

◆ W5100_S3_TX_WR0

#define W5100_S3_TX_WR0   0x0724

Definition at line 220 of file w5100_driver.h.

◆ W5100_S3_TX_WR1

#define W5100_S3_TX_WR1   0x0725

Definition at line 221 of file w5100_driver.h.

◆ W5100_SHAR0

#define W5100_SHAR0   0x09

Definition at line 65 of file w5100_driver.h.

◆ W5100_SHAR1

#define W5100_SHAR1   0x0A

Definition at line 66 of file w5100_driver.h.

◆ W5100_SHAR2

#define W5100_SHAR2   0x0B

Definition at line 67 of file w5100_driver.h.

◆ W5100_SHAR3

#define W5100_SHAR3   0x0C

Definition at line 68 of file w5100_driver.h.

◆ W5100_SHAR4

#define W5100_SHAR4   0x0D

Definition at line 69 of file w5100_driver.h.

◆ W5100_SHAR5

#define W5100_SHAR5   0x0E

Definition at line 70 of file w5100_driver.h.

◆ W5100_SIPR0

#define W5100_SIPR0   0x0F

Definition at line 71 of file w5100_driver.h.

◆ W5100_SIPR1

#define W5100_SIPR1   0x10

Definition at line 72 of file w5100_driver.h.

◆ W5100_SIPR2

#define W5100_SIPR2   0x11

Definition at line 73 of file w5100_driver.h.

◆ W5100_SIPR3

#define W5100_SIPR3   0x12

Definition at line 74 of file w5100_driver.h.

◆ W5100_Sn_CR

#define W5100_Sn_CR (   n)    (0x0401 + ((n) * 0x0100))

Definition at line 229 of file w5100_driver.h.

◆ W5100_Sn_CR_CLOSE

#define W5100_Sn_CR_CLOSE   0x10

Definition at line 352 of file w5100_driver.h.

◆ W5100_Sn_CR_CONNECT

#define W5100_Sn_CR_CONNECT   0x04

Definition at line 350 of file w5100_driver.h.

◆ W5100_Sn_CR_DISCON

#define W5100_Sn_CR_DISCON   0x08

Definition at line 351 of file w5100_driver.h.

◆ W5100_Sn_CR_LISTEN

#define W5100_Sn_CR_LISTEN   0x02

Definition at line 349 of file w5100_driver.h.

◆ W5100_Sn_CR_OPEN

#define W5100_Sn_CR_OPEN   0x01

Definition at line 348 of file w5100_driver.h.

◆ W5100_Sn_CR_RECV

#define W5100_Sn_CR_RECV   0x40

Definition at line 356 of file w5100_driver.h.

◆ W5100_Sn_CR_SEND

#define W5100_Sn_CR_SEND   0x20

Definition at line 353 of file w5100_driver.h.

◆ W5100_Sn_CR_SEND_KEEP

#define W5100_Sn_CR_SEND_KEEP   0x22

Definition at line 355 of file w5100_driver.h.

◆ W5100_Sn_CR_SEND_MAC

#define W5100_Sn_CR_SEND_MAC   0x21

Definition at line 354 of file w5100_driver.h.

◆ W5100_Sn_DHAR0

#define W5100_Sn_DHAR0 (   n)    (0x0406 + ((n) * 0x0100))

Definition at line 234 of file w5100_driver.h.

◆ W5100_Sn_DHAR1

#define W5100_Sn_DHAR1 (   n)    (0x0407 + ((n) * 0x0100))

Definition at line 235 of file w5100_driver.h.

◆ W5100_Sn_DHAR2

#define W5100_Sn_DHAR2 (   n)    (0x0408 + ((n) * 0x0100))

Definition at line 236 of file w5100_driver.h.

◆ W5100_Sn_DHAR3

#define W5100_Sn_DHAR3 (   n)    (0x0409 + ((n) * 0x0100))

Definition at line 237 of file w5100_driver.h.

◆ W5100_Sn_DHAR4

#define W5100_Sn_DHAR4 (   n)    (0x040A + ((n) * 0x0100))

Definition at line 238 of file w5100_driver.h.

◆ W5100_Sn_DHAR5

#define W5100_Sn_DHAR5 (   n)    (0x040B + ((n) * 0x0100))

Definition at line 239 of file w5100_driver.h.

◆ W5100_Sn_DIPR0

#define W5100_Sn_DIPR0 (   n)    (0x040C + ((n) * 0x0100))

Definition at line 240 of file w5100_driver.h.

◆ W5100_Sn_DIPR1

#define W5100_Sn_DIPR1 (   n)    (0x040D + ((n) * 0x0100))

Definition at line 241 of file w5100_driver.h.

◆ W5100_Sn_DIPR2

#define W5100_Sn_DIPR2 (   n)    (0x040E + ((n) * 0x0100))

Definition at line 242 of file w5100_driver.h.

◆ W5100_Sn_DIPR3

#define W5100_Sn_DIPR3 (   n)    (0x040F + ((n) * 0x0100))

Definition at line 243 of file w5100_driver.h.

◆ W5100_Sn_DPORT0

#define W5100_Sn_DPORT0 (   n)    (0x0410 + ((n) * 0x0100))

Definition at line 244 of file w5100_driver.h.

◆ W5100_Sn_DPORT1

#define W5100_Sn_DPORT1 (   n)    (0x0411 + ((n) * 0x0100))

Definition at line 245 of file w5100_driver.h.

◆ W5100_Sn_IR

#define W5100_Sn_IR (   n)    (0x0402 + ((n) * 0x0100))

Definition at line 230 of file w5100_driver.h.

◆ W5100_Sn_IR_CON

#define W5100_Sn_IR_CON   0x01

Definition at line 363 of file w5100_driver.h.

◆ W5100_Sn_IR_DISCON

#define W5100_Sn_IR_DISCON   0x02

Definition at line 362 of file w5100_driver.h.

◆ W5100_Sn_IR_RECV

#define W5100_Sn_IR_RECV   0x04

Definition at line 361 of file w5100_driver.h.

◆ W5100_Sn_IR_SEND_OK

#define W5100_Sn_IR_SEND_OK   0x10

Definition at line 359 of file w5100_driver.h.

◆ W5100_Sn_IR_TIMEOUT

#define W5100_Sn_IR_TIMEOUT   0x08

Definition at line 360 of file w5100_driver.h.

◆ W5100_Sn_MR

#define W5100_Sn_MR (   n)    (0x0400 + ((n) * 0x0100))

Definition at line 228 of file w5100_driver.h.

◆ W5100_Sn_MR_MC

#define W5100_Sn_MR_MC   0x20

Definition at line 338 of file w5100_driver.h.

◆ W5100_Sn_MR_MULTI

#define W5100_Sn_MR_MULTI   0x80

Definition at line 336 of file w5100_driver.h.

◆ W5100_Sn_MR_ND

#define W5100_Sn_MR_ND   0x20

Definition at line 337 of file w5100_driver.h.

◆ W5100_Sn_MR_PROTOCOL

#define W5100_Sn_MR_PROTOCOL   0x0F

Definition at line 339 of file w5100_driver.h.

◆ W5100_Sn_MR_PROTOCOL_CLOSED

#define W5100_Sn_MR_PROTOCOL_CLOSED   0x00

Definition at line 340 of file w5100_driver.h.

◆ W5100_Sn_MR_PROTOCOL_IPRAW

#define W5100_Sn_MR_PROTOCOL_IPRAW   0x03

Definition at line 343 of file w5100_driver.h.

◆ W5100_Sn_MR_PROTOCOL_MACRAW

#define W5100_Sn_MR_PROTOCOL_MACRAW   0x04

Definition at line 344 of file w5100_driver.h.

◆ W5100_Sn_MR_PROTOCOL_PPPOE

#define W5100_Sn_MR_PROTOCOL_PPPOE   0x05

Definition at line 345 of file w5100_driver.h.

◆ W5100_Sn_MR_PROTOCOL_TCP

#define W5100_Sn_MR_PROTOCOL_TCP   0x01

Definition at line 341 of file w5100_driver.h.

◆ W5100_Sn_MR_PROTOCOL_UDP

#define W5100_Sn_MR_PROTOCOL_UDP   0x02

Definition at line 342 of file w5100_driver.h.

◆ W5100_Sn_MSSR0

#define W5100_Sn_MSSR0 (   n)    (0x0412 + ((n) * 0x0100))

Definition at line 246 of file w5100_driver.h.

◆ W5100_Sn_MSSR1

#define W5100_Sn_MSSR1 (   n)    (0x0413 + ((n) * 0x0100))

Definition at line 247 of file w5100_driver.h.

◆ W5100_Sn_PORT0

#define W5100_Sn_PORT0 (   n)    (0x0404 + ((n) * 0x0100))

Definition at line 232 of file w5100_driver.h.

◆ W5100_Sn_PORT1

#define W5100_Sn_PORT1 (   n)    (0x0405 + ((n) * 0x0100))

Definition at line 233 of file w5100_driver.h.

◆ W5100_Sn_PROTO

#define W5100_Sn_PROTO (   n)    (0x0414 + ((n) * 0x0100))

Definition at line 248 of file w5100_driver.h.

◆ W5100_Sn_RX_RD0

#define W5100_Sn_RX_RD0 (   n)    (0x0428 + ((n) * 0x0100))

Definition at line 259 of file w5100_driver.h.

◆ W5100_Sn_RX_RD1

#define W5100_Sn_RX_RD1 (   n)    (0x0429 + ((n) * 0x0100))

Definition at line 260 of file w5100_driver.h.

◆ W5100_Sn_RX_RSR0

#define W5100_Sn_RX_RSR0 (   n)    (0x0426 + ((n) * 0x0100))

Definition at line 257 of file w5100_driver.h.

◆ W5100_Sn_RX_RSR1

#define W5100_Sn_RX_RSR1 (   n)    (0x0427 + ((n) * 0x0100))

Definition at line 258 of file w5100_driver.h.

◆ W5100_Sn_SR

#define W5100_Sn_SR (   n)    (0x0403 + ((n) * 0x0100))

Definition at line 231 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_ARP_1

#define W5100_Sn_SR_SOCK_ARP_1   0x11

Definition at line 367 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_ARP_2

#define W5100_Sn_SR_SOCK_ARP_2   0x21

Definition at line 378 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_ARP_3

#define W5100_Sn_SR_SOCK_ARP_3   0x31

Definition at line 380 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_CLOSE_WAIT

#define W5100_Sn_SR_SOCK_CLOSE_WAIT   0x1C

Definition at line 376 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_CLOSED

#define W5100_Sn_SR_SOCK_CLOSED   0x00

Definition at line 366 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_CLOSING

#define W5100_Sn_SR_SOCK_CLOSING   0x1A

Definition at line 374 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_ESTABLISHED

#define W5100_Sn_SR_SOCK_ESTABLISHED   0x17

Definition at line 372 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_FIN_WAIT

#define W5100_Sn_SR_SOCK_FIN_WAIT   0x18

Definition at line 373 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_INIT

#define W5100_Sn_SR_SOCK_INIT   0x13

Definition at line 368 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_IPRAW

#define W5100_Sn_SR_SOCK_IPRAW   0x32

Definition at line 381 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_LAST_ACK

#define W5100_Sn_SR_SOCK_LAST_ACK   0x1D

Definition at line 377 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_LISTEN

#define W5100_Sn_SR_SOCK_LISTEN   0x14

Definition at line 369 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_MACRAW

#define W5100_Sn_SR_SOCK_MACRAW   0x42

Definition at line 382 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_PPPOE

#define W5100_Sn_SR_SOCK_PPPOE   0x5F

Definition at line 383 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_SYNRECV

#define W5100_Sn_SR_SOCK_SYNRECV   0x16

Definition at line 371 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_SYNSENT

#define W5100_Sn_SR_SOCK_SYNSENT   0x15

Definition at line 370 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_TIME_WAIT

#define W5100_Sn_SR_SOCK_TIME_WAIT   0x1B

Definition at line 375 of file w5100_driver.h.

◆ W5100_Sn_SR_SOCK_UDP

#define W5100_Sn_SR_SOCK_UDP   0x22

Definition at line 379 of file w5100_driver.h.

◆ W5100_Sn_TOS

#define W5100_Sn_TOS (   n)    (0x0415 + ((n) * 0x0100))

Definition at line 249 of file w5100_driver.h.

◆ W5100_Sn_TTL

#define W5100_Sn_TTL (   n)    (0x0416 + ((n) * 0x0100))

Definition at line 250 of file w5100_driver.h.

◆ W5100_Sn_TX_FSR0

#define W5100_Sn_TX_FSR0 (   n)    (0x0420 + ((n) * 0x0100))

Definition at line 251 of file w5100_driver.h.

◆ W5100_Sn_TX_FSR1

#define W5100_Sn_TX_FSR1 (   n)    (0x0421 + ((n) * 0x0100))

Definition at line 252 of file w5100_driver.h.

◆ W5100_Sn_TX_RD0

#define W5100_Sn_TX_RD0 (   n)    (0x0422 + ((n) * 0x0100))

Definition at line 253 of file w5100_driver.h.

◆ W5100_Sn_TX_RD1

#define W5100_Sn_TX_RD1 (   n)    (0x0423 + ((n) * 0x0100))

Definition at line 254 of file w5100_driver.h.

◆ W5100_Sn_TX_WR0

#define W5100_Sn_TX_WR0 (   n)    (0x0424 + ((n) * 0x0100))

Definition at line 255 of file w5100_driver.h.

◆ W5100_Sn_TX_WR1

#define W5100_Sn_TX_WR1 (   n)    (0x0425 + ((n) * 0x0100))

Definition at line 256 of file w5100_driver.h.

◆ W5100_SUBR0

#define W5100_SUBR0   0x05

Definition at line 61 of file w5100_driver.h.

◆ W5100_SUBR1

#define W5100_SUBR1   0x06

Definition at line 62 of file w5100_driver.h.

◆ W5100_SUBR2

#define W5100_SUBR2   0x07

Definition at line 63 of file w5100_driver.h.

◆ W5100_SUBR3

#define W5100_SUBR3   0x08

Definition at line 64 of file w5100_driver.h.

◆ W5100_TMSR

#define W5100_TMSR   0x1B

Definition at line 81 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET0

#define W5100_TMSR_SOCKET0   0x03

Definition at line 329 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET0_1KB

#define W5100_TMSR_SOCKET0_1KB   0x00

Definition at line 330 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET0_2KB

#define W5100_TMSR_SOCKET0_2KB   0x01

Definition at line 331 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET0_4KB

#define W5100_TMSR_SOCKET0_4KB   0x02

Definition at line 332 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET0_8KB

#define W5100_TMSR_SOCKET0_8KB   0x03

Definition at line 333 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET1

#define W5100_TMSR_SOCKET1   0x0C

Definition at line 324 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET1_1KB

#define W5100_TMSR_SOCKET1_1KB   0x00

Definition at line 325 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET1_2KB

#define W5100_TMSR_SOCKET1_2KB   0x04

Definition at line 326 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET1_4KB

#define W5100_TMSR_SOCKET1_4KB   0x08

Definition at line 327 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET1_8KB

#define W5100_TMSR_SOCKET1_8KB   0x0C

Definition at line 328 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET2

#define W5100_TMSR_SOCKET2   0x30

Definition at line 319 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET2_1KB

#define W5100_TMSR_SOCKET2_1KB   0x00

Definition at line 320 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET2_2KB

#define W5100_TMSR_SOCKET2_2KB   0x10

Definition at line 321 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET2_4KB

#define W5100_TMSR_SOCKET2_4KB   0x20

Definition at line 322 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET2_8KB

#define W5100_TMSR_SOCKET2_8KB   0x30

Definition at line 323 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET3

#define W5100_TMSR_SOCKET3   0xC0

Definition at line 314 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET3_1KB

#define W5100_TMSR_SOCKET3_1KB   0x00

Definition at line 315 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET3_2KB

#define W5100_TMSR_SOCKET3_2KB   0x40

Definition at line 316 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET3_4KB

#define W5100_TMSR_SOCKET3_4KB   0x80

Definition at line 317 of file w5100_driver.h.

◆ W5100_TMSR_SOCKET3_8KB

#define W5100_TMSR_SOCKET3_8KB   0xC0

Definition at line 318 of file w5100_driver.h.

◆ W5100_TX_BUFFER

#define W5100_TX_BUFFER   0x4000

Definition at line 263 of file w5100_driver.h.

◆ W5100_UIPR0

#define W5100_UIPR0   0x2A

Definition at line 86 of file w5100_driver.h.

◆ W5100_UIPR1

#define W5100_UIPR1   0x2B

Definition at line 87 of file w5100_driver.h.

◆ W5100_UIPR2

#define W5100_UIPR2   0x2C

Definition at line 88 of file w5100_driver.h.

◆ W5100_UIPR3

#define W5100_UIPR3   0x2D

Definition at line 89 of file w5100_driver.h.

◆ W5100_UPORT0

#define W5100_UPORT0   0x2E

Definition at line 90 of file w5100_driver.h.

◆ W5100_UPORT1

#define W5100_UPORT1   0x2F

Definition at line 91 of file w5100_driver.h.

Function Documentation

◆ w5100DisableIrq()

void w5100DisableIrq ( NetInterface interface)

Disable interrupts.

Parameters
[in]interfaceUnderlying network interface

Definition at line 202 of file w5100_driver.c.

◆ w5100DumpReg()

void w5100DumpReg ( NetInterface interface)

Dump registers for debugging purpose.

Parameters
[in]interfaceUnderlying network interface

Definition at line 716 of file w5100_driver.c.

◆ w5100EnableIrq()

void w5100EnableIrq ( NetInterface interface)

Enable interrupts.

Parameters
[in]interfaceUnderlying network interface

Definition at line 187 of file w5100_driver.c.

◆ w5100EventHandler()

void w5100EventHandler ( NetInterface interface)

W5100 event handler.

Parameters
[in]interfaceUnderlying network interface

Definition at line 279 of file w5100_driver.c.

◆ w5100Init()

error_t w5100Init ( NetInterface interface)

W5100 controller initialization.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 71 of file w5100_driver.c.

◆ w5100InitHook()

void w5100InitHook ( NetInterface interface)

W5100 custom configuration.

Parameters
[in]interfaceUnderlying network interface

Definition at line 159 of file w5100_driver.c.

◆ w5100IrqHandler()

bool_t w5100IrqHandler ( NetInterface interface)

W5100 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 218 of file w5100_driver.c.

◆ w5100ReadBuffer()

void w5100ReadBuffer ( NetInterface interface,
uint16_t  address,
uint8_t *  data,
size_t  length 
)

Read RX buffer.

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

Definition at line 696 of file w5100_driver.c.

◆ w5100ReadData()

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

Read data.

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

Definition at line 607 of file w5100_driver.c.

◆ w5100ReadReg16()

uint16_t w5100ReadReg16 ( NetInterface interface,
uint16_t  address 
)

Read 16-bit register.

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

Definition at line 507 of file w5100_driver.c.

◆ w5100ReadReg8()

uint8_t w5100ReadReg8 ( NetInterface interface,
uint16_t  address 
)

Read 8-bit register.

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

Definition at line 459 of file w5100_driver.c.

◆ w5100ReceivePacket()

error_t w5100ReceivePacket ( NetInterface interface)

Receive a packet.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 357 of file w5100_driver.c.

◆ w5100SendPacket()

error_t w5100SendPacket ( NetInterface interface,
const NetBuffer buffer,
size_t  offset,
NetTxAncillary ancillary 
)

Send a packet.

Parameters
[in]interfaceUnderlying network interface
[in]bufferMulti-part buffer containing the data to send
[in]offsetOffset to the first data byte
[in]ancillaryAdditional options passed to the stack along with the packet
Returns
Error code

Definition at line 304 of file w5100_driver.c.

◆ w5100Tick()

void w5100Tick ( NetInterface interface)

W5100 timer handler.

Parameters
[in]interfaceUnderlying network interface

Definition at line 169 of file w5100_driver.c.

◆ w5100UpdateMacAddrFilter()

error_t w5100UpdateMacAddrFilter ( NetInterface interface)

Configure MAC address filtering.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 418 of file w5100_driver.c.

◆ w5100WriteBuffer()

void w5100WriteBuffer ( NetInterface interface,
uint16_t  address,
const uint8_t *  data,
size_t  length 
)

Write TX buffer.

Parameters
[in]interfaceUnderlying network interface
[in]addressBuffer address
[in]dataPointer to the data being written
[in]lengthNumber of data to write

Definition at line 673 of file w5100_driver.c.

◆ w5100WriteData()

void w5100WriteData ( NetInterface interface,
const uint8_t *  data,
size_t  length 
)

Write data.

Parameters
[in]interfaceUnderlying network interface
[in]dataPointer to the data being written
[in]lengthNumber of data to write

Definition at line 541 of file w5100_driver.c.

◆ w5100WriteReg16()

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

Write 16-bit register.

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

Definition at line 491 of file w5100_driver.c.

◆ w5100WriteReg8()

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

Write 8-bit register.

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

Definition at line 432 of file w5100_driver.c.

Variable Documentation

◆ w5100Driver

const NicDriver w5100Driver
extern

W5100 driver.

Definition at line 44 of file w5100_driver.c.