lan9250_driver.h File Reference

LAN9250 Ethernet controller. More...

#include "core/nic.h"

Go to the source code of this file.

Macros

#define LAN9250_ETH_TX_BUFFER_SIZE   1536
 
#define LAN9250_ETH_RX_BUFFER_SIZE   1536
 
#define LAN9250_TX_CMD_SIZE   8
 
#define LAN9250_SPI_INSTR_EQIO   0x38
 
#define LAN9250_SPI_INSTR_RSTQIO   0xFF
 
#define LAN9250_SPI_INSTR_READ   0x03
 
#define LAN9250_SPI_INSTR_FASTREAD   0x0B
 
#define LAN9250_SPI_INSTR_SDOR   0x3B
 
#define LAN9250_SPI_INSTR_SDIOR   0xBB
 
#define LAN9250_SPI_INSTR_SQOR   0x6B
 
#define LAN9250_SPI_INSTR_SQIOR   0xEB
 
#define LAN9250_SPI_INSTR_WRITE   0x02
 
#define LAN9250_SPI_INSTR_SDDW   0x32
 
#define LAN9250_SPI_INSTR_SDADW   0xB2
 
#define LAN9250_SPI_INSTR_SQDW   0x62
 
#define LAN9250_SPI_INSTR_SQADW   0xE2
 
#define LAN9250_TX_CMD_A_INT_ON_COMP   0x80000000
 
#define LAN9250_TX_CMD_A_BUFFER_ALIGN   0x03000000
 
#define LAN9250_TX_CMD_A_BUFFER_ALIGN_4B   0x00000000
 
#define LAN9250_TX_CMD_A_BUFFER_ALIGN_16B   0x01000000
 
#define LAN9250_TX_CMD_A_BUFFER_ALIGN_32B   0x02000000
 
#define LAN9250_TX_CMD_A_START_OFFSET   0x001F0000
 
#define LAN9250_TX_CMD_A_START_OFFSET_0B   0x00000000
 
#define LAN9250_TX_CMD_A_FIRST_SEG   0x00002000
 
#define LAN9250_TX_CMD_A_LAST_SEG   0x00001000
 
#define LAN9250_TX_CMD_A_BUFFER_SIZE   0x000007FF
 
#define LAN9250_TX_CMD_B_PACKET_TAG   0xFFFF0000
 
#define LAN9250_TX_CMD_B_TX_CHECKSUM_EN   0x00004000
 
#define LAN9250_TX_CMD_B_ADD_CRC_DIS   0x00002000
 
#define LAN9250_TX_CMD_B_PADDING_DIS   0x00001000
 
#define LAN9250_TX_CMD_B_PACKET_LEN   0x000007FF
 
#define LAN9250_TX_STS_PACKET_TAG   0xFFFF0000
 
#define LAN9250_TX_STS_ERROR_STATUS   0x00008000
 
#define LAN9250_TX_STS_LOSS_OF_CARRIER   0x00000800
 
#define LAN9250_TX_STS_NO_CARRIER   0x00000400
 
#define LAN9250_TX_STS_LATE_COLLISION   0x00000200
 
#define LAN9250_TX_STS_EXCESS_COLLISIONS   0x00000100
 
#define LAN9250_TX_STS_COLLISION_COUNT   0x00000078
 
#define LAN9250_TX_STS_EXCESS_DEFERRAL   0x00000004
 
#define LAN9250_TX_STS_DEFERRED   0x00000001
 
#define LAN9250_RX_STS_PACKET_FILTER   0x80000000
 
#define LAN9250_RX_STS_FILTERING_FAIL   0x40000000
 
#define LAN9250_RX_STS_PACKET_LEN   0x3FFF0000
 
#define LAN9250_RX_STS_ERROR_STATUS   0x00008000
 
#define LAN9250_RX_STS_BROADCAST_FRAME   0x00002000
 
#define LAN9250_RX_STS_LENGTH_ERROR   0x00001000
 
#define LAN9250_RX_STS_RUNT_FRAME   0x00000800
 
#define LAN9250_RX_STS_MULTICAST_FRAME   0x00000400
 
#define LAN9250_RX_STS_FRAME_TOO_LONG   0x00000080
 
#define LAN9250_RX_STS_COLLISION_SEEN   0x00000040
 
#define LAN9250_RX_STS_FRAME_TYPE   0x00000020
 
#define LAN9250_RX_STS_RECEIVE_WDT   0x00000010
 
#define LAN9250_RX_STS_MII_ERROR   0x00000008
 
#define LAN9250_RX_STS_DRIBBLING_BIT   0x00000004
 
#define LAN9250_RX_STS_CRC_ERROR   0x00000002
 
#define LAN9250_RX_DATA_FIFO   0x0000
 
#define LAN9250_TX_DATA_FIFO   0x0020
 
#define LAN9250_RX_STATUS_FIFO   0x0040
 
#define LAN9250_RX_STATUS_FIFO_PEEK   0x0044
 
#define LAN9250_TX_STATUS_FIFO   0x0048
 
#define LAN9250_TX_STATUS_FIFO_PEEK   0x004C
 
#define LAN9250_ID_REV   0x0050
 
#define LAN9250_IRQ_CFG   0x0054
 
#define LAN9250_INT_STS   0x0058
 
#define LAN9250_INT_EN   0x005C
 
#define LAN9250_BYTE_TEST   0x0064
 
#define LAN9250_FIFO_INT   0x0068
 
#define LAN9250_RX_CFG   0x006C
 
#define LAN9250_TX_CFG   0x0070
 
#define LAN9250_HW_CFG   0x0074
 
#define LAN9250_RX_DP_CTRL   0x0078
 
#define LAN9250_RX_FIFO_INF   0x007C
 
#define LAN9250_TX_FIFO_INF   0x0080
 
#define LAN9250_PMT_CTRL   0x0084
 
#define LAN9250_GPT_CFG   0x008C
 
#define LAN9250_GPT_CNT   0x0090
 
#define LAN9250_FREE_RUN   0x009C
 
#define LAN9250_RX_DROP   0x00A0
 
#define LAN9250_MAC_CSR_CMD   0x00A4
 
#define LAN9250_MAC_CSR_DATA   0x00A8
 
#define LAN9250_AFC_CFG   0x00AC
 
#define LAN9250_HMAC_RX_LPI_TRANSITION   0x00B0
 
#define LAN9250_HMAC_RX_LPI_TIME   0x00B4
 
#define LAN9250_HMAC_TX_LPI_TRANSITION   0x00B8
 
#define LAN9250_HMAC_TX_LPI_TIME   0x00BC
 
#define LAN9250_1588_CMD_CTL   0x0100
 
#define LAN9250_1588_GENERAL_CONFIG   0x0104
 
#define LAN9250_1588_INT_STS   0x0108
 
#define LAN9250_1588_INT_EN   0x010C
 
#define LAN9250_1588_CLOCK_SEC   0x0110
 
#define LAN9250_1588_CLOCK_NS   0x0114
 
#define LAN9250_1588_CLOCK_SUBNS   0x0118
 
#define LAN9250_1588_CLOCK_RATE_ADJ   0x011C
 
#define LAN9250_1588_CLOCK_TEMP_RATE_ADJ   0x0120
 
#define LAN9250_1588_CLOCK_TEMP_RATE_DURATION   0x0124
 
#define LAN9250_1588_CLOCK_STEP_ADJ   0x0128
 
#define LAN9250_1588_CLOCK_TARGET_SEC_A   0x012C
 
#define LAN9250_1588_CLOCK_TARGET_NS_A   0x0130
 
#define LAN9250_1588_CLOCK_TARGET_RELOAD_SEC_A   0x0134
 
#define LAN9250_1588_CLOCK_TARGET_RELOAD_NS_A   0x0138
 
#define LAN9250_1588_CLOCK_TARGET_SEC_B   0x013C
 
#define LAN9250_1588_CLOCK_TARGET_NS_B   0x0140
 
#define LAN9250_1588_CLOCK_TARGET_RELOAD_SEC_B   0x0144
 
#define LAN9250_1588_CLOCK_TARGET_RELOAD_NS_B   0x0148
 
#define LAN9250_1588_USER_MAC_HI   0x014C
 
#define LAN9250_1588_USER_MAC_LO   0x0150
 
#define LAN9250_1588_BANK_PORT_GPIO_SEL   0x0154
 
#define LAN9250_1588_LATENCY   0x0158
 
#define LAN9250_1588_RX_PARSE_CONFIG   0x0158
 
#define LAN9250_1588_TX_PARSE_CONFIG   0x0158
 
#define LAN9250_1588_ASYM_PEERDLY   0x015C
 
#define LAN9250_1588_RX_TIMESTAMP_CONFIG   0x015C
 
#define LAN9250_1588_TX_TIMESTAMP_CONFIG   0x015C
 
#define LAN9250_1588_GPIO_CAP_CONFIG   0x015C
 
#define LAN9250_1588_CAP_INFO   0x0160
 
#define LAN9250_1588_RX_TS_INSERT_CONFIG   0x0160
 
#define LAN9250_1588_TX_MOD   0x0164
 
#define LAN9250_1588_RX_FILTER_CONFIG   0x0168
 
#define LAN9250_1588_TX_MOD2   0x0168
 
#define LAN9250_1588_RX_INGRESS_SEC   0x016C
 
#define LAN9250_1588_TX_EGRESS_SEC   0x016C
 
#define LAN9250_1588_GPIO_RE_CLOCK_SEC_CAP   0x016C
 
#define LAN9250_1588_RX_INGRESS_NS   0x0170
 
#define LAN9250_1588_TX_EGRESS_NS   0x0170
 
#define LAN9250_1588_GPIO_RE_CLOCK_NS_CAP   0x0170
 
#define LAN9250_1588_RX_MSG_HEADER   0x0174
 
#define LAN9250_1588_TX_MSG_HEADER   0x0174
 
#define LAN9250_1588_RX_PDREQ_SEC   0x0178
 
#define LAN9250_1588_TX_DREQ_SEC   0x0178
 
#define LAN9250_1588_GPIO_FE_CLOCK_SEC_CAP   0x0178
 
#define LAN9250_1588_RX_PDREQ_NS   0x017C
 
#define LAN9250_1588_TX_DREQ_NS   0x017C
 
#define LAN9250_1588_GPIO_FE_CLOCK_NS_CAP   0x017C
 
#define LAN9250_1588_RX_PDREQ_CF_HI   0x0180
 
#define LAN9250_1588_TX_ONE_STEP_SYNC_SEC   0x0180
 
#define LAN9250_1588_RX_PDREQ_CF_LOW   0x0184
 
#define LAN9250_1588_RX_CHKSUM_DROPPED_CNT   0x0188
 
#define LAN9250_1588_RX_FILTERED_CNT   0x018C
 
#define LAN9250_E2P_CMD   0x01B4
 
#define LAN9250_E2P_DATA   0x01B8
 
#define LAN9250_LED_CFG   0x01BC
 
#define LAN9250_GPIO_CFG   0x01E0
 
#define LAN9250_GPIO_DATA_DIR   0x01E4
 
#define LAN9250_GPIO_INT_STS_EN   0x01E8
 
#define LAN9250_RESET_CTL   0x01F8
 
#define LAN9250_HMAC_CR   0x01
 
#define LAN9250_HMAC_ADDRH   0x02
 
#define LAN9250_HMAC_ADDRL   0x03
 
#define LAN9250_HMAC_HASHH   0x04
 
#define LAN9250_HMAC_HASHL   0x05
 
#define LAN9250_HMAC_MII_ACC   0x06
 
#define LAN9250_HMAC_MII_DATA   0x07
 
#define LAN9250_HMAC_FLOW   0x08
 
#define LAN9250_HMAC_VLAN1   0x09
 
#define LAN9250_HMAC_VLAN2   0x0A
 
#define LAN9250_HMAC_WUFF   0x0B
 
#define LAN9250_HMAC_WUCSR   0x0C
 
#define LAN9250_HMAC_COE_CR   0x0D
 
#define LAN9250_HMAC_EEE_TW_TX_SYS   0x0E
 
#define LAN9250_HMAC_EEE_TX_LPI_REQ_DELAY   0x0F
 
#define LAN9250_PHY_BASIC_CONTROL   0x00
 
#define LAN9250_PHY_BASIC_STATUS   0x01
 
#define LAN9250_PHY_ID_MSB   0x02
 
#define LAN9250_PHY_ID_LSB   0x03
 
#define LAN9250_PHY_AN_ADV   0x04
 
#define LAN9250_PHY_AN_LP_BASE_ABILITY   0x05
 
#define LAN9250_PHY_AN_EXP   0x06
 
#define LAN9250_PHY_AN_NP_TX   0x07
 
#define LAN9250_PHY_AN_NP_RX   0x08
 
#define LAN9250_PHY_MMD_ACCESS   0x0D
 
#define LAN9250_PHY_MMD_ADDR_DATA   0x0E
 
#define LAN9250_PHY_EDPD_CFG   0x10
 
#define LAN9250_PHY_MODE_CONTROL_STATUS   0x11
 
#define LAN9250_PHY_SPECIAL_MODES   0x12
 
#define LAN9250_PHY_TDR_PAT_DELAY   0x18
 
#define LAN9250_PHY_TDR_CONTROL_STAT   0x19
 
#define LAN9250_PHY_SYMBOL_ERR_COUNTER   0x1A
 
#define LAN9250_PHY_SPECIAL_CONTROL_STAT_IND   0x1B
 
#define LAN9250_PHY_CABLE_LEN   0x1C
 
#define LAN9250_PHY_INTERRUPT_SOURCE   0x1D
 
#define LAN9250_PHY_INTERRUPT_MASK   0x1E
 
#define LAN9250_PHY_SPECIAL_CONTROL_STATUS   0x1F
 
#define LAN9250_PHY_PCS_CTL1   0x03, 0x00
 
#define LAN9250_PHY_PCS_STAT1   0x03, 0x01
 
#define LAN9250_PHY_PCS_MMD_PRESENT1   0x03, 0x05
 
#define LAN9250_PHY_PCS_MMD_PRESENT2   0x03, 0x06
 
#define LAN9250_PHY_EEE_CAP   0x03, 0x14
 
#define LAN9250_PHY_EEE_WAKE_ERR   0x03, 0x16
 
#define LAN9250_PHY_AN_MMD_PRESENT1   0x07, 0x05
 
#define LAN9250_PHY_AN_MMD_PRESENT2   0x07, 0x06
 
#define LAN9250_PHY_EEE_ADV   0x07, 0x3C
 
#define LAN9250_PHY_EEE_LP_ADV   0x07, 0x3D
 
#define LAN9250_PHY_VEND_SPEC_MMD1_DEVID1   0x1E, 0x02
 
#define LAN9250_PHY_VEND_SPEC_MMD1_DEVID2   0x1E, 0x03
 
#define LAN9250_PHY_VEND_SPEC_MMD1_PRESENT1   0x1E, 0x05
 
#define LAN9250_PHY_VEND_SPEC_MMD1_PRESENT2   0x1E, 0x06
 
#define LAN9250_PHY_VEND_SPEC_MMD1_STAT   0x1E, 0x08
 
#define LAN9250_PHY_VEND_SPEC_MMD1_PKG_ID1   0x1E, 0x0E
 
#define LAN9250_PHY_VEND_SPEC_MMD1_PKG_ID2   0x1E, 0x0F
 
#define LAN9250_ID_REV_CHIP_ID   0xFFFF0000
 
#define LAN9250_ID_REV_CHIP_ID_DEFAULT   0x92500000
 
#define LAN9250_ID_REV_CHIP_REV   0x0000FFFF
 
#define LAN9250_IRQ_CFG_INT_DEAS   0xFF000000
 
#define LAN9250_IRQ_CFG_INT_DEAS_10US   0x01000000
 
#define LAN9250_IRQ_CFG_INT_DEAS_100US   0x0A000000
 
#define LAN9250_IRQ_CFG_INT_DEAS_1MS   0x64000000
 
#define LAN9250_IRQ_CFG_INT_DEAS_CLR   0x00004000
 
#define LAN9250_IRQ_CFG_INT_DEAS_STS   0x00002000
 
#define LAN9250_IRQ_CFG_IRQ_INT   0x00001000
 
#define LAN9250_IRQ_CFG_IRQ_EN   0x00000100
 
#define LAN9250_IRQ_CFG_IRQ_POL   0x00000010
 
#define LAN9250_IRQ_CFG_IRQ_POL_LOW   0x00000000
 
#define LAN9250_IRQ_CFG_IRQ_POL_HIGH   0x00000010
 
#define LAN9250_IRQ_CFG_IRQ_CLK_SELECT   0x00000002
 
#define LAN9250_IRQ_CFG_IRQ_TYPE   0x00000001
 
#define LAN9250_IRQ_CFG_IRQ_TYPE_OD   0x00000000
 
#define LAN9250_IRQ_CFG_IRQ_TYPE_PP   0x00000001
 
#define LAN9250_INT_STS_SW_INT   0x80000000
 
#define LAN9250_INT_STS_READY   0x40000000
 
#define LAN9250_INT_STS_1588_EVNT   0x20000000
 
#define LAN9250_INT_STS_PHY_INT   0x04000000
 
#define LAN9250_INT_STS_TXSTOP_INT   0x02000000
 
#define LAN9250_INT_STS_RXSTOP_INT   0x01000000
 
#define LAN9250_INT_STS_RXDFH_INT   0x00800000
 
#define LAN9250_INT_STS_TX_IOC   0x00200000
 
#define LAN9250_INT_STS_RXD_INT   0x00100000
 
#define LAN9250_INT_STS_GPT_INT   0x00080000
 
#define LAN9250_INT_STS_PME_INT   0x00020000
 
#define LAN9250_INT_STS_TXSO   0x00010000
 
#define LAN9250_INT_STS_RWT   0x00008000
 
#define LAN9250_INT_STS_RXE   0x00004000
 
#define LAN9250_INT_STS_TXE   0x00002000
 
#define LAN9250_INT_STS_GPIO   0x00001000
 
#define LAN9250_INT_STS_TDFO   0x00000400
 
#define LAN9250_INT_STS_TDFA   0x00000200
 
#define LAN9250_INT_STS_TSFF   0x00000100
 
#define LAN9250_INT_STS_TSFL   0x00000080
 
#define LAN9250_INT_STS_RXDF_INT   0x00000040
 
#define LAN9250_INT_STS_RSFF   0x00000010
 
#define LAN9250_INT_STS_RSFL   0x00000008
 
#define LAN9250_INT_EN_SW_INT_EN   0x80000000
 
#define LAN9250_INT_EN_READY_EN   0x40000000
 
#define LAN9250_INT_EN_1588_EVNT_EN   0x20000000
 
#define LAN9250_INT_EN_PHY_INT_EN   0x04000000
 
#define LAN9250_INT_EN_TXSTOP_INT_EN   0x02000000
 
#define LAN9250_INT_EN_RXSTOP_INT_EN   0x01000000
 
#define LAN9250_INT_EN_RXDFH_INT_EN   0x00800000
 
#define LAN9250_INT_EN_TIOC_INT_EN   0x00200000
 
#define LAN9250_INT_EN_RXD_INT_EN   0x00100000
 
#define LAN9250_INT_EN_GPT_INT_EN   0x00080000
 
#define LAN9250_INT_EN_PME_INT_EN   0x00020000
 
#define LAN9250_INT_EN_TXSO_EN   0x00010000
 
#define LAN9250_INT_EN_RWT_INT_EN   0x00008000
 
#define LAN9250_INT_EN_RXE_INT_EN   0x00004000
 
#define LAN9250_INT_EN_TXE_INT_EN   0x00002000
 
#define LAN9250_INT_EN_GPIO_EN   0x00001000
 
#define LAN9250_INT_EN_TDFO_EN   0x00000400
 
#define LAN9250_INT_EN_TDFA_EN   0x00000200
 
#define LAN9250_INT_EN_TSFF_EN   0x00000100
 
#define LAN9250_INT_EN_TSFL_EN   0x00000080
 
#define LAN9250_INT_EN_RXDF_INT_EN   0x00000040
 
#define LAN9250_INT_EN_RSFF_EN   0x00000010
 
#define LAN9250_INT_EN_RSFL_EN   0x00000008
 
#define LAN9250_BYTE_TEST_DEFAULT   0x87654321
 
#define LAN9250_FIFO_INT_TX_DATA_AVAILABLE_LEVEL   0xFF000000
 
#define LAN9250_FIFO_INT_TX_STATUS_LEVEL   0x00FF0000
 
#define LAN9250_FIFO_INT_RX_STATUS_LEVEL   0x000000FF
 
#define LAN9250_RX_CFG_RX_EA   0xC0000000
 
#define LAN9250_RX_CFG_RX_EA_4_BYTES   0x00000000
 
#define LAN9250_RX_CFG_RX_EA_16_BYTES   0x40000000
 
#define LAN9250_RX_CFG_RX_EA_32_BYTES   0x80000000
 
#define LAN9250_RX_CFG_RX_DMA_CNT   0x0FFF0000
 
#define LAN9250_RX_CFG_RX_DUMP   0x00008000
 
#define LAN9250_RX_CFG_RXDOFF   0x00001F00
 
#define LAN9250_TX_CFG_TXS_DUMP   0x00008000
 
#define LAN9250_TX_CFG_TXD_DUMP   0x00004000
 
#define LAN9250_TX_CFG_TXSAO   0x00000004
 
#define LAN9250_TX_CFG_TX_ON   0x00000002
 
#define LAN9250_TX_CFG_STOP_TX   0x00000001
 
#define LAN9250_HW_CFG_DEVICE_READY   0x08000000
 
#define LAN9250_HW_CFG_AMDIX_EN_STRAP_STATE   0x02000000
 
#define LAN9250_HW_CFG_MBO   0x00100000
 
#define LAN9250_HW_CFG_TX_FIF_SZ   0x000F0000
 
#define LAN9250_HW_CFG_TX_FIF_SZ_2KB   0x00020000
 
#define LAN9250_HW_CFG_TX_FIF_SZ_3KB   0x00030000
 
#define LAN9250_HW_CFG_TX_FIF_SZ_4KB   0x00040000
 
#define LAN9250_HW_CFG_TX_FIF_SZ_5KB   0x00050000
 
#define LAN9250_HW_CFG_TX_FIF_SZ_6KB   0x00060000
 
#define LAN9250_HW_CFG_TX_FIF_SZ_7KB   0x00070000
 
#define LAN9250_HW_CFG_TX_FIF_SZ_8KB   0x00080000
 
#define LAN9250_HW_CFG_TX_FIF_SZ_9KB   0x00090000
 
#define LAN9250_HW_CFG_TX_FIF_SZ_10KB   0x000A0000
 
#define LAN9250_HW_CFG_TX_FIF_SZ_11KB   0x000B0000
 
#define LAN9250_HW_CFG_TX_FIF_SZ_12KB   0x000C0000
 
#define LAN9250_HW_CFG_TX_FIF_SZ_13KB   0x000D0000
 
#define LAN9250_HW_CFG_TX_FIF_SZ_14KB   0x000E0000
 
#define LAN9250_RX_DP_CTRL_RX_FFWD   0x80000000
 
#define LAN9250_RX_FIFO_INF_RXSUSED   0x00FF0000
 
#define LAN9250_RX_FIFO_INF_RXDUSED   0x0000FFFF
 
#define LAN9250_TX_FIFO_INF_TXSUSED   0x00FF0000
 
#define LAN9250_TX_FIFO_INF_TXFREE   0x0000FFFF
 
#define LAN9250_PMT_CTRL_PM_MODE   0xE0000000
 
#define LAN9250_PMT_CTRL_PM_SLEEP_EN   0x10000000
 
#define LAN9250_PMT_CTRL_PM_WAKE   0x08000000
 
#define LAN9250_PMT_CTRL_LED_DIS   0x04000000
 
#define LAN9250_PMT_CTRL_1588_DIS   0x02000000
 
#define LAN9250_PMT_CTRL_1588_TSU_DIS   0x00400000
 
#define LAN9250_PMT_CTRL_HMAC_DIS   0x00080000
 
#define LAN9250_PMT_CTRL_HMAC_SYS_ONLY_DIS   0x00040000
 
#define LAN9250_PMT_CTRL_ED_STS   0x00010000
 
#define LAN9250_PMT_CTRL_ED_EN   0x00004000
 
#define LAN9250_PMT_CTRL_WOL_EN   0x00000200
 
#define LAN9250_PMT_CTRL_PME_TYPE   0x00000040
 
#define LAN9250_PMT_CTRL_WOL_STS   0x00000020
 
#define LAN9250_PMT_CTRL_PME_IND   0x00000008
 
#define LAN9250_PMT_CTRL_PME_POL   0x00000004
 
#define LAN9250_PMT_CTRL_PME_EN   0x00000002
 
#define LAN9250_PMT_CTRL_READY   0x00000001
 
#define LAN9250_GPT_CFG_TIMER_EN   0x20000000
 
#define LAN9250_GPT_CFG_GPT_LOAD   0x0000FFFF
 
#define LAN9250_GPT_CNT_GPT_CNT   0x0000FFFF
 
#define LAN9250_FREE_RUN_FR_CNT   0xFFFFFFFF
 
#define LAN9250_RX_DROP_RX_DFC   0xFFFFFFFF
 
#define LAN9250_MAC_CSR_CMD_BUSY   0x80000000
 
#define LAN9250_MAC_CSR_CMD_WRITE   0x00000000
 
#define LAN9250_MAC_CSR_CMD_READ   0x40000000
 
#define LAN9250_MAC_CSR_CMD_ADDR   0x000000FF
 
#define LAN9250_AFC_CFG_AFC_HI   0x00FF0000
 
#define LAN9250_AFC_CFG_AFC_LO   0x0000FF00
 
#define LAN9250_AFC_CFG_BACK_DUR   0x000000F0
 
#define LAN9250_AFC_CFG_FCMULT   0x00000008
 
#define LAN9250_AFC_CFG_FCBRD   0x00000004
 
#define LAN9250_AFC_CFG_FCADD   0x00000002
 
#define LAN9250_AFC_CFG_FCANY   0x00000001
 
#define LAN9250_E2P_CMD_EPC_BUSY   0x80000000
 
#define LAN9250_E2P_CMD_EPC_COMMAND   0x70000000
 
#define LAN9250_E2P_CMD_EPC_COMMAND_READ   0x00000000
 
#define LAN9250_E2P_CMD_EPC_COMMAND_WRITE   0x30000000
 
#define LAN9250_E2P_CMD_EPC_COMMAND_RELOAD   0x70000000
 
#define LAN9250_E2P_CMD_LOADER_OVERFLOW   0x00040000
 
#define LAN9250_E2P_CMD_EPC_TIMEOUT   0x00020000
 
#define LAN9250_E2P_CMD_CFG_LOADED   0x00010000
 
#define LAN9250_E2P_CMD_EPC_ADDR   0x0000FFFF
 
#define LAN9250_E2P_DATA_EEPROM_DATA   0x000000FF
 
#define LAN9250_LED_CFG_LED_FUN   0x00000700
 
#define LAN9250_LED_CFG_LED_FUN_0   0x00000000
 
#define LAN9250_LED_CFG_LED_FUN_1   0x00000100
 
#define LAN9250_LED_CFG_LED_FUN_2   0x00000200
 
#define LAN9250_LED_CFG_LED_FUN_3   0x00000300
 
#define LAN9250_LED_CFG_LED_FUN_4   0x00000400
 
#define LAN9250_LED_CFG_LED_EN   0x00000007
 
#define LAN9250_LED_CFG_LED_EN_0   0x00000001
 
#define LAN9250_LED_CFG_LED_EN_1   0x00000002
 
#define LAN9250_LED_CFG_LED_EN_2   0x00000004
 
#define LAN9250_GPIO_CFG_GPIO_CH_SEL   0x07000000
 
#define LAN9250_GPIO_CFG_GPIO_CH_SEL_0   0x01000000
 
#define LAN9250_GPIO_CFG_GPIO_CH_SEL_1   0x02000000
 
#define LAN9250_GPIO_CFG_GPIO_CH_SEL_2   0x04000000
 
#define LAN9250_GPIO_CFG_GPIO_POL   0x00070000
 
#define LAN9250_GPIO_CFG_GPIO_POL_0   0x00010000
 
#define LAN9250_GPIO_CFG_GPIO_POL_1   0x00020000
 
#define LAN9250_GPIO_CFG_GPIO_POL_2   0x00040000
 
#define LAN9250_GPIO_CFG_1588_GPIO_OE   0x00000700
 
#define LAN9250_GPIO_CFG_1588_GPIO_OE_0   0x00000100
 
#define LAN9250_GPIO_CFG_1588_GPIO_OE_1   0x00000200
 
#define LAN9250_GPIO_CFG_1588_GPIO_OE_2   0x00000400
 
#define LAN9250_GPIO_CFG_GPIOBUF   0x00000007
 
#define LAN9250_GPIO_CFG_GPIOBUF_0   0x00000001
 
#define LAN9250_GPIO_CFG_GPIOBUF_1   0x00000002
 
#define LAN9250_GPIO_CFG_GPIOBUF_2   0x00000004
 
#define LAN9250_GPIO_DATA_DIR_GPIODIR   0x00070000
 
#define LAN9250_GPIO_DATA_DIR_GPIODIR_0   0x00010000
 
#define LAN9250_GPIO_DATA_DIR_GPIODIR_1   0x00020000
 
#define LAN9250_GPIO_DATA_DIR_GPIODIR_2   0x00040000
 
#define LAN9250_GPIO_DATA_DIR_GPIOD   0x00000007
 
#define LAN9250_GPIO_DATA_DIR_GPIOD_0   0x00000001
 
#define LAN9250_GPIO_DATA_DIR_GPIOD_1   0x00000002
 
#define LAN9250_GPIO_DATA_DIR_GPIOD_2   0x00000004
 
#define LAN9250_GPIO_INT_STS_EN_GPIO_INT_EN   0x00070000
 
#define LAN9250_GPIO_INT_STS_EN_GPIO_INT_EN_0   0x00010000
 
#define LAN9250_GPIO_INT_STS_EN_GPIO_INT_EN_1   0x00020000
 
#define LAN9250_GPIO_INT_STS_EN_GPIO_INT_EN_2   0x00040000
 
#define LAN9250_GPIO_INT_STS_EN_GPIO_INT   0x00000007
 
#define LAN9250_GPIO_INT_STS_EN_GPIO_INT_0   0x00000001
 
#define LAN9250_GPIO_INT_STS_EN_GPIO_INT_1   0x00000002
 
#define LAN9250_GPIO_INT_STS_EN_GPIO_INT_2   0x00000004
 
#define LAN9250_RESET_CTL_HMAC_RST   0x00000020
 
#define LAN9250_RESET_CTL_PHY_RST   0x00000002
 
#define LAN9250_RESET_CTL_DIGITAL_RST   0x00000001
 
#define LAN9250_HMAC_CR_RXALL   0x80000000
 
#define LAN9250_HMAC_CR_HMAC_EEE_ENABLE   0x02000000
 
#define LAN9250_HMAC_CR_RCVOWN   0x00800000
 
#define LAN9250_HMAC_CR_LOOPBK   0x00200000
 
#define LAN9250_HMAC_CR_FDPX   0x00100000
 
#define LAN9250_HMAC_CR_MCPAS   0x00080000
 
#define LAN9250_HMAC_CR_PRMS   0x00040000
 
#define LAN9250_HMAC_CR_INVFILT   0x00020000
 
#define LAN9250_HMAC_CR_PASSBAD   0x00010000
 
#define LAN9250_HMAC_CR_HO   0x00008000
 
#define LAN9250_HMAC_CR_HPFILT   0x00002000
 
#define LAN9250_HMAC_CR_BCAST   0x00000800
 
#define LAN9250_HMAC_CR_DISRTY   0x00000400
 
#define LAN9250_HMAC_CR_PADSTR   0x00000100
 
#define LAN9250_HMAC_CR_BOLMT   0x000000C0
 
#define LAN9250_HMAC_CR_BOLMT_10_BITS   0x00000000
 
#define LAN9250_HMAC_CR_BOLMT_8_BITS   0x00000040
 
#define LAN9250_HMAC_CR_BOLMT_4_BITS   0x00000080
 
#define LAN9250_HMAC_CR_BOLMT_1_BIT   0x000000C0
 
#define LAN9250_HMAC_CR_DFCHK   0x00000020
 
#define LAN9250_HMAC_CR_TXEN   0x00000008
 
#define LAN9250_HMAC_CR_RXEN   0x00000004
 
#define LAN9250_HMAC_ADDRH_PHY_ADR_47_32   0x0000FFFF
 
#define LAN9250_HMAC_ADDRL_PHY_ADR_31_0   0xFFFFFFFF
 
#define LAN9250_HMAC_MII_ACC_PHY_ADDR   0x0000F800
 
#define LAN9250_HMAC_MII_ACC_PHY_ADDR_DEFAULT   0x00000800
 
#define LAN9250_HMAC_MII_ACC_MIIRINDA   0x000007C0
 
#define LAN9250_HMAC_MII_ACC_MIIW_R   0x00000002
 
#define LAN9250_HMAC_MII_ACC_MIIBZY   0x00000001
 
#define LAN9250_HMAC_MII_DATA_MII_DATA   0x0000FFFF
 
#define LAN9250_HMAC_FLOW_FCPT   0xFFFF0000
 
#define LAN9250_HMAC_FLOW_FCPASS   0x00000004
 
#define LAN9250_HMAC_FLOW_FCEN   0x00000002
 
#define LAN9250_HMAC_FLOW_FCBSY   0x00000001
 
#define LAN9250_HMAC_VLAN1_VTI1   0x0000FFFF
 
#define LAN9250_HMAC_VLAN2_VTI2   0x0000FFFF
 
#define LAN9250_HMAC_WUFF_WFF   0xFFFFFFFF
 
#define LAN9250_HMAC_WUCSR_WFF_PTR_RST   0x80000000
 
#define LAN9250_HMAC_WUCSR_GUE   0x00000200
 
#define LAN9250_HMAC_WUCSR_WOL_WAIT_SLEEP   0x00000100
 
#define LAN9250_HMAC_WUCSR_PFDA_FR   0x00000080
 
#define LAN9250_HMAC_WUCSR_WUFR   0x00000040
 
#define LAN9250_HMAC_WUCSR_MPR   0x00000020
 
#define LAN9250_HMAC_WUCSR_BCAST_FR   0x00000010
 
#define LAN9250_HMAC_WUCSR_PFDA_EN   0x00000008
 
#define LAN9250_HMAC_WUCSR_WUEN   0x00000004
 
#define LAN9250_HMAC_WUCSR_MPEN   0x00000002
 
#define LAN9250_HMAC_WUCSR_BCST_EN   0x00000001
 
#define LAN9250_HMAC_COE_CR_TX_COE_EN   0x00010000
 
#define LAN9250_HMAC_COE_CR_RX_COE_MODE   0x00000002
 
#define LAN9250_HMAC_COE_CR_RX_COE_EN   0x00000001
 
#define LAN9250_HMAC_EEE_TW_TX_SYS_TX_DELAY   0x00FFFFFF
 
#define LAN9250_PHY_BASIC_CONTROL_PHY_SRST   0x8000
 
#define LAN9250_PHY_BASIC_CONTROL_PHY_LOOPBACK   0x4000
 
#define LAN9250_PHY_BASIC_CONTROL_PHY_SPEED_SEL_LSB   0x2000
 
#define LAN9250_PHY_BASIC_CONTROL_PHY_AN   0x1000
 
#define LAN9250_PHY_BASIC_CONTROL_PHY_PWR_DWN   0x0800
 
#define LAN9250_PHY_BASIC_CONTROL_PHY_RST_AN   0x0200
 
#define LAN9250_PHY_BASIC_CONTROL_PHY_DUPLEX   0x0100
 
#define LAN9250_PHY_BASIC_CONTROL_PHY_COL_TEST   0x0080
 
#define LAN9250_PHY_BASIC_STATUS_100BT4   0x8000
 
#define LAN9250_PHY_BASIC_STATUS_100BTX_FD   0x4000
 
#define LAN9250_PHY_BASIC_STATUS_100BTX_HD   0x2000
 
#define LAN9250_PHY_BASIC_STATUS_10BT_FD   0x1000
 
#define LAN9250_PHY_BASIC_STATUS_10BT_HD   0x0800
 
#define LAN9250_PHY_BASIC_STATUS_100BT2_FD   0x0400
 
#define LAN9250_PHY_BASIC_STATUS_100BT2_HD   0x0200
 
#define LAN9250_PHY_BASIC_STATUS_EXTENDED_STATUS   0x0100
 
#define LAN9250_PHY_BASIC_STATUS_UNIDIRECTIONAL_ABLE   0x0080
 
#define LAN9250_PHY_BASIC_STATUS_MF_PREAMBLE_SUPPR   0x0040
 
#define LAN9250_PHY_BASIC_STATUS_AN_COMPLETE   0x0020
 
#define LAN9250_PHY_BASIC_STATUS_REMOTE_FAULT   0x0010
 
#define LAN9250_PHY_BASIC_STATUS_AN_CAPABLE   0x0008
 
#define LAN9250_PHY_BASIC_STATUS_LINK_STATUS   0x0004
 
#define LAN9250_PHY_BASIC_STATUS_JABBER_DETECT   0x0002
 
#define LAN9250_PHY_BASIC_STATUS_EXTENDED_CAPABLE   0x0001
 
#define LAN9250_PHY_ID_MSB_PHY_ID_MSB   0xFFFF
 
#define LAN9250_PHY_ID_MSB_PHY_ID_MSB_DEFAULT   0x0007
 
#define LAN9250_PHY_ID_LSB_PHY_ID_LSB   0xFC00
 
#define LAN9250_PHY_ID_LSB_PHY_ID_LSB_DEFAULT   0xC000
 
#define LAN9250_PHY_ID_LSB_MODEL_NUM   0x03F0
 
#define LAN9250_PHY_ID_LSB_MODEL_NUM_DEFAULT   0x0140
 
#define LAN9250_PHY_ID_LSB_REVISION_NUM   0x000F
 
#define LAN9250_PHY_AN_ADV_NEXT_PAGE   0x8000
 
#define LAN9250_PHY_AN_ADV_REMOTE_FAULT   0x2000
 
#define LAN9250_PHY_AN_ADV_EXTENDED_NEXT_PAGE   0x1000
 
#define LAN9250_PHY_AN_ADV_ASYM_PAUSE   0x0800
 
#define LAN9250_PHY_AN_ADV_SYM_PAUSE   0x0400
 
#define LAN9250_PHY_AN_ADV_100BTX_FD   0x0100
 
#define LAN9250_PHY_AN_ADV_100BTX_HD   0x0080
 
#define LAN9250_PHY_AN_ADV_10BT_FD   0x0040
 
#define LAN9250_PHY_AN_ADV_10BT_HD   0x0020
 
#define LAN9250_PHY_AN_ADV_SELECTOR   0x001F
 
#define LAN9250_PHY_AN_ADV_SELECTOR_DEFAULT   0x0001
 
#define LAN9250_PHY_AN_LP_BASE_ABILITY_NEXT_PAGE   0x8000
 
#define LAN9250_PHY_AN_LP_BASE_ABILITY_ACK   0x4000
 
#define LAN9250_PHY_AN_LP_BASE_ABILITY_REMOTE_FAULT   0x2000
 
#define LAN9250_PHY_AN_LP_BASE_ABILITY_EXTENDED_NEXT_PAGE   0x1000
 
#define LAN9250_PHY_AN_LP_BASE_ABILITY_ASYM_PAUSE   0x0800
 
#define LAN9250_PHY_AN_LP_BASE_ABILITY_SYM_PAUSE   0x0400
 
#define LAN9250_PHY_AN_LP_BASE_ABILITY_100BT4   0x0200
 
#define LAN9250_PHY_AN_LP_BASE_ABILITY_100BTX_FD   0x0100
 
#define LAN9250_PHY_AN_LP_BASE_ABILITY_100BTX_HD   0x0080
 
#define LAN9250_PHY_AN_LP_BASE_ABILITY_10BT_FD   0x0040
 
#define LAN9250_PHY_AN_LP_BASE_ABILITY_10BT_HD   0x0020
 
#define LAN9250_PHY_AN_LP_BASE_ABILITY_SELECTOR   0x001F
 
#define LAN9250_PHY_AN_LP_BASE_ABILITY_SELECTOR_DEFAULT   0x0001
 
#define LAN9250_PHY_AN_EXP_RX_NEXT_PAGE_LOC_ABLE   0x0040
 
#define LAN9250_PHY_AN_EXP_RX_NEXT_PAGE_STOR_LOC   0x0020
 
#define LAN9250_PHY_AN_EXP_PAR_DETECT_FAULT   0x0010
 
#define LAN9250_PHY_AN_EXP_LP_NEXT_PAGE_ABLE   0x0008
 
#define LAN9250_PHY_AN_EXP_NEXT_PAGE_ABLE   0x0004
 
#define LAN9250_PHY_AN_EXP_PAGE_RECEIVED   0x0002
 
#define LAN9250_PHY_AN_EXP_LP_AN_ABLE   0x0001
 
#define LAN9250_PHY_AN_NP_TX_NEXT_PAGE   0x8000
 
#define LAN9250_PHY_AN_NP_TX_MSG_PAGE   0x2000
 
#define LAN9250_PHY_AN_NP_TX_ACK2   0x1000
 
#define LAN9250_PHY_AN_NP_TX_TOGGLE   0x0800
 
#define LAN9250_PHY_AN_NP_TX_MESSAGE   0x07FF
 
#define LAN9250_PHY_AN_NP_RX_NEXT_PAGE   0x8000
 
#define LAN9250_PHY_AN_NP_RX_ACK   0x4000
 
#define LAN9250_PHY_AN_NP_RX_MSG_PAGE   0x2000
 
#define LAN9250_PHY_AN_NP_RX_ACK2   0x1000
 
#define LAN9250_PHY_AN_NP_RX_TOGGLE   0x0800
 
#define LAN9250_PHY_AN_NP_RX_MESSAGE   0x07FF
 
#define LAN9250_PHY_MMD_ACCESS_FUNC   0xC000
 
#define LAN9250_PHY_MMD_ACCESS_FUNC_ADDR   0x0000
 
#define LAN9250_PHY_MMD_ACCESS_FUNC_DATA_NO_POST_INC   0x4000
 
#define LAN9250_PHY_MMD_ACCESS_DEVAD   0x001F
 
#define LAN9250_PHY_MODE_CONTROL_STATUS_EDPWRDOWN   0x2000
 
#define LAN9250_PHY_MODE_CONTROL_STATUS_ALTINT   0x0040
 
#define LAN9250_PHY_MODE_CONTROL_STATUS_ENERGYON   0x0002
 
#define LAN9250_PHY_SPECIAL_MODES_FX_MODE   0x0400
 
#define LAN9250_PHY_SPECIAL_MODES_MODE   0x00E0
 
#define LAN9250_PHY_SPECIAL_MODES_MODE_10BT_HD   0x0000
 
#define LAN9250_PHY_SPECIAL_MODES_MODE_10BT_FD   0x0020
 
#define LAN9250_PHY_SPECIAL_MODES_MODE_100BTX_HD   0x0040
 
#define LAN9250_PHY_SPECIAL_MODES_MODE_100BTX_FD   0x0060
 
#define LAN9250_PHY_SPECIAL_MODES_MODE_POWER_DOWN   0x00C0
 
#define LAN9250_PHY_SPECIAL_MODES_MODE_AN   0x00E0
 
#define LAN9250_PHY_SPECIAL_MODES_PHYADD   0x001F
 
#define LAN9250_PHY_TDR_PAT_DELAY_TDR_DELAY_IN   0x8000
 
#define LAN9250_PHY_TDR_PAT_DELAY_TDR_LINE_BREAK_COUNTER   0x7000
 
#define LAN9250_PHY_TDR_PAT_DELAY_TDR_PATTERN_HIGH   0x0FC0
 
#define LAN9250_PHY_TDR_PAT_DELAY_TDR_PATTERN_LOW   0x003F
 
#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_EN   0x8000
 
#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_AD_FILTER_EN   0x4000
 
#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_CABLE_TYPE   0x0600
 
#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_CABLE_TYPE_DEFAULT   0x0000
 
#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_CABLE_TYPE_SHORTED   0x0200
 
#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_CABLE_TYPE_OPEN   0x0400
 
#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_CABLE_TYPE_MATCH   0x0600
 
#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_STATUS   0x0100
 
#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_LENGTH   0x00FF
 
#define LAN9250_PHY_SYMBOL_ERR_COUNTER_SYM_ERR_CNT   0xFFFF
 
#define LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_AMDIXCTRL   0x8000
 
#define LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_AMDIXEN   0x4000
 
#define LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_AMDIXSTATE   0x2000
 
#define LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_SQEOFF   0x0800
 
#define LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_FEFI_EN   0x0020
 
#define LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_XPOL   0x0010
 
#define LAN9250_PHY_CABLE_LEN_CBLN   0xF000
 
#define LAN9250_PHY_INTERRUPT_SOURCE_LINK_UP   0x0200
 
#define LAN9250_PHY_INTERRUPT_SOURCE_ENERGYON   0x0080
 
#define LAN9250_PHY_INTERRUPT_SOURCE_AN_COMPLETE   0x0040
 
#define LAN9250_PHY_INTERRUPT_SOURCE_REMOTE_FAULT   0x0020
 
#define LAN9250_PHY_INTERRUPT_SOURCE_LINK_DOWN   0x0010
 
#define LAN9250_PHY_INTERRUPT_SOURCE_AN_LP_ACK   0x0008
 
#define LAN9250_PHY_INTERRUPT_SOURCE_PARALLEL_DETECT_FAULT   0x0004
 
#define LAN9250_PHY_INTERRUPT_SOURCE_AN_PAGE_RECEIVED   0x0002
 
#define LAN9250_PHY_INTERRUPT_MASK_LINK_UP   0x0200
 
#define LAN9250_PHY_INTERRUPT_MASK_ENERGYON   0x0080
 
#define LAN9250_PHY_INTERRUPT_MASK_AN_COMPLETE   0x0040
 
#define LAN9250_PHY_INTERRUPT_MASK_REMOTE_FAULT   0x0020
 
#define LAN9250_PHY_INTERRUPT_MASK_LINK_DOWN   0x0010
 
#define LAN9250_PHY_INTERRUPT_MASK_AN_LP_ACK   0x0008
 
#define LAN9250_PHY_INTERRUPT_MASK_PARALLEL_DETECT_FAULT   0x0004
 
#define LAN9250_PHY_INTERRUPT_MASK_AN_PAGE_RECEIVED   0x0002
 
#define LAN9250_PHY_SPECIAL_CONTROL_STATUS_AUTODONE   0x1000
 
#define LAN9250_PHY_SPECIAL_CONTROL_STATUS_SPEED   0x001C
 
#define LAN9250_PHY_SPECIAL_CONTROL_STATUS_SPEED_10BT_HD   0x0004
 
#define LAN9250_PHY_SPECIAL_CONTROL_STATUS_SPEED_100BTX_HD   0x0008
 
#define LAN9250_PHY_SPECIAL_CONTROL_STATUS_SPEED_10BT_FD   0x0014
 
#define LAN9250_PHY_SPECIAL_CONTROL_STATUS_SPEED_100BTX_FD   0x0018
 

Functions

error_t lan9250Init (NetInterface *interface)
 LAN9250 controller initialization. More...
 
void lan9250InitHook (NetInterface *interface)
 LAN9250 custom configuration. More...
 
void lan9250Tick (NetInterface *interface)
 LAN9250 timer handler. More...
 
void lan9250EnableIrq (NetInterface *interface)
 Enable interrupts. More...
 
void lan9250DisableIrq (NetInterface *interface)
 Disable interrupts. More...
 
bool_t lan9250IrqHandler (NetInterface *interface)
 LAN9250 interrupt service routine. More...
 
void lan9250EventHandler (NetInterface *interface)
 LAN9250 event handler. More...
 
error_t lan9250SendPacket (NetInterface *interface, const NetBuffer *buffer, size_t offset, NetTxAncillary *ancillary)
 Send a packet. More...
 
error_t lan9250ReceivePacket (NetInterface *interface)
 Receive a packet. More...
 
void lan9250DropPacket (NetInterface *interface, size_t length)
 Drop the received packet. More...
 
error_t lan9250UpdateMacAddrFilter (NetInterface *interface)
 Configure MAC address filtering. More...
 
void lan9250WriteSysReg (NetInterface *interface, uint16_t address, uint32_t data)
 Write system CSR register. More...
 
uint32_t lan9250ReadSysReg (NetInterface *interface, uint16_t address)
 Read system CSR register. More...
 
void lan9250DumpSysReg (NetInterface *interface)
 Dump system CSR registers for debugging purpose. More...
 
void lan9250WriteMacReg (NetInterface *interface, uint8_t address, uint32_t data)
 Write host MAC CSR register. More...
 
uint32_t lan9250ReadMacReg (NetInterface *interface, uint8_t address)
 Read host MAC CSR register. More...
 
void lan9250DumpMacReg (NetInterface *interface)
 Dump host MAC CSR registers for debugging purpose. More...
 
void lan9250WritePhyReg (NetInterface *interface, uint8_t address, uint16_t data)
 Write PHY register. More...
 
uint16_t lan9250ReadPhyReg (NetInterface *interface, uint8_t address)
 Read PHY register. More...
 
void lan9250DumpPhyReg (NetInterface *interface)
 Dump PHY registers for debugging purpose. More...
 
void lan9250WriteMmdReg (NetInterface *interface, uint8_t devAddr, uint16_t regAddr, uint16_t data)
 Write MMD register. More...
 
uint16_t lan9250ReadMmdReg (NetInterface *interface, uint8_t devAddr, uint16_t regAddr)
 Read MMD register. More...
 
void lan9250WriteFifo (NetInterface *interface, const uint8_t *data, size_t length)
 Write TX FIFO. More...
 
void lan9250ReadFifo (NetInterface *interface, uint8_t *data, size_t length)
 Read RX FIFO. More...
 
uint32_t lan9250CalcCrc (const void *data, size_t length)
 CRC calculation. More...
 

Variables

const NicDriver lan9250Driver
 LAN9250 driver. More...
 

Detailed Description

LAN9250 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.0

Definition in file lan9250_driver.h.

Macro Definition Documentation

◆ LAN9250_1588_ASYM_PEERDLY

#define LAN9250_1588_ASYM_PEERDLY   0x015C

Definition at line 172 of file lan9250_driver.h.

◆ LAN9250_1588_BANK_PORT_GPIO_SEL

#define LAN9250_1588_BANK_PORT_GPIO_SEL   0x0154

Definition at line 168 of file lan9250_driver.h.

◆ LAN9250_1588_CAP_INFO

#define LAN9250_1588_CAP_INFO   0x0160

Definition at line 176 of file lan9250_driver.h.

◆ LAN9250_1588_CLOCK_NS

#define LAN9250_1588_CLOCK_NS   0x0114

Definition at line 152 of file lan9250_driver.h.

◆ LAN9250_1588_CLOCK_RATE_ADJ

#define LAN9250_1588_CLOCK_RATE_ADJ   0x011C

Definition at line 154 of file lan9250_driver.h.

◆ LAN9250_1588_CLOCK_SEC

#define LAN9250_1588_CLOCK_SEC   0x0110

Definition at line 151 of file lan9250_driver.h.

◆ LAN9250_1588_CLOCK_STEP_ADJ

#define LAN9250_1588_CLOCK_STEP_ADJ   0x0128

Definition at line 157 of file lan9250_driver.h.

◆ LAN9250_1588_CLOCK_SUBNS

#define LAN9250_1588_CLOCK_SUBNS   0x0118

Definition at line 153 of file lan9250_driver.h.

◆ LAN9250_1588_CLOCK_TARGET_NS_A

#define LAN9250_1588_CLOCK_TARGET_NS_A   0x0130

Definition at line 159 of file lan9250_driver.h.

◆ LAN9250_1588_CLOCK_TARGET_NS_B

#define LAN9250_1588_CLOCK_TARGET_NS_B   0x0140

Definition at line 163 of file lan9250_driver.h.

◆ LAN9250_1588_CLOCK_TARGET_RELOAD_NS_A

#define LAN9250_1588_CLOCK_TARGET_RELOAD_NS_A   0x0138

Definition at line 161 of file lan9250_driver.h.

◆ LAN9250_1588_CLOCK_TARGET_RELOAD_NS_B

#define LAN9250_1588_CLOCK_TARGET_RELOAD_NS_B   0x0148

Definition at line 165 of file lan9250_driver.h.

◆ LAN9250_1588_CLOCK_TARGET_RELOAD_SEC_A

#define LAN9250_1588_CLOCK_TARGET_RELOAD_SEC_A   0x0134

Definition at line 160 of file lan9250_driver.h.

◆ LAN9250_1588_CLOCK_TARGET_RELOAD_SEC_B

#define LAN9250_1588_CLOCK_TARGET_RELOAD_SEC_B   0x0144

Definition at line 164 of file lan9250_driver.h.

◆ LAN9250_1588_CLOCK_TARGET_SEC_A

#define LAN9250_1588_CLOCK_TARGET_SEC_A   0x012C

Definition at line 158 of file lan9250_driver.h.

◆ LAN9250_1588_CLOCK_TARGET_SEC_B

#define LAN9250_1588_CLOCK_TARGET_SEC_B   0x013C

Definition at line 162 of file lan9250_driver.h.

◆ LAN9250_1588_CLOCK_TEMP_RATE_ADJ

#define LAN9250_1588_CLOCK_TEMP_RATE_ADJ   0x0120

Definition at line 155 of file lan9250_driver.h.

◆ LAN9250_1588_CLOCK_TEMP_RATE_DURATION

#define LAN9250_1588_CLOCK_TEMP_RATE_DURATION   0x0124

Definition at line 156 of file lan9250_driver.h.

◆ LAN9250_1588_CMD_CTL

#define LAN9250_1588_CMD_CTL   0x0100

Definition at line 147 of file lan9250_driver.h.

◆ LAN9250_1588_GENERAL_CONFIG

#define LAN9250_1588_GENERAL_CONFIG   0x0104

Definition at line 148 of file lan9250_driver.h.

◆ LAN9250_1588_GPIO_CAP_CONFIG

#define LAN9250_1588_GPIO_CAP_CONFIG   0x015C

Definition at line 175 of file lan9250_driver.h.

◆ LAN9250_1588_GPIO_FE_CLOCK_NS_CAP

#define LAN9250_1588_GPIO_FE_CLOCK_NS_CAP   0x017C

Definition at line 194 of file lan9250_driver.h.

◆ LAN9250_1588_GPIO_FE_CLOCK_SEC_CAP

#define LAN9250_1588_GPIO_FE_CLOCK_SEC_CAP   0x0178

Definition at line 191 of file lan9250_driver.h.

◆ LAN9250_1588_GPIO_RE_CLOCK_NS_CAP

#define LAN9250_1588_GPIO_RE_CLOCK_NS_CAP   0x0170

Definition at line 186 of file lan9250_driver.h.

◆ LAN9250_1588_GPIO_RE_CLOCK_SEC_CAP

#define LAN9250_1588_GPIO_RE_CLOCK_SEC_CAP   0x016C

Definition at line 183 of file lan9250_driver.h.

◆ LAN9250_1588_INT_EN

#define LAN9250_1588_INT_EN   0x010C

Definition at line 150 of file lan9250_driver.h.

◆ LAN9250_1588_INT_STS

#define LAN9250_1588_INT_STS   0x0108

Definition at line 149 of file lan9250_driver.h.

◆ LAN9250_1588_LATENCY

#define LAN9250_1588_LATENCY   0x0158

Definition at line 169 of file lan9250_driver.h.

◆ LAN9250_1588_RX_CHKSUM_DROPPED_CNT

#define LAN9250_1588_RX_CHKSUM_DROPPED_CNT   0x0188

Definition at line 198 of file lan9250_driver.h.

◆ LAN9250_1588_RX_FILTER_CONFIG

#define LAN9250_1588_RX_FILTER_CONFIG   0x0168

Definition at line 179 of file lan9250_driver.h.

◆ LAN9250_1588_RX_FILTERED_CNT

#define LAN9250_1588_RX_FILTERED_CNT   0x018C

Definition at line 199 of file lan9250_driver.h.

◆ LAN9250_1588_RX_INGRESS_NS

#define LAN9250_1588_RX_INGRESS_NS   0x0170

Definition at line 184 of file lan9250_driver.h.

◆ LAN9250_1588_RX_INGRESS_SEC

#define LAN9250_1588_RX_INGRESS_SEC   0x016C

Definition at line 181 of file lan9250_driver.h.

◆ LAN9250_1588_RX_MSG_HEADER

#define LAN9250_1588_RX_MSG_HEADER   0x0174

Definition at line 187 of file lan9250_driver.h.

◆ LAN9250_1588_RX_PARSE_CONFIG

#define LAN9250_1588_RX_PARSE_CONFIG   0x0158

Definition at line 170 of file lan9250_driver.h.

◆ LAN9250_1588_RX_PDREQ_CF_HI

#define LAN9250_1588_RX_PDREQ_CF_HI   0x0180

Definition at line 195 of file lan9250_driver.h.

◆ LAN9250_1588_RX_PDREQ_CF_LOW

#define LAN9250_1588_RX_PDREQ_CF_LOW   0x0184

Definition at line 197 of file lan9250_driver.h.

◆ LAN9250_1588_RX_PDREQ_NS

#define LAN9250_1588_RX_PDREQ_NS   0x017C

Definition at line 192 of file lan9250_driver.h.

◆ LAN9250_1588_RX_PDREQ_SEC

#define LAN9250_1588_RX_PDREQ_SEC   0x0178

Definition at line 189 of file lan9250_driver.h.

◆ LAN9250_1588_RX_TIMESTAMP_CONFIG

#define LAN9250_1588_RX_TIMESTAMP_CONFIG   0x015C

Definition at line 173 of file lan9250_driver.h.

◆ LAN9250_1588_RX_TS_INSERT_CONFIG

#define LAN9250_1588_RX_TS_INSERT_CONFIG   0x0160

Definition at line 177 of file lan9250_driver.h.

◆ LAN9250_1588_TX_DREQ_NS

#define LAN9250_1588_TX_DREQ_NS   0x017C

Definition at line 193 of file lan9250_driver.h.

◆ LAN9250_1588_TX_DREQ_SEC

#define LAN9250_1588_TX_DREQ_SEC   0x0178

Definition at line 190 of file lan9250_driver.h.

◆ LAN9250_1588_TX_EGRESS_NS

#define LAN9250_1588_TX_EGRESS_NS   0x0170

Definition at line 185 of file lan9250_driver.h.

◆ LAN9250_1588_TX_EGRESS_SEC

#define LAN9250_1588_TX_EGRESS_SEC   0x016C

Definition at line 182 of file lan9250_driver.h.

◆ LAN9250_1588_TX_MOD

#define LAN9250_1588_TX_MOD   0x0164

Definition at line 178 of file lan9250_driver.h.

◆ LAN9250_1588_TX_MOD2

#define LAN9250_1588_TX_MOD2   0x0168

Definition at line 180 of file lan9250_driver.h.

◆ LAN9250_1588_TX_MSG_HEADER

#define LAN9250_1588_TX_MSG_HEADER   0x0174

Definition at line 188 of file lan9250_driver.h.

◆ LAN9250_1588_TX_ONE_STEP_SYNC_SEC

#define LAN9250_1588_TX_ONE_STEP_SYNC_SEC   0x0180

Definition at line 196 of file lan9250_driver.h.

◆ LAN9250_1588_TX_PARSE_CONFIG

#define LAN9250_1588_TX_PARSE_CONFIG   0x0158

Definition at line 171 of file lan9250_driver.h.

◆ LAN9250_1588_TX_TIMESTAMP_CONFIG

#define LAN9250_1588_TX_TIMESTAMP_CONFIG   0x015C

Definition at line 174 of file lan9250_driver.h.

◆ LAN9250_1588_USER_MAC_HI

#define LAN9250_1588_USER_MAC_HI   0x014C

Definition at line 166 of file lan9250_driver.h.

◆ LAN9250_1588_USER_MAC_LO

#define LAN9250_1588_USER_MAC_LO   0x0150

Definition at line 167 of file lan9250_driver.h.

◆ LAN9250_AFC_CFG

#define LAN9250_AFC_CFG   0x00AC

Definition at line 142 of file lan9250_driver.h.

◆ LAN9250_AFC_CFG_AFC_HI

#define LAN9250_AFC_CFG_AFC_HI   0x00FF0000

Definition at line 433 of file lan9250_driver.h.

◆ LAN9250_AFC_CFG_AFC_LO

#define LAN9250_AFC_CFG_AFC_LO   0x0000FF00

Definition at line 434 of file lan9250_driver.h.

◆ LAN9250_AFC_CFG_BACK_DUR

#define LAN9250_AFC_CFG_BACK_DUR   0x000000F0

Definition at line 435 of file lan9250_driver.h.

◆ LAN9250_AFC_CFG_FCADD

#define LAN9250_AFC_CFG_FCADD   0x00000002

Definition at line 438 of file lan9250_driver.h.

◆ LAN9250_AFC_CFG_FCANY

#define LAN9250_AFC_CFG_FCANY   0x00000001

Definition at line 439 of file lan9250_driver.h.

◆ LAN9250_AFC_CFG_FCBRD

#define LAN9250_AFC_CFG_FCBRD   0x00000004

Definition at line 437 of file lan9250_driver.h.

◆ LAN9250_AFC_CFG_FCMULT

#define LAN9250_AFC_CFG_FCMULT   0x00000008

Definition at line 436 of file lan9250_driver.h.

◆ LAN9250_BYTE_TEST

#define LAN9250_BYTE_TEST   0x0064

Definition at line 127 of file lan9250_driver.h.

◆ LAN9250_BYTE_TEST_DEFAULT

#define LAN9250_BYTE_TEST_DEFAULT   0x87654321

Definition at line 341 of file lan9250_driver.h.

◆ LAN9250_E2P_CMD

#define LAN9250_E2P_CMD   0x01B4

Definition at line 200 of file lan9250_driver.h.

◆ LAN9250_E2P_CMD_CFG_LOADED

#define LAN9250_E2P_CMD_CFG_LOADED   0x00010000

Definition at line 449 of file lan9250_driver.h.

◆ LAN9250_E2P_CMD_EPC_ADDR

#define LAN9250_E2P_CMD_EPC_ADDR   0x0000FFFF

Definition at line 450 of file lan9250_driver.h.

◆ LAN9250_E2P_CMD_EPC_BUSY

#define LAN9250_E2P_CMD_EPC_BUSY   0x80000000

Definition at line 442 of file lan9250_driver.h.

◆ LAN9250_E2P_CMD_EPC_COMMAND

#define LAN9250_E2P_CMD_EPC_COMMAND   0x70000000

Definition at line 443 of file lan9250_driver.h.

◆ LAN9250_E2P_CMD_EPC_COMMAND_READ

#define LAN9250_E2P_CMD_EPC_COMMAND_READ   0x00000000

Definition at line 444 of file lan9250_driver.h.

◆ LAN9250_E2P_CMD_EPC_COMMAND_RELOAD

#define LAN9250_E2P_CMD_EPC_COMMAND_RELOAD   0x70000000

Definition at line 446 of file lan9250_driver.h.

◆ LAN9250_E2P_CMD_EPC_COMMAND_WRITE

#define LAN9250_E2P_CMD_EPC_COMMAND_WRITE   0x30000000

Definition at line 445 of file lan9250_driver.h.

◆ LAN9250_E2P_CMD_EPC_TIMEOUT

#define LAN9250_E2P_CMD_EPC_TIMEOUT   0x00020000

Definition at line 448 of file lan9250_driver.h.

◆ LAN9250_E2P_CMD_LOADER_OVERFLOW

#define LAN9250_E2P_CMD_LOADER_OVERFLOW   0x00040000

Definition at line 447 of file lan9250_driver.h.

◆ LAN9250_E2P_DATA

#define LAN9250_E2P_DATA   0x01B8

Definition at line 201 of file lan9250_driver.h.

◆ LAN9250_E2P_DATA_EEPROM_DATA

#define LAN9250_E2P_DATA_EEPROM_DATA   0x000000FF

Definition at line 453 of file lan9250_driver.h.

◆ LAN9250_ETH_RX_BUFFER_SIZE

#define LAN9250_ETH_RX_BUFFER_SIZE   1536

Definition at line 46 of file lan9250_driver.h.

◆ LAN9250_ETH_TX_BUFFER_SIZE

#define LAN9250_ETH_TX_BUFFER_SIZE   1536

Definition at line 39 of file lan9250_driver.h.

◆ LAN9250_FIFO_INT

#define LAN9250_FIFO_INT   0x0068

Definition at line 128 of file lan9250_driver.h.

◆ LAN9250_FIFO_INT_RX_STATUS_LEVEL

#define LAN9250_FIFO_INT_RX_STATUS_LEVEL   0x000000FF

Definition at line 346 of file lan9250_driver.h.

◆ LAN9250_FIFO_INT_TX_DATA_AVAILABLE_LEVEL

#define LAN9250_FIFO_INT_TX_DATA_AVAILABLE_LEVEL   0xFF000000

Definition at line 344 of file lan9250_driver.h.

◆ LAN9250_FIFO_INT_TX_STATUS_LEVEL

#define LAN9250_FIFO_INT_TX_STATUS_LEVEL   0x00FF0000

Definition at line 345 of file lan9250_driver.h.

◆ LAN9250_FREE_RUN

#define LAN9250_FREE_RUN   0x009C

Definition at line 138 of file lan9250_driver.h.

◆ LAN9250_FREE_RUN_FR_CNT

#define LAN9250_FREE_RUN_FR_CNT   0xFFFFFFFF

Definition at line 421 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG

#define LAN9250_GPIO_CFG   0x01E0

Definition at line 203 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG_1588_GPIO_OE

#define LAN9250_GPIO_CFG_1588_GPIO_OE   0x00000700

Definition at line 476 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG_1588_GPIO_OE_0

#define LAN9250_GPIO_CFG_1588_GPIO_OE_0   0x00000100

Definition at line 477 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG_1588_GPIO_OE_1

#define LAN9250_GPIO_CFG_1588_GPIO_OE_1   0x00000200

Definition at line 478 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG_1588_GPIO_OE_2

#define LAN9250_GPIO_CFG_1588_GPIO_OE_2   0x00000400

Definition at line 479 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG_GPIO_CH_SEL

#define LAN9250_GPIO_CFG_GPIO_CH_SEL   0x07000000

Definition at line 468 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG_GPIO_CH_SEL_0

#define LAN9250_GPIO_CFG_GPIO_CH_SEL_0   0x01000000

Definition at line 469 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG_GPIO_CH_SEL_1

#define LAN9250_GPIO_CFG_GPIO_CH_SEL_1   0x02000000

Definition at line 470 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG_GPIO_CH_SEL_2

#define LAN9250_GPIO_CFG_GPIO_CH_SEL_2   0x04000000

Definition at line 471 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG_GPIO_POL

#define LAN9250_GPIO_CFG_GPIO_POL   0x00070000

Definition at line 472 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG_GPIO_POL_0

#define LAN9250_GPIO_CFG_GPIO_POL_0   0x00010000

Definition at line 473 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG_GPIO_POL_1

#define LAN9250_GPIO_CFG_GPIO_POL_1   0x00020000

Definition at line 474 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG_GPIO_POL_2

#define LAN9250_GPIO_CFG_GPIO_POL_2   0x00040000

Definition at line 475 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG_GPIOBUF

#define LAN9250_GPIO_CFG_GPIOBUF   0x00000007

Definition at line 480 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG_GPIOBUF_0

#define LAN9250_GPIO_CFG_GPIOBUF_0   0x00000001

Definition at line 481 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG_GPIOBUF_1

#define LAN9250_GPIO_CFG_GPIOBUF_1   0x00000002

Definition at line 482 of file lan9250_driver.h.

◆ LAN9250_GPIO_CFG_GPIOBUF_2

#define LAN9250_GPIO_CFG_GPIOBUF_2   0x00000004

Definition at line 483 of file lan9250_driver.h.

◆ LAN9250_GPIO_DATA_DIR

#define LAN9250_GPIO_DATA_DIR   0x01E4

Definition at line 204 of file lan9250_driver.h.

◆ LAN9250_GPIO_DATA_DIR_GPIOD

#define LAN9250_GPIO_DATA_DIR_GPIOD   0x00000007

Definition at line 490 of file lan9250_driver.h.

◆ LAN9250_GPIO_DATA_DIR_GPIOD_0

#define LAN9250_GPIO_DATA_DIR_GPIOD_0   0x00000001

Definition at line 491 of file lan9250_driver.h.

◆ LAN9250_GPIO_DATA_DIR_GPIOD_1

#define LAN9250_GPIO_DATA_DIR_GPIOD_1   0x00000002

Definition at line 492 of file lan9250_driver.h.

◆ LAN9250_GPIO_DATA_DIR_GPIOD_2

#define LAN9250_GPIO_DATA_DIR_GPIOD_2   0x00000004

Definition at line 493 of file lan9250_driver.h.

◆ LAN9250_GPIO_DATA_DIR_GPIODIR

#define LAN9250_GPIO_DATA_DIR_GPIODIR   0x00070000

Definition at line 486 of file lan9250_driver.h.

◆ LAN9250_GPIO_DATA_DIR_GPIODIR_0

#define LAN9250_GPIO_DATA_DIR_GPIODIR_0   0x00010000

Definition at line 487 of file lan9250_driver.h.

◆ LAN9250_GPIO_DATA_DIR_GPIODIR_1

#define LAN9250_GPIO_DATA_DIR_GPIODIR_1   0x00020000

Definition at line 488 of file lan9250_driver.h.

◆ LAN9250_GPIO_DATA_DIR_GPIODIR_2

#define LAN9250_GPIO_DATA_DIR_GPIODIR_2   0x00040000

Definition at line 489 of file lan9250_driver.h.

◆ LAN9250_GPIO_INT_STS_EN

#define LAN9250_GPIO_INT_STS_EN   0x01E8

Definition at line 205 of file lan9250_driver.h.

◆ LAN9250_GPIO_INT_STS_EN_GPIO_INT

#define LAN9250_GPIO_INT_STS_EN_GPIO_INT   0x00000007

Definition at line 500 of file lan9250_driver.h.

◆ LAN9250_GPIO_INT_STS_EN_GPIO_INT_0

#define LAN9250_GPIO_INT_STS_EN_GPIO_INT_0   0x00000001

Definition at line 501 of file lan9250_driver.h.

◆ LAN9250_GPIO_INT_STS_EN_GPIO_INT_1

#define LAN9250_GPIO_INT_STS_EN_GPIO_INT_1   0x00000002

Definition at line 502 of file lan9250_driver.h.

◆ LAN9250_GPIO_INT_STS_EN_GPIO_INT_2

#define LAN9250_GPIO_INT_STS_EN_GPIO_INT_2   0x00000004

Definition at line 503 of file lan9250_driver.h.

◆ LAN9250_GPIO_INT_STS_EN_GPIO_INT_EN

#define LAN9250_GPIO_INT_STS_EN_GPIO_INT_EN   0x00070000

Definition at line 496 of file lan9250_driver.h.

◆ LAN9250_GPIO_INT_STS_EN_GPIO_INT_EN_0

#define LAN9250_GPIO_INT_STS_EN_GPIO_INT_EN_0   0x00010000

Definition at line 497 of file lan9250_driver.h.

◆ LAN9250_GPIO_INT_STS_EN_GPIO_INT_EN_1

#define LAN9250_GPIO_INT_STS_EN_GPIO_INT_EN_1   0x00020000

Definition at line 498 of file lan9250_driver.h.

◆ LAN9250_GPIO_INT_STS_EN_GPIO_INT_EN_2

#define LAN9250_GPIO_INT_STS_EN_GPIO_INT_EN_2   0x00040000

Definition at line 499 of file lan9250_driver.h.

◆ LAN9250_GPT_CFG

#define LAN9250_GPT_CFG   0x008C

Definition at line 136 of file lan9250_driver.h.

◆ LAN9250_GPT_CFG_GPT_LOAD

#define LAN9250_GPT_CFG_GPT_LOAD   0x0000FFFF

Definition at line 415 of file lan9250_driver.h.

◆ LAN9250_GPT_CFG_TIMER_EN

#define LAN9250_GPT_CFG_TIMER_EN   0x20000000

Definition at line 414 of file lan9250_driver.h.

◆ LAN9250_GPT_CNT

#define LAN9250_GPT_CNT   0x0090

Definition at line 137 of file lan9250_driver.h.

◆ LAN9250_GPT_CNT_GPT_CNT

#define LAN9250_GPT_CNT_GPT_CNT   0x0000FFFF

Definition at line 418 of file lan9250_driver.h.

◆ LAN9250_HMAC_ADDRH

#define LAN9250_HMAC_ADDRH   0x02

Definition at line 210 of file lan9250_driver.h.

◆ LAN9250_HMAC_ADDRH_PHY_ADR_47_32

#define LAN9250_HMAC_ADDRH_PHY_ADR_47_32   0x0000FFFF

Definition at line 535 of file lan9250_driver.h.

◆ LAN9250_HMAC_ADDRL

#define LAN9250_HMAC_ADDRL   0x03

Definition at line 211 of file lan9250_driver.h.

◆ LAN9250_HMAC_ADDRL_PHY_ADR_31_0

#define LAN9250_HMAC_ADDRL_PHY_ADR_31_0   0xFFFFFFFF

Definition at line 538 of file lan9250_driver.h.

◆ LAN9250_HMAC_COE_CR

#define LAN9250_HMAC_COE_CR   0x0D

Definition at line 221 of file lan9250_driver.h.

◆ LAN9250_HMAC_COE_CR_RX_COE_EN

#define LAN9250_HMAC_COE_CR_RX_COE_EN   0x00000001

Definition at line 581 of file lan9250_driver.h.

◆ LAN9250_HMAC_COE_CR_RX_COE_MODE

#define LAN9250_HMAC_COE_CR_RX_COE_MODE   0x00000002

Definition at line 580 of file lan9250_driver.h.

◆ LAN9250_HMAC_COE_CR_TX_COE_EN

#define LAN9250_HMAC_COE_CR_TX_COE_EN   0x00010000

Definition at line 579 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR

#define LAN9250_HMAC_CR   0x01

Definition at line 209 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_BCAST

#define LAN9250_HMAC_CR_BCAST   0x00000800

Definition at line 522 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_BOLMT

#define LAN9250_HMAC_CR_BOLMT   0x000000C0

Definition at line 525 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_BOLMT_10_BITS

#define LAN9250_HMAC_CR_BOLMT_10_BITS   0x00000000

Definition at line 526 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_BOLMT_1_BIT

#define LAN9250_HMAC_CR_BOLMT_1_BIT   0x000000C0

Definition at line 529 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_BOLMT_4_BITS

#define LAN9250_HMAC_CR_BOLMT_4_BITS   0x00000080

Definition at line 528 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_BOLMT_8_BITS

#define LAN9250_HMAC_CR_BOLMT_8_BITS   0x00000040

Definition at line 527 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_DFCHK

#define LAN9250_HMAC_CR_DFCHK   0x00000020

Definition at line 530 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_DISRTY

#define LAN9250_HMAC_CR_DISRTY   0x00000400

Definition at line 523 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_FDPX

#define LAN9250_HMAC_CR_FDPX   0x00100000

Definition at line 515 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_HMAC_EEE_ENABLE

#define LAN9250_HMAC_CR_HMAC_EEE_ENABLE   0x02000000

Definition at line 512 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_HO

#define LAN9250_HMAC_CR_HO   0x00008000

Definition at line 520 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_HPFILT

#define LAN9250_HMAC_CR_HPFILT   0x00002000

Definition at line 521 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_INVFILT

#define LAN9250_HMAC_CR_INVFILT   0x00020000

Definition at line 518 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_LOOPBK

#define LAN9250_HMAC_CR_LOOPBK   0x00200000

Definition at line 514 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_MCPAS

#define LAN9250_HMAC_CR_MCPAS   0x00080000

Definition at line 516 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_PADSTR

#define LAN9250_HMAC_CR_PADSTR   0x00000100

Definition at line 524 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_PASSBAD

#define LAN9250_HMAC_CR_PASSBAD   0x00010000

Definition at line 519 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_PRMS

#define LAN9250_HMAC_CR_PRMS   0x00040000

Definition at line 517 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_RCVOWN

#define LAN9250_HMAC_CR_RCVOWN   0x00800000

Definition at line 513 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_RXALL

#define LAN9250_HMAC_CR_RXALL   0x80000000

Definition at line 511 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_RXEN

#define LAN9250_HMAC_CR_RXEN   0x00000004

Definition at line 532 of file lan9250_driver.h.

◆ LAN9250_HMAC_CR_TXEN

#define LAN9250_HMAC_CR_TXEN   0x00000008

Definition at line 531 of file lan9250_driver.h.

◆ LAN9250_HMAC_EEE_TW_TX_SYS

#define LAN9250_HMAC_EEE_TW_TX_SYS   0x0E

Definition at line 222 of file lan9250_driver.h.

◆ LAN9250_HMAC_EEE_TW_TX_SYS_TX_DELAY

#define LAN9250_HMAC_EEE_TW_TX_SYS_TX_DELAY   0x00FFFFFF

Definition at line 584 of file lan9250_driver.h.

◆ LAN9250_HMAC_EEE_TX_LPI_REQ_DELAY

#define LAN9250_HMAC_EEE_TX_LPI_REQ_DELAY   0x0F

Definition at line 223 of file lan9250_driver.h.

◆ LAN9250_HMAC_FLOW

#define LAN9250_HMAC_FLOW   0x08

Definition at line 216 of file lan9250_driver.h.

◆ LAN9250_HMAC_FLOW_FCBSY

#define LAN9250_HMAC_FLOW_FCBSY   0x00000001

Definition at line 554 of file lan9250_driver.h.

◆ LAN9250_HMAC_FLOW_FCEN

#define LAN9250_HMAC_FLOW_FCEN   0x00000002

Definition at line 553 of file lan9250_driver.h.

◆ LAN9250_HMAC_FLOW_FCPASS

#define LAN9250_HMAC_FLOW_FCPASS   0x00000004

Definition at line 552 of file lan9250_driver.h.

◆ LAN9250_HMAC_FLOW_FCPT

#define LAN9250_HMAC_FLOW_FCPT   0xFFFF0000

Definition at line 551 of file lan9250_driver.h.

◆ LAN9250_HMAC_HASHH

#define LAN9250_HMAC_HASHH   0x04

Definition at line 212 of file lan9250_driver.h.

◆ LAN9250_HMAC_HASHL

#define LAN9250_HMAC_HASHL   0x05

Definition at line 213 of file lan9250_driver.h.

◆ LAN9250_HMAC_MII_ACC

#define LAN9250_HMAC_MII_ACC   0x06

Definition at line 214 of file lan9250_driver.h.

◆ LAN9250_HMAC_MII_ACC_MIIBZY

#define LAN9250_HMAC_MII_ACC_MIIBZY   0x00000001

Definition at line 545 of file lan9250_driver.h.

◆ LAN9250_HMAC_MII_ACC_MIIRINDA

#define LAN9250_HMAC_MII_ACC_MIIRINDA   0x000007C0

Definition at line 543 of file lan9250_driver.h.

◆ LAN9250_HMAC_MII_ACC_MIIW_R

#define LAN9250_HMAC_MII_ACC_MIIW_R   0x00000002

Definition at line 544 of file lan9250_driver.h.

◆ LAN9250_HMAC_MII_ACC_PHY_ADDR

#define LAN9250_HMAC_MII_ACC_PHY_ADDR   0x0000F800

Definition at line 541 of file lan9250_driver.h.

◆ LAN9250_HMAC_MII_ACC_PHY_ADDR_DEFAULT

#define LAN9250_HMAC_MII_ACC_PHY_ADDR_DEFAULT   0x00000800

Definition at line 542 of file lan9250_driver.h.

◆ LAN9250_HMAC_MII_DATA

#define LAN9250_HMAC_MII_DATA   0x07

Definition at line 215 of file lan9250_driver.h.

◆ LAN9250_HMAC_MII_DATA_MII_DATA

#define LAN9250_HMAC_MII_DATA_MII_DATA   0x0000FFFF

Definition at line 548 of file lan9250_driver.h.

◆ LAN9250_HMAC_RX_LPI_TIME

#define LAN9250_HMAC_RX_LPI_TIME   0x00B4

Definition at line 144 of file lan9250_driver.h.

◆ LAN9250_HMAC_RX_LPI_TRANSITION

#define LAN9250_HMAC_RX_LPI_TRANSITION   0x00B0

Definition at line 143 of file lan9250_driver.h.

◆ LAN9250_HMAC_TX_LPI_TIME

#define LAN9250_HMAC_TX_LPI_TIME   0x00BC

Definition at line 146 of file lan9250_driver.h.

◆ LAN9250_HMAC_TX_LPI_TRANSITION

#define LAN9250_HMAC_TX_LPI_TRANSITION   0x00B8

Definition at line 145 of file lan9250_driver.h.

◆ LAN9250_HMAC_VLAN1

#define LAN9250_HMAC_VLAN1   0x09

Definition at line 217 of file lan9250_driver.h.

◆ LAN9250_HMAC_VLAN1_VTI1

#define LAN9250_HMAC_VLAN1_VTI1   0x0000FFFF

Definition at line 557 of file lan9250_driver.h.

◆ LAN9250_HMAC_VLAN2

#define LAN9250_HMAC_VLAN2   0x0A

Definition at line 218 of file lan9250_driver.h.

◆ LAN9250_HMAC_VLAN2_VTI2

#define LAN9250_HMAC_VLAN2_VTI2   0x0000FFFF

Definition at line 560 of file lan9250_driver.h.

◆ LAN9250_HMAC_WUCSR

#define LAN9250_HMAC_WUCSR   0x0C

Definition at line 220 of file lan9250_driver.h.

◆ LAN9250_HMAC_WUCSR_BCAST_FR

#define LAN9250_HMAC_WUCSR_BCAST_FR   0x00000010

Definition at line 572 of file lan9250_driver.h.

◆ LAN9250_HMAC_WUCSR_BCST_EN

#define LAN9250_HMAC_WUCSR_BCST_EN   0x00000001

Definition at line 576 of file lan9250_driver.h.

◆ LAN9250_HMAC_WUCSR_GUE

#define LAN9250_HMAC_WUCSR_GUE   0x00000200

Definition at line 567 of file lan9250_driver.h.

◆ LAN9250_HMAC_WUCSR_MPEN

#define LAN9250_HMAC_WUCSR_MPEN   0x00000002

Definition at line 575 of file lan9250_driver.h.

◆ LAN9250_HMAC_WUCSR_MPR

#define LAN9250_HMAC_WUCSR_MPR   0x00000020

Definition at line 571 of file lan9250_driver.h.

◆ LAN9250_HMAC_WUCSR_PFDA_EN

#define LAN9250_HMAC_WUCSR_PFDA_EN   0x00000008

Definition at line 573 of file lan9250_driver.h.

◆ LAN9250_HMAC_WUCSR_PFDA_FR

#define LAN9250_HMAC_WUCSR_PFDA_FR   0x00000080

Definition at line 569 of file lan9250_driver.h.

◆ LAN9250_HMAC_WUCSR_WFF_PTR_RST

#define LAN9250_HMAC_WUCSR_WFF_PTR_RST   0x80000000

Definition at line 566 of file lan9250_driver.h.

◆ LAN9250_HMAC_WUCSR_WOL_WAIT_SLEEP

#define LAN9250_HMAC_WUCSR_WOL_WAIT_SLEEP   0x00000100

Definition at line 568 of file lan9250_driver.h.

◆ LAN9250_HMAC_WUCSR_WUEN

#define LAN9250_HMAC_WUCSR_WUEN   0x00000004

Definition at line 574 of file lan9250_driver.h.

◆ LAN9250_HMAC_WUCSR_WUFR

#define LAN9250_HMAC_WUCSR_WUFR   0x00000040

Definition at line 570 of file lan9250_driver.h.

◆ LAN9250_HMAC_WUFF

#define LAN9250_HMAC_WUFF   0x0B

Definition at line 219 of file lan9250_driver.h.

◆ LAN9250_HMAC_WUFF_WFF

#define LAN9250_HMAC_WUFF_WFF   0xFFFFFFFF

Definition at line 563 of file lan9250_driver.h.

◆ LAN9250_HW_CFG

#define LAN9250_HW_CFG   0x0074

Definition at line 131 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_AMDIX_EN_STRAP_STATE

#define LAN9250_HW_CFG_AMDIX_EN_STRAP_STATE   0x02000000

Definition at line 366 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_DEVICE_READY

#define LAN9250_HW_CFG_DEVICE_READY   0x08000000

Definition at line 365 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_MBO

#define LAN9250_HW_CFG_MBO   0x00100000

Definition at line 367 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_TX_FIF_SZ

#define LAN9250_HW_CFG_TX_FIF_SZ   0x000F0000

Definition at line 368 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_TX_FIF_SZ_10KB

#define LAN9250_HW_CFG_TX_FIF_SZ_10KB   0x000A0000

Definition at line 377 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_TX_FIF_SZ_11KB

#define LAN9250_HW_CFG_TX_FIF_SZ_11KB   0x000B0000

Definition at line 378 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_TX_FIF_SZ_12KB

#define LAN9250_HW_CFG_TX_FIF_SZ_12KB   0x000C0000

Definition at line 379 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_TX_FIF_SZ_13KB

#define LAN9250_HW_CFG_TX_FIF_SZ_13KB   0x000D0000

Definition at line 380 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_TX_FIF_SZ_14KB

#define LAN9250_HW_CFG_TX_FIF_SZ_14KB   0x000E0000

Definition at line 381 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_TX_FIF_SZ_2KB

#define LAN9250_HW_CFG_TX_FIF_SZ_2KB   0x00020000

Definition at line 369 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_TX_FIF_SZ_3KB

#define LAN9250_HW_CFG_TX_FIF_SZ_3KB   0x00030000

Definition at line 370 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_TX_FIF_SZ_4KB

#define LAN9250_HW_CFG_TX_FIF_SZ_4KB   0x00040000

Definition at line 371 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_TX_FIF_SZ_5KB

#define LAN9250_HW_CFG_TX_FIF_SZ_5KB   0x00050000

Definition at line 372 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_TX_FIF_SZ_6KB

#define LAN9250_HW_CFG_TX_FIF_SZ_6KB   0x00060000

Definition at line 373 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_TX_FIF_SZ_7KB

#define LAN9250_HW_CFG_TX_FIF_SZ_7KB   0x00070000

Definition at line 374 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_TX_FIF_SZ_8KB

#define LAN9250_HW_CFG_TX_FIF_SZ_8KB   0x00080000

Definition at line 375 of file lan9250_driver.h.

◆ LAN9250_HW_CFG_TX_FIF_SZ_9KB

#define LAN9250_HW_CFG_TX_FIF_SZ_9KB   0x00090000

Definition at line 376 of file lan9250_driver.h.

◆ LAN9250_ID_REV

#define LAN9250_ID_REV   0x0050

Definition at line 123 of file lan9250_driver.h.

◆ LAN9250_ID_REV_CHIP_ID

#define LAN9250_ID_REV_CHIP_ID   0xFFFF0000

Definition at line 269 of file lan9250_driver.h.

◆ LAN9250_ID_REV_CHIP_ID_DEFAULT

#define LAN9250_ID_REV_CHIP_ID_DEFAULT   0x92500000

Definition at line 270 of file lan9250_driver.h.

◆ LAN9250_ID_REV_CHIP_REV

#define LAN9250_ID_REV_CHIP_REV   0x0000FFFF

Definition at line 271 of file lan9250_driver.h.

◆ LAN9250_INT_EN

#define LAN9250_INT_EN   0x005C

Definition at line 126 of file lan9250_driver.h.

◆ LAN9250_INT_EN_1588_EVNT_EN

#define LAN9250_INT_EN_1588_EVNT_EN   0x20000000

Definition at line 318 of file lan9250_driver.h.

◆ LAN9250_INT_EN_GPIO_EN

#define LAN9250_INT_EN_GPIO_EN   0x00001000

Definition at line 331 of file lan9250_driver.h.

◆ LAN9250_INT_EN_GPT_INT_EN

#define LAN9250_INT_EN_GPT_INT_EN   0x00080000

Definition at line 325 of file lan9250_driver.h.

◆ LAN9250_INT_EN_PHY_INT_EN

#define LAN9250_INT_EN_PHY_INT_EN   0x04000000

Definition at line 319 of file lan9250_driver.h.

◆ LAN9250_INT_EN_PME_INT_EN

#define LAN9250_INT_EN_PME_INT_EN   0x00020000

Definition at line 326 of file lan9250_driver.h.

◆ LAN9250_INT_EN_READY_EN

#define LAN9250_INT_EN_READY_EN   0x40000000

Definition at line 317 of file lan9250_driver.h.

◆ LAN9250_INT_EN_RSFF_EN

#define LAN9250_INT_EN_RSFF_EN   0x00000010

Definition at line 337 of file lan9250_driver.h.

◆ LAN9250_INT_EN_RSFL_EN

#define LAN9250_INT_EN_RSFL_EN   0x00000008

Definition at line 338 of file lan9250_driver.h.

◆ LAN9250_INT_EN_RWT_INT_EN

#define LAN9250_INT_EN_RWT_INT_EN   0x00008000

Definition at line 328 of file lan9250_driver.h.

◆ LAN9250_INT_EN_RXD_INT_EN

#define LAN9250_INT_EN_RXD_INT_EN   0x00100000

Definition at line 324 of file lan9250_driver.h.

◆ LAN9250_INT_EN_RXDF_INT_EN

#define LAN9250_INT_EN_RXDF_INT_EN   0x00000040

Definition at line 336 of file lan9250_driver.h.

◆ LAN9250_INT_EN_RXDFH_INT_EN

#define LAN9250_INT_EN_RXDFH_INT_EN   0x00800000

Definition at line 322 of file lan9250_driver.h.

◆ LAN9250_INT_EN_RXE_INT_EN

#define LAN9250_INT_EN_RXE_INT_EN   0x00004000

Definition at line 329 of file lan9250_driver.h.

◆ LAN9250_INT_EN_RXSTOP_INT_EN

#define LAN9250_INT_EN_RXSTOP_INT_EN   0x01000000

Definition at line 321 of file lan9250_driver.h.

◆ LAN9250_INT_EN_SW_INT_EN

#define LAN9250_INT_EN_SW_INT_EN   0x80000000

Definition at line 316 of file lan9250_driver.h.

◆ LAN9250_INT_EN_TDFA_EN

#define LAN9250_INT_EN_TDFA_EN   0x00000200

Definition at line 333 of file lan9250_driver.h.

◆ LAN9250_INT_EN_TDFO_EN

#define LAN9250_INT_EN_TDFO_EN   0x00000400

Definition at line 332 of file lan9250_driver.h.

◆ LAN9250_INT_EN_TIOC_INT_EN

#define LAN9250_INT_EN_TIOC_INT_EN   0x00200000

Definition at line 323 of file lan9250_driver.h.

◆ LAN9250_INT_EN_TSFF_EN

#define LAN9250_INT_EN_TSFF_EN   0x00000100

Definition at line 334 of file lan9250_driver.h.

◆ LAN9250_INT_EN_TSFL_EN

#define LAN9250_INT_EN_TSFL_EN   0x00000080

Definition at line 335 of file lan9250_driver.h.

◆ LAN9250_INT_EN_TXE_INT_EN

#define LAN9250_INT_EN_TXE_INT_EN   0x00002000

Definition at line 330 of file lan9250_driver.h.

◆ LAN9250_INT_EN_TXSO_EN

#define LAN9250_INT_EN_TXSO_EN   0x00010000

Definition at line 327 of file lan9250_driver.h.

◆ LAN9250_INT_EN_TXSTOP_INT_EN

#define LAN9250_INT_EN_TXSTOP_INT_EN   0x02000000

Definition at line 320 of file lan9250_driver.h.

◆ LAN9250_INT_STS

#define LAN9250_INT_STS   0x0058

Definition at line 125 of file lan9250_driver.h.

◆ LAN9250_INT_STS_1588_EVNT

#define LAN9250_INT_STS_1588_EVNT   0x20000000

Definition at line 293 of file lan9250_driver.h.

◆ LAN9250_INT_STS_GPIO

#define LAN9250_INT_STS_GPIO   0x00001000

Definition at line 306 of file lan9250_driver.h.

◆ LAN9250_INT_STS_GPT_INT

#define LAN9250_INT_STS_GPT_INT   0x00080000

Definition at line 300 of file lan9250_driver.h.

◆ LAN9250_INT_STS_PHY_INT

#define LAN9250_INT_STS_PHY_INT   0x04000000

Definition at line 294 of file lan9250_driver.h.

◆ LAN9250_INT_STS_PME_INT

#define LAN9250_INT_STS_PME_INT   0x00020000

Definition at line 301 of file lan9250_driver.h.

◆ LAN9250_INT_STS_READY

#define LAN9250_INT_STS_READY   0x40000000

Definition at line 292 of file lan9250_driver.h.

◆ LAN9250_INT_STS_RSFF

#define LAN9250_INT_STS_RSFF   0x00000010

Definition at line 312 of file lan9250_driver.h.

◆ LAN9250_INT_STS_RSFL

#define LAN9250_INT_STS_RSFL   0x00000008

Definition at line 313 of file lan9250_driver.h.

◆ LAN9250_INT_STS_RWT

#define LAN9250_INT_STS_RWT   0x00008000

Definition at line 303 of file lan9250_driver.h.

◆ LAN9250_INT_STS_RXD_INT

#define LAN9250_INT_STS_RXD_INT   0x00100000

Definition at line 299 of file lan9250_driver.h.

◆ LAN9250_INT_STS_RXDF_INT

#define LAN9250_INT_STS_RXDF_INT   0x00000040

Definition at line 311 of file lan9250_driver.h.

◆ LAN9250_INT_STS_RXDFH_INT

#define LAN9250_INT_STS_RXDFH_INT   0x00800000

Definition at line 297 of file lan9250_driver.h.

◆ LAN9250_INT_STS_RXE

#define LAN9250_INT_STS_RXE   0x00004000

Definition at line 304 of file lan9250_driver.h.

◆ LAN9250_INT_STS_RXSTOP_INT

#define LAN9250_INT_STS_RXSTOP_INT   0x01000000

Definition at line 296 of file lan9250_driver.h.

◆ LAN9250_INT_STS_SW_INT

#define LAN9250_INT_STS_SW_INT   0x80000000

Definition at line 291 of file lan9250_driver.h.

◆ LAN9250_INT_STS_TDFA

#define LAN9250_INT_STS_TDFA   0x00000200

Definition at line 308 of file lan9250_driver.h.

◆ LAN9250_INT_STS_TDFO

#define LAN9250_INT_STS_TDFO   0x00000400

Definition at line 307 of file lan9250_driver.h.

◆ LAN9250_INT_STS_TSFF

#define LAN9250_INT_STS_TSFF   0x00000100

Definition at line 309 of file lan9250_driver.h.

◆ LAN9250_INT_STS_TSFL

#define LAN9250_INT_STS_TSFL   0x00000080

Definition at line 310 of file lan9250_driver.h.

◆ LAN9250_INT_STS_TX_IOC

#define LAN9250_INT_STS_TX_IOC   0x00200000

Definition at line 298 of file lan9250_driver.h.

◆ LAN9250_INT_STS_TXE

#define LAN9250_INT_STS_TXE   0x00002000

Definition at line 305 of file lan9250_driver.h.

◆ LAN9250_INT_STS_TXSO

#define LAN9250_INT_STS_TXSO   0x00010000

Definition at line 302 of file lan9250_driver.h.

◆ LAN9250_INT_STS_TXSTOP_INT

#define LAN9250_INT_STS_TXSTOP_INT   0x02000000

Definition at line 295 of file lan9250_driver.h.

◆ LAN9250_IRQ_CFG

#define LAN9250_IRQ_CFG   0x0054

Definition at line 124 of file lan9250_driver.h.

◆ LAN9250_IRQ_CFG_INT_DEAS

#define LAN9250_IRQ_CFG_INT_DEAS   0xFF000000

Definition at line 274 of file lan9250_driver.h.

◆ LAN9250_IRQ_CFG_INT_DEAS_100US

#define LAN9250_IRQ_CFG_INT_DEAS_100US   0x0A000000

Definition at line 276 of file lan9250_driver.h.

◆ LAN9250_IRQ_CFG_INT_DEAS_10US

#define LAN9250_IRQ_CFG_INT_DEAS_10US   0x01000000

Definition at line 275 of file lan9250_driver.h.

◆ LAN9250_IRQ_CFG_INT_DEAS_1MS

#define LAN9250_IRQ_CFG_INT_DEAS_1MS   0x64000000

Definition at line 277 of file lan9250_driver.h.

◆ LAN9250_IRQ_CFG_INT_DEAS_CLR

#define LAN9250_IRQ_CFG_INT_DEAS_CLR   0x00004000

Definition at line 278 of file lan9250_driver.h.

◆ LAN9250_IRQ_CFG_INT_DEAS_STS

#define LAN9250_IRQ_CFG_INT_DEAS_STS   0x00002000

Definition at line 279 of file lan9250_driver.h.

◆ LAN9250_IRQ_CFG_IRQ_CLK_SELECT

#define LAN9250_IRQ_CFG_IRQ_CLK_SELECT   0x00000002

Definition at line 285 of file lan9250_driver.h.

◆ LAN9250_IRQ_CFG_IRQ_EN

#define LAN9250_IRQ_CFG_IRQ_EN   0x00000100

Definition at line 281 of file lan9250_driver.h.

◆ LAN9250_IRQ_CFG_IRQ_INT

#define LAN9250_IRQ_CFG_IRQ_INT   0x00001000

Definition at line 280 of file lan9250_driver.h.

◆ LAN9250_IRQ_CFG_IRQ_POL

#define LAN9250_IRQ_CFG_IRQ_POL   0x00000010

Definition at line 282 of file lan9250_driver.h.

◆ LAN9250_IRQ_CFG_IRQ_POL_HIGH

#define LAN9250_IRQ_CFG_IRQ_POL_HIGH   0x00000010

Definition at line 284 of file lan9250_driver.h.

◆ LAN9250_IRQ_CFG_IRQ_POL_LOW

#define LAN9250_IRQ_CFG_IRQ_POL_LOW   0x00000000

Definition at line 283 of file lan9250_driver.h.

◆ LAN9250_IRQ_CFG_IRQ_TYPE

#define LAN9250_IRQ_CFG_IRQ_TYPE   0x00000001

Definition at line 286 of file lan9250_driver.h.

◆ LAN9250_IRQ_CFG_IRQ_TYPE_OD

#define LAN9250_IRQ_CFG_IRQ_TYPE_OD   0x00000000

Definition at line 287 of file lan9250_driver.h.

◆ LAN9250_IRQ_CFG_IRQ_TYPE_PP

#define LAN9250_IRQ_CFG_IRQ_TYPE_PP   0x00000001

Definition at line 288 of file lan9250_driver.h.

◆ LAN9250_LED_CFG

#define LAN9250_LED_CFG   0x01BC

Definition at line 202 of file lan9250_driver.h.

◆ LAN9250_LED_CFG_LED_EN

#define LAN9250_LED_CFG_LED_EN   0x00000007

Definition at line 462 of file lan9250_driver.h.

◆ LAN9250_LED_CFG_LED_EN_0

#define LAN9250_LED_CFG_LED_EN_0   0x00000001

Definition at line 463 of file lan9250_driver.h.

◆ LAN9250_LED_CFG_LED_EN_1

#define LAN9250_LED_CFG_LED_EN_1   0x00000002

Definition at line 464 of file lan9250_driver.h.

◆ LAN9250_LED_CFG_LED_EN_2

#define LAN9250_LED_CFG_LED_EN_2   0x00000004

Definition at line 465 of file lan9250_driver.h.

◆ LAN9250_LED_CFG_LED_FUN

#define LAN9250_LED_CFG_LED_FUN   0x00000700

Definition at line 456 of file lan9250_driver.h.

◆ LAN9250_LED_CFG_LED_FUN_0

#define LAN9250_LED_CFG_LED_FUN_0   0x00000000

Definition at line 457 of file lan9250_driver.h.

◆ LAN9250_LED_CFG_LED_FUN_1

#define LAN9250_LED_CFG_LED_FUN_1   0x00000100

Definition at line 458 of file lan9250_driver.h.

◆ LAN9250_LED_CFG_LED_FUN_2

#define LAN9250_LED_CFG_LED_FUN_2   0x00000200

Definition at line 459 of file lan9250_driver.h.

◆ LAN9250_LED_CFG_LED_FUN_3

#define LAN9250_LED_CFG_LED_FUN_3   0x00000300

Definition at line 460 of file lan9250_driver.h.

◆ LAN9250_LED_CFG_LED_FUN_4

#define LAN9250_LED_CFG_LED_FUN_4   0x00000400

Definition at line 461 of file lan9250_driver.h.

◆ LAN9250_MAC_CSR_CMD

#define LAN9250_MAC_CSR_CMD   0x00A4

Definition at line 140 of file lan9250_driver.h.

◆ LAN9250_MAC_CSR_CMD_ADDR

#define LAN9250_MAC_CSR_CMD_ADDR   0x000000FF

Definition at line 430 of file lan9250_driver.h.

◆ LAN9250_MAC_CSR_CMD_BUSY

#define LAN9250_MAC_CSR_CMD_BUSY   0x80000000

Definition at line 427 of file lan9250_driver.h.

◆ LAN9250_MAC_CSR_CMD_READ

#define LAN9250_MAC_CSR_CMD_READ   0x40000000

Definition at line 429 of file lan9250_driver.h.

◆ LAN9250_MAC_CSR_CMD_WRITE

#define LAN9250_MAC_CSR_CMD_WRITE   0x00000000

Definition at line 428 of file lan9250_driver.h.

◆ LAN9250_MAC_CSR_DATA

#define LAN9250_MAC_CSR_DATA   0x00A8

Definition at line 141 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_ADV

#define LAN9250_PHY_AN_ADV   0x04

Definition at line 230 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_ADV_100BTX_FD

#define LAN9250_PHY_AN_ADV_100BTX_FD   0x0100

Definition at line 631 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_ADV_100BTX_HD

#define LAN9250_PHY_AN_ADV_100BTX_HD   0x0080

Definition at line 632 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_ADV_10BT_FD

#define LAN9250_PHY_AN_ADV_10BT_FD   0x0040

Definition at line 633 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_ADV_10BT_HD

#define LAN9250_PHY_AN_ADV_10BT_HD   0x0020

Definition at line 634 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_ADV_ASYM_PAUSE

#define LAN9250_PHY_AN_ADV_ASYM_PAUSE   0x0800

Definition at line 629 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_ADV_EXTENDED_NEXT_PAGE

#define LAN9250_PHY_AN_ADV_EXTENDED_NEXT_PAGE   0x1000

Definition at line 628 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_ADV_NEXT_PAGE

#define LAN9250_PHY_AN_ADV_NEXT_PAGE   0x8000

Definition at line 626 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_ADV_REMOTE_FAULT

#define LAN9250_PHY_AN_ADV_REMOTE_FAULT   0x2000

Definition at line 627 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_ADV_SELECTOR

#define LAN9250_PHY_AN_ADV_SELECTOR   0x001F

Definition at line 635 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_ADV_SELECTOR_DEFAULT

#define LAN9250_PHY_AN_ADV_SELECTOR_DEFAULT   0x0001

Definition at line 636 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_ADV_SYM_PAUSE

#define LAN9250_PHY_AN_ADV_SYM_PAUSE   0x0400

Definition at line 630 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_EXP

#define LAN9250_PHY_AN_EXP   0x06

Definition at line 232 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_EXP_LP_AN_ABLE

#define LAN9250_PHY_AN_EXP_LP_AN_ABLE   0x0001

Definition at line 660 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_EXP_LP_NEXT_PAGE_ABLE

#define LAN9250_PHY_AN_EXP_LP_NEXT_PAGE_ABLE   0x0008

Definition at line 657 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_EXP_NEXT_PAGE_ABLE

#define LAN9250_PHY_AN_EXP_NEXT_PAGE_ABLE   0x0004

Definition at line 658 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_EXP_PAGE_RECEIVED

#define LAN9250_PHY_AN_EXP_PAGE_RECEIVED   0x0002

Definition at line 659 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_EXP_PAR_DETECT_FAULT

#define LAN9250_PHY_AN_EXP_PAR_DETECT_FAULT   0x0010

Definition at line 656 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_EXP_RX_NEXT_PAGE_LOC_ABLE

#define LAN9250_PHY_AN_EXP_RX_NEXT_PAGE_LOC_ABLE   0x0040

Definition at line 654 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_EXP_RX_NEXT_PAGE_STOR_LOC

#define LAN9250_PHY_AN_EXP_RX_NEXT_PAGE_STOR_LOC   0x0020

Definition at line 655 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_LP_BASE_ABILITY

#define LAN9250_PHY_AN_LP_BASE_ABILITY   0x05

Definition at line 231 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_LP_BASE_ABILITY_100BT4

#define LAN9250_PHY_AN_LP_BASE_ABILITY_100BT4   0x0200

Definition at line 645 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_LP_BASE_ABILITY_100BTX_FD

#define LAN9250_PHY_AN_LP_BASE_ABILITY_100BTX_FD   0x0100

Definition at line 646 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_LP_BASE_ABILITY_100BTX_HD

#define LAN9250_PHY_AN_LP_BASE_ABILITY_100BTX_HD   0x0080

Definition at line 647 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_LP_BASE_ABILITY_10BT_FD

#define LAN9250_PHY_AN_LP_BASE_ABILITY_10BT_FD   0x0040

Definition at line 648 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_LP_BASE_ABILITY_10BT_HD

#define LAN9250_PHY_AN_LP_BASE_ABILITY_10BT_HD   0x0020

Definition at line 649 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_LP_BASE_ABILITY_ACK

#define LAN9250_PHY_AN_LP_BASE_ABILITY_ACK   0x4000

Definition at line 640 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_LP_BASE_ABILITY_ASYM_PAUSE

#define LAN9250_PHY_AN_LP_BASE_ABILITY_ASYM_PAUSE   0x0800

Definition at line 643 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_LP_BASE_ABILITY_EXTENDED_NEXT_PAGE

#define LAN9250_PHY_AN_LP_BASE_ABILITY_EXTENDED_NEXT_PAGE   0x1000

Definition at line 642 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_LP_BASE_ABILITY_NEXT_PAGE

#define LAN9250_PHY_AN_LP_BASE_ABILITY_NEXT_PAGE   0x8000

Definition at line 639 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_LP_BASE_ABILITY_REMOTE_FAULT

#define LAN9250_PHY_AN_LP_BASE_ABILITY_REMOTE_FAULT   0x2000

Definition at line 641 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_LP_BASE_ABILITY_SELECTOR

#define LAN9250_PHY_AN_LP_BASE_ABILITY_SELECTOR   0x001F

Definition at line 650 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_LP_BASE_ABILITY_SELECTOR_DEFAULT

#define LAN9250_PHY_AN_LP_BASE_ABILITY_SELECTOR_DEFAULT   0x0001

Definition at line 651 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_LP_BASE_ABILITY_SYM_PAUSE

#define LAN9250_PHY_AN_LP_BASE_ABILITY_SYM_PAUSE   0x0400

Definition at line 644 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_MMD_PRESENT1

#define LAN9250_PHY_AN_MMD_PRESENT1   0x07, 0x05

Definition at line 256 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_MMD_PRESENT2

#define LAN9250_PHY_AN_MMD_PRESENT2   0x07, 0x06

Definition at line 257 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_NP_RX

#define LAN9250_PHY_AN_NP_RX   0x08

Definition at line 234 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_NP_RX_ACK

#define LAN9250_PHY_AN_NP_RX_ACK   0x4000

Definition at line 671 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_NP_RX_ACK2

#define LAN9250_PHY_AN_NP_RX_ACK2   0x1000

Definition at line 673 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_NP_RX_MESSAGE

#define LAN9250_PHY_AN_NP_RX_MESSAGE   0x07FF

Definition at line 675 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_NP_RX_MSG_PAGE

#define LAN9250_PHY_AN_NP_RX_MSG_PAGE   0x2000

Definition at line 672 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_NP_RX_NEXT_PAGE

#define LAN9250_PHY_AN_NP_RX_NEXT_PAGE   0x8000

Definition at line 670 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_NP_RX_TOGGLE

#define LAN9250_PHY_AN_NP_RX_TOGGLE   0x0800

Definition at line 674 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_NP_TX

#define LAN9250_PHY_AN_NP_TX   0x07

Definition at line 233 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_NP_TX_ACK2

#define LAN9250_PHY_AN_NP_TX_ACK2   0x1000

Definition at line 665 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_NP_TX_MESSAGE

#define LAN9250_PHY_AN_NP_TX_MESSAGE   0x07FF

Definition at line 667 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_NP_TX_MSG_PAGE

#define LAN9250_PHY_AN_NP_TX_MSG_PAGE   0x2000

Definition at line 664 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_NP_TX_NEXT_PAGE

#define LAN9250_PHY_AN_NP_TX_NEXT_PAGE   0x8000

Definition at line 663 of file lan9250_driver.h.

◆ LAN9250_PHY_AN_NP_TX_TOGGLE

#define LAN9250_PHY_AN_NP_TX_TOGGLE   0x0800

Definition at line 666 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_CONTROL

#define LAN9250_PHY_BASIC_CONTROL   0x00

Definition at line 226 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_CONTROL_PHY_AN

#define LAN9250_PHY_BASIC_CONTROL_PHY_AN   0x1000

Definition at line 590 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_CONTROL_PHY_COL_TEST

#define LAN9250_PHY_BASIC_CONTROL_PHY_COL_TEST   0x0080

Definition at line 594 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_CONTROL_PHY_DUPLEX

#define LAN9250_PHY_BASIC_CONTROL_PHY_DUPLEX   0x0100

Definition at line 593 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_CONTROL_PHY_LOOPBACK

#define LAN9250_PHY_BASIC_CONTROL_PHY_LOOPBACK   0x4000

Definition at line 588 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_CONTROL_PHY_PWR_DWN

#define LAN9250_PHY_BASIC_CONTROL_PHY_PWR_DWN   0x0800

Definition at line 591 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_CONTROL_PHY_RST_AN

#define LAN9250_PHY_BASIC_CONTROL_PHY_RST_AN   0x0200

Definition at line 592 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_CONTROL_PHY_SPEED_SEL_LSB

#define LAN9250_PHY_BASIC_CONTROL_PHY_SPEED_SEL_LSB   0x2000

Definition at line 589 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_CONTROL_PHY_SRST

#define LAN9250_PHY_BASIC_CONTROL_PHY_SRST   0x8000

Definition at line 587 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS

#define LAN9250_PHY_BASIC_STATUS   0x01

Definition at line 227 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS_100BT2_FD

#define LAN9250_PHY_BASIC_STATUS_100BT2_FD   0x0400

Definition at line 602 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS_100BT2_HD

#define LAN9250_PHY_BASIC_STATUS_100BT2_HD   0x0200

Definition at line 603 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS_100BT4

#define LAN9250_PHY_BASIC_STATUS_100BT4   0x8000

Definition at line 597 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS_100BTX_FD

#define LAN9250_PHY_BASIC_STATUS_100BTX_FD   0x4000

Definition at line 598 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS_100BTX_HD

#define LAN9250_PHY_BASIC_STATUS_100BTX_HD   0x2000

Definition at line 599 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS_10BT_FD

#define LAN9250_PHY_BASIC_STATUS_10BT_FD   0x1000

Definition at line 600 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS_10BT_HD

#define LAN9250_PHY_BASIC_STATUS_10BT_HD   0x0800

Definition at line 601 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS_AN_CAPABLE

#define LAN9250_PHY_BASIC_STATUS_AN_CAPABLE   0x0008

Definition at line 609 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS_AN_COMPLETE

#define LAN9250_PHY_BASIC_STATUS_AN_COMPLETE   0x0020

Definition at line 607 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS_EXTENDED_CAPABLE

#define LAN9250_PHY_BASIC_STATUS_EXTENDED_CAPABLE   0x0001

Definition at line 612 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS_EXTENDED_STATUS

#define LAN9250_PHY_BASIC_STATUS_EXTENDED_STATUS   0x0100

Definition at line 604 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS_JABBER_DETECT

#define LAN9250_PHY_BASIC_STATUS_JABBER_DETECT   0x0002

Definition at line 611 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS_LINK_STATUS

#define LAN9250_PHY_BASIC_STATUS_LINK_STATUS   0x0004

Definition at line 610 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS_MF_PREAMBLE_SUPPR

#define LAN9250_PHY_BASIC_STATUS_MF_PREAMBLE_SUPPR   0x0040

Definition at line 606 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS_REMOTE_FAULT

#define LAN9250_PHY_BASIC_STATUS_REMOTE_FAULT   0x0010

Definition at line 608 of file lan9250_driver.h.

◆ LAN9250_PHY_BASIC_STATUS_UNIDIRECTIONAL_ABLE

#define LAN9250_PHY_BASIC_STATUS_UNIDIRECTIONAL_ABLE   0x0080

Definition at line 605 of file lan9250_driver.h.

◆ LAN9250_PHY_CABLE_LEN

#define LAN9250_PHY_CABLE_LEN   0x1C

Definition at line 244 of file lan9250_driver.h.

◆ LAN9250_PHY_CABLE_LEN_CBLN

#define LAN9250_PHY_CABLE_LEN_CBLN   0xF000

Definition at line 728 of file lan9250_driver.h.

◆ LAN9250_PHY_EDPD_CFG

#define LAN9250_PHY_EDPD_CFG   0x10

Definition at line 237 of file lan9250_driver.h.

◆ LAN9250_PHY_EEE_ADV

#define LAN9250_PHY_EEE_ADV   0x07, 0x3C

Definition at line 258 of file lan9250_driver.h.

◆ LAN9250_PHY_EEE_CAP

#define LAN9250_PHY_EEE_CAP   0x03, 0x14

Definition at line 254 of file lan9250_driver.h.

◆ LAN9250_PHY_EEE_LP_ADV

#define LAN9250_PHY_EEE_LP_ADV   0x07, 0x3D

Definition at line 259 of file lan9250_driver.h.

◆ LAN9250_PHY_EEE_WAKE_ERR

#define LAN9250_PHY_EEE_WAKE_ERR   0x03, 0x16

Definition at line 255 of file lan9250_driver.h.

◆ LAN9250_PHY_ID_LSB

#define LAN9250_PHY_ID_LSB   0x03

Definition at line 229 of file lan9250_driver.h.

◆ LAN9250_PHY_ID_LSB_MODEL_NUM

#define LAN9250_PHY_ID_LSB_MODEL_NUM   0x03F0

Definition at line 621 of file lan9250_driver.h.

◆ LAN9250_PHY_ID_LSB_MODEL_NUM_DEFAULT

#define LAN9250_PHY_ID_LSB_MODEL_NUM_DEFAULT   0x0140

Definition at line 622 of file lan9250_driver.h.

◆ LAN9250_PHY_ID_LSB_PHY_ID_LSB

#define LAN9250_PHY_ID_LSB_PHY_ID_LSB   0xFC00

Definition at line 619 of file lan9250_driver.h.

◆ LAN9250_PHY_ID_LSB_PHY_ID_LSB_DEFAULT

#define LAN9250_PHY_ID_LSB_PHY_ID_LSB_DEFAULT   0xC000

Definition at line 620 of file lan9250_driver.h.

◆ LAN9250_PHY_ID_LSB_REVISION_NUM

#define LAN9250_PHY_ID_LSB_REVISION_NUM   0x000F

Definition at line 623 of file lan9250_driver.h.

◆ LAN9250_PHY_ID_MSB

#define LAN9250_PHY_ID_MSB   0x02

Definition at line 228 of file lan9250_driver.h.

◆ LAN9250_PHY_ID_MSB_PHY_ID_MSB

#define LAN9250_PHY_ID_MSB_PHY_ID_MSB   0xFFFF

Definition at line 615 of file lan9250_driver.h.

◆ LAN9250_PHY_ID_MSB_PHY_ID_MSB_DEFAULT

#define LAN9250_PHY_ID_MSB_PHY_ID_MSB_DEFAULT   0x0007

Definition at line 616 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_MASK

#define LAN9250_PHY_INTERRUPT_MASK   0x1E

Definition at line 246 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_MASK_AN_COMPLETE

#define LAN9250_PHY_INTERRUPT_MASK_AN_COMPLETE   0x0040

Definition at line 743 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_MASK_AN_LP_ACK

#define LAN9250_PHY_INTERRUPT_MASK_AN_LP_ACK   0x0008

Definition at line 746 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_MASK_AN_PAGE_RECEIVED

#define LAN9250_PHY_INTERRUPT_MASK_AN_PAGE_RECEIVED   0x0002

Definition at line 748 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_MASK_ENERGYON

#define LAN9250_PHY_INTERRUPT_MASK_ENERGYON   0x0080

Definition at line 742 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_MASK_LINK_DOWN

#define LAN9250_PHY_INTERRUPT_MASK_LINK_DOWN   0x0010

Definition at line 745 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_MASK_LINK_UP

#define LAN9250_PHY_INTERRUPT_MASK_LINK_UP   0x0200

Definition at line 741 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_MASK_PARALLEL_DETECT_FAULT

#define LAN9250_PHY_INTERRUPT_MASK_PARALLEL_DETECT_FAULT   0x0004

Definition at line 747 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_MASK_REMOTE_FAULT

#define LAN9250_PHY_INTERRUPT_MASK_REMOTE_FAULT   0x0020

Definition at line 744 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_SOURCE

#define LAN9250_PHY_INTERRUPT_SOURCE   0x1D

Definition at line 245 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_SOURCE_AN_COMPLETE

#define LAN9250_PHY_INTERRUPT_SOURCE_AN_COMPLETE   0x0040

Definition at line 733 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_SOURCE_AN_LP_ACK

#define LAN9250_PHY_INTERRUPT_SOURCE_AN_LP_ACK   0x0008

Definition at line 736 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_SOURCE_AN_PAGE_RECEIVED

#define LAN9250_PHY_INTERRUPT_SOURCE_AN_PAGE_RECEIVED   0x0002

Definition at line 738 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_SOURCE_ENERGYON

#define LAN9250_PHY_INTERRUPT_SOURCE_ENERGYON   0x0080

Definition at line 732 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_SOURCE_LINK_DOWN

#define LAN9250_PHY_INTERRUPT_SOURCE_LINK_DOWN   0x0010

Definition at line 735 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_SOURCE_LINK_UP

#define LAN9250_PHY_INTERRUPT_SOURCE_LINK_UP   0x0200

Definition at line 731 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_SOURCE_PARALLEL_DETECT_FAULT

#define LAN9250_PHY_INTERRUPT_SOURCE_PARALLEL_DETECT_FAULT   0x0004

Definition at line 737 of file lan9250_driver.h.

◆ LAN9250_PHY_INTERRUPT_SOURCE_REMOTE_FAULT

#define LAN9250_PHY_INTERRUPT_SOURCE_REMOTE_FAULT   0x0020

Definition at line 734 of file lan9250_driver.h.

◆ LAN9250_PHY_MMD_ACCESS

#define LAN9250_PHY_MMD_ACCESS   0x0D

Definition at line 235 of file lan9250_driver.h.

◆ LAN9250_PHY_MMD_ACCESS_DEVAD

#define LAN9250_PHY_MMD_ACCESS_DEVAD   0x001F

Definition at line 681 of file lan9250_driver.h.

◆ LAN9250_PHY_MMD_ACCESS_FUNC

#define LAN9250_PHY_MMD_ACCESS_FUNC   0xC000

Definition at line 678 of file lan9250_driver.h.

◆ LAN9250_PHY_MMD_ACCESS_FUNC_ADDR

#define LAN9250_PHY_MMD_ACCESS_FUNC_ADDR   0x0000

Definition at line 679 of file lan9250_driver.h.

◆ LAN9250_PHY_MMD_ACCESS_FUNC_DATA_NO_POST_INC

#define LAN9250_PHY_MMD_ACCESS_FUNC_DATA_NO_POST_INC   0x4000

Definition at line 680 of file lan9250_driver.h.

◆ LAN9250_PHY_MMD_ADDR_DATA

#define LAN9250_PHY_MMD_ADDR_DATA   0x0E

Definition at line 236 of file lan9250_driver.h.

◆ LAN9250_PHY_MODE_CONTROL_STATUS

#define LAN9250_PHY_MODE_CONTROL_STATUS   0x11

Definition at line 238 of file lan9250_driver.h.

◆ LAN9250_PHY_MODE_CONTROL_STATUS_ALTINT

#define LAN9250_PHY_MODE_CONTROL_STATUS_ALTINT   0x0040

Definition at line 685 of file lan9250_driver.h.

◆ LAN9250_PHY_MODE_CONTROL_STATUS_EDPWRDOWN

#define LAN9250_PHY_MODE_CONTROL_STATUS_EDPWRDOWN   0x2000

Definition at line 684 of file lan9250_driver.h.

◆ LAN9250_PHY_MODE_CONTROL_STATUS_ENERGYON

#define LAN9250_PHY_MODE_CONTROL_STATUS_ENERGYON   0x0002

Definition at line 686 of file lan9250_driver.h.

◆ LAN9250_PHY_PCS_CTL1

#define LAN9250_PHY_PCS_CTL1   0x03, 0x00

Definition at line 250 of file lan9250_driver.h.

◆ LAN9250_PHY_PCS_MMD_PRESENT1

#define LAN9250_PHY_PCS_MMD_PRESENT1   0x03, 0x05

Definition at line 252 of file lan9250_driver.h.

◆ LAN9250_PHY_PCS_MMD_PRESENT2

#define LAN9250_PHY_PCS_MMD_PRESENT2   0x03, 0x06

Definition at line 253 of file lan9250_driver.h.

◆ LAN9250_PHY_PCS_STAT1

#define LAN9250_PHY_PCS_STAT1   0x03, 0x01

Definition at line 251 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_CONTROL_STAT_IND

#define LAN9250_PHY_SPECIAL_CONTROL_STAT_IND   0x1B

Definition at line 243 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_AMDIXCTRL

#define LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_AMDIXCTRL   0x8000

Definition at line 720 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_AMDIXEN

#define LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_AMDIXEN   0x4000

Definition at line 721 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_AMDIXSTATE

#define LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_AMDIXSTATE   0x2000

Definition at line 722 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_FEFI_EN

#define LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_FEFI_EN   0x0020

Definition at line 724 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_SQEOFF

#define LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_SQEOFF   0x0800

Definition at line 723 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_XPOL

#define LAN9250_PHY_SPECIAL_CONTROL_STAT_IND_XPOL   0x0010

Definition at line 725 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_CONTROL_STATUS

#define LAN9250_PHY_SPECIAL_CONTROL_STATUS   0x1F

Definition at line 247 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_CONTROL_STATUS_AUTODONE

#define LAN9250_PHY_SPECIAL_CONTROL_STATUS_AUTODONE   0x1000

Definition at line 751 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_CONTROL_STATUS_SPEED

#define LAN9250_PHY_SPECIAL_CONTROL_STATUS_SPEED   0x001C

Definition at line 752 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_CONTROL_STATUS_SPEED_100BTX_FD

#define LAN9250_PHY_SPECIAL_CONTROL_STATUS_SPEED_100BTX_FD   0x0018

Definition at line 756 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_CONTROL_STATUS_SPEED_100BTX_HD

#define LAN9250_PHY_SPECIAL_CONTROL_STATUS_SPEED_100BTX_HD   0x0008

Definition at line 754 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_CONTROL_STATUS_SPEED_10BT_FD

#define LAN9250_PHY_SPECIAL_CONTROL_STATUS_SPEED_10BT_FD   0x0014

Definition at line 755 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_CONTROL_STATUS_SPEED_10BT_HD

#define LAN9250_PHY_SPECIAL_CONTROL_STATUS_SPEED_10BT_HD   0x0004

Definition at line 753 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_MODES

#define LAN9250_PHY_SPECIAL_MODES   0x12

Definition at line 239 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_MODES_FX_MODE

#define LAN9250_PHY_SPECIAL_MODES_FX_MODE   0x0400

Definition at line 689 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_MODES_MODE

#define LAN9250_PHY_SPECIAL_MODES_MODE   0x00E0

Definition at line 690 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_MODES_MODE_100BTX_FD

#define LAN9250_PHY_SPECIAL_MODES_MODE_100BTX_FD   0x0060

Definition at line 694 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_MODES_MODE_100BTX_HD

#define LAN9250_PHY_SPECIAL_MODES_MODE_100BTX_HD   0x0040

Definition at line 693 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_MODES_MODE_10BT_FD

#define LAN9250_PHY_SPECIAL_MODES_MODE_10BT_FD   0x0020

Definition at line 692 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_MODES_MODE_10BT_HD

#define LAN9250_PHY_SPECIAL_MODES_MODE_10BT_HD   0x0000

Definition at line 691 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_MODES_MODE_AN

#define LAN9250_PHY_SPECIAL_MODES_MODE_AN   0x00E0

Definition at line 696 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_MODES_MODE_POWER_DOWN

#define LAN9250_PHY_SPECIAL_MODES_MODE_POWER_DOWN   0x00C0

Definition at line 695 of file lan9250_driver.h.

◆ LAN9250_PHY_SPECIAL_MODES_PHYADD

#define LAN9250_PHY_SPECIAL_MODES_PHYADD   0x001F

Definition at line 697 of file lan9250_driver.h.

◆ LAN9250_PHY_SYMBOL_ERR_COUNTER

#define LAN9250_PHY_SYMBOL_ERR_COUNTER   0x1A

Definition at line 242 of file lan9250_driver.h.

◆ LAN9250_PHY_SYMBOL_ERR_COUNTER_SYM_ERR_CNT

#define LAN9250_PHY_SYMBOL_ERR_COUNTER_SYM_ERR_CNT   0xFFFF

Definition at line 717 of file lan9250_driver.h.

◆ LAN9250_PHY_TDR_CONTROL_STAT

#define LAN9250_PHY_TDR_CONTROL_STAT   0x19

Definition at line 241 of file lan9250_driver.h.

◆ LAN9250_PHY_TDR_CONTROL_STAT_TDR_AD_FILTER_EN

#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_AD_FILTER_EN   0x4000

Definition at line 707 of file lan9250_driver.h.

◆ LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_CABLE_TYPE

#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_CABLE_TYPE   0x0600

Definition at line 708 of file lan9250_driver.h.

◆ LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_CABLE_TYPE_DEFAULT

#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_CABLE_TYPE_DEFAULT   0x0000

Definition at line 709 of file lan9250_driver.h.

◆ LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_CABLE_TYPE_MATCH

#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_CABLE_TYPE_MATCH   0x0600

Definition at line 712 of file lan9250_driver.h.

◆ LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_CABLE_TYPE_OPEN

#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_CABLE_TYPE_OPEN   0x0400

Definition at line 711 of file lan9250_driver.h.

◆ LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_CABLE_TYPE_SHORTED

#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_CABLE_TYPE_SHORTED   0x0200

Definition at line 710 of file lan9250_driver.h.

◆ LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_LENGTH

#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_LENGTH   0x00FF

Definition at line 714 of file lan9250_driver.h.

◆ LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_STATUS

#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_CH_STATUS   0x0100

Definition at line 713 of file lan9250_driver.h.

◆ LAN9250_PHY_TDR_CONTROL_STAT_TDR_EN

#define LAN9250_PHY_TDR_CONTROL_STAT_TDR_EN   0x8000

Definition at line 706 of file lan9250_driver.h.

◆ LAN9250_PHY_TDR_PAT_DELAY

#define LAN9250_PHY_TDR_PAT_DELAY   0x18

Definition at line 240 of file lan9250_driver.h.

◆ LAN9250_PHY_TDR_PAT_DELAY_TDR_DELAY_IN

#define LAN9250_PHY_TDR_PAT_DELAY_TDR_DELAY_IN   0x8000

Definition at line 700 of file lan9250_driver.h.

◆ LAN9250_PHY_TDR_PAT_DELAY_TDR_LINE_BREAK_COUNTER

#define LAN9250_PHY_TDR_PAT_DELAY_TDR_LINE_BREAK_COUNTER   0x7000

Definition at line 701 of file lan9250_driver.h.

◆ LAN9250_PHY_TDR_PAT_DELAY_TDR_PATTERN_HIGH

#define LAN9250_PHY_TDR_PAT_DELAY_TDR_PATTERN_HIGH   0x0FC0

Definition at line 702 of file lan9250_driver.h.

◆ LAN9250_PHY_TDR_PAT_DELAY_TDR_PATTERN_LOW

#define LAN9250_PHY_TDR_PAT_DELAY_TDR_PATTERN_LOW   0x003F

Definition at line 703 of file lan9250_driver.h.

◆ LAN9250_PHY_VEND_SPEC_MMD1_DEVID1

#define LAN9250_PHY_VEND_SPEC_MMD1_DEVID1   0x1E, 0x02

Definition at line 260 of file lan9250_driver.h.

◆ LAN9250_PHY_VEND_SPEC_MMD1_DEVID2

#define LAN9250_PHY_VEND_SPEC_MMD1_DEVID2   0x1E, 0x03

Definition at line 261 of file lan9250_driver.h.

◆ LAN9250_PHY_VEND_SPEC_MMD1_PKG_ID1

#define LAN9250_PHY_VEND_SPEC_MMD1_PKG_ID1   0x1E, 0x0E

Definition at line 265 of file lan9250_driver.h.

◆ LAN9250_PHY_VEND_SPEC_MMD1_PKG_ID2

#define LAN9250_PHY_VEND_SPEC_MMD1_PKG_ID2   0x1E, 0x0F

Definition at line 266 of file lan9250_driver.h.

◆ LAN9250_PHY_VEND_SPEC_MMD1_PRESENT1

#define LAN9250_PHY_VEND_SPEC_MMD1_PRESENT1   0x1E, 0x05

Definition at line 262 of file lan9250_driver.h.

◆ LAN9250_PHY_VEND_SPEC_MMD1_PRESENT2

#define LAN9250_PHY_VEND_SPEC_MMD1_PRESENT2   0x1E, 0x06

Definition at line 263 of file lan9250_driver.h.

◆ LAN9250_PHY_VEND_SPEC_MMD1_STAT

#define LAN9250_PHY_VEND_SPEC_MMD1_STAT   0x1E, 0x08

Definition at line 264 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL

#define LAN9250_PMT_CTRL   0x0084

Definition at line 135 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_1588_DIS

#define LAN9250_PMT_CTRL_1588_DIS   0x02000000

Definition at line 399 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_1588_TSU_DIS

#define LAN9250_PMT_CTRL_1588_TSU_DIS   0x00400000

Definition at line 400 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_ED_EN

#define LAN9250_PMT_CTRL_ED_EN   0x00004000

Definition at line 404 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_ED_STS

#define LAN9250_PMT_CTRL_ED_STS   0x00010000

Definition at line 403 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_HMAC_DIS

#define LAN9250_PMT_CTRL_HMAC_DIS   0x00080000

Definition at line 401 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_HMAC_SYS_ONLY_DIS

#define LAN9250_PMT_CTRL_HMAC_SYS_ONLY_DIS   0x00040000

Definition at line 402 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_LED_DIS

#define LAN9250_PMT_CTRL_LED_DIS   0x04000000

Definition at line 398 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_PM_MODE

#define LAN9250_PMT_CTRL_PM_MODE   0xE0000000

Definition at line 395 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_PM_SLEEP_EN

#define LAN9250_PMT_CTRL_PM_SLEEP_EN   0x10000000

Definition at line 396 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_PM_WAKE

#define LAN9250_PMT_CTRL_PM_WAKE   0x08000000

Definition at line 397 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_PME_EN

#define LAN9250_PMT_CTRL_PME_EN   0x00000002

Definition at line 410 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_PME_IND

#define LAN9250_PMT_CTRL_PME_IND   0x00000008

Definition at line 408 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_PME_POL

#define LAN9250_PMT_CTRL_PME_POL   0x00000004

Definition at line 409 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_PME_TYPE

#define LAN9250_PMT_CTRL_PME_TYPE   0x00000040

Definition at line 406 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_READY

#define LAN9250_PMT_CTRL_READY   0x00000001

Definition at line 411 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_WOL_EN

#define LAN9250_PMT_CTRL_WOL_EN   0x00000200

Definition at line 405 of file lan9250_driver.h.

◆ LAN9250_PMT_CTRL_WOL_STS

#define LAN9250_PMT_CTRL_WOL_STS   0x00000020

Definition at line 407 of file lan9250_driver.h.

◆ LAN9250_RESET_CTL

#define LAN9250_RESET_CTL   0x01F8

Definition at line 206 of file lan9250_driver.h.

◆ LAN9250_RESET_CTL_DIGITAL_RST

#define LAN9250_RESET_CTL_DIGITAL_RST   0x00000001

Definition at line 508 of file lan9250_driver.h.

◆ LAN9250_RESET_CTL_HMAC_RST

#define LAN9250_RESET_CTL_HMAC_RST   0x00000020

Definition at line 506 of file lan9250_driver.h.

◆ LAN9250_RESET_CTL_PHY_RST

#define LAN9250_RESET_CTL_PHY_RST   0x00000002

Definition at line 507 of file lan9250_driver.h.

◆ LAN9250_RX_CFG

#define LAN9250_RX_CFG   0x006C

Definition at line 129 of file lan9250_driver.h.

◆ LAN9250_RX_CFG_RX_DMA_CNT

#define LAN9250_RX_CFG_RX_DMA_CNT   0x0FFF0000

Definition at line 353 of file lan9250_driver.h.

◆ LAN9250_RX_CFG_RX_DUMP

#define LAN9250_RX_CFG_RX_DUMP   0x00008000

Definition at line 354 of file lan9250_driver.h.

◆ LAN9250_RX_CFG_RX_EA

#define LAN9250_RX_CFG_RX_EA   0xC0000000

Definition at line 349 of file lan9250_driver.h.

◆ LAN9250_RX_CFG_RX_EA_16_BYTES

#define LAN9250_RX_CFG_RX_EA_16_BYTES   0x40000000

Definition at line 351 of file lan9250_driver.h.

◆ LAN9250_RX_CFG_RX_EA_32_BYTES

#define LAN9250_RX_CFG_RX_EA_32_BYTES   0x80000000

Definition at line 352 of file lan9250_driver.h.

◆ LAN9250_RX_CFG_RX_EA_4_BYTES

#define LAN9250_RX_CFG_RX_EA_4_BYTES   0x00000000

Definition at line 350 of file lan9250_driver.h.

◆ LAN9250_RX_CFG_RXDOFF

#define LAN9250_RX_CFG_RXDOFF   0x00001F00

Definition at line 355 of file lan9250_driver.h.

◆ LAN9250_RX_DATA_FIFO

#define LAN9250_RX_DATA_FIFO   0x0000

Definition at line 117 of file lan9250_driver.h.

◆ LAN9250_RX_DP_CTRL

#define LAN9250_RX_DP_CTRL   0x0078

Definition at line 132 of file lan9250_driver.h.

◆ LAN9250_RX_DP_CTRL_RX_FFWD

#define LAN9250_RX_DP_CTRL_RX_FFWD   0x80000000

Definition at line 384 of file lan9250_driver.h.

◆ LAN9250_RX_DROP

#define LAN9250_RX_DROP   0x00A0

Definition at line 139 of file lan9250_driver.h.

◆ LAN9250_RX_DROP_RX_DFC

#define LAN9250_RX_DROP_RX_DFC   0xFFFFFFFF

Definition at line 424 of file lan9250_driver.h.

◆ LAN9250_RX_FIFO_INF

#define LAN9250_RX_FIFO_INF   0x007C

Definition at line 133 of file lan9250_driver.h.

◆ LAN9250_RX_FIFO_INF_RXDUSED

#define LAN9250_RX_FIFO_INF_RXDUSED   0x0000FFFF

Definition at line 388 of file lan9250_driver.h.

◆ LAN9250_RX_FIFO_INF_RXSUSED

#define LAN9250_RX_FIFO_INF_RXSUSED   0x00FF0000

Definition at line 387 of file lan9250_driver.h.

◆ LAN9250_RX_STATUS_FIFO

#define LAN9250_RX_STATUS_FIFO   0x0040

Definition at line 119 of file lan9250_driver.h.

◆ LAN9250_RX_STATUS_FIFO_PEEK

#define LAN9250_RX_STATUS_FIFO_PEEK   0x0044

Definition at line 120 of file lan9250_driver.h.

◆ LAN9250_RX_STS_BROADCAST_FRAME

#define LAN9250_RX_STS_BROADCAST_FRAME   0x00002000

Definition at line 104 of file lan9250_driver.h.

◆ LAN9250_RX_STS_COLLISION_SEEN

#define LAN9250_RX_STS_COLLISION_SEEN   0x00000040

Definition at line 109 of file lan9250_driver.h.

◆ LAN9250_RX_STS_CRC_ERROR

#define LAN9250_RX_STS_CRC_ERROR   0x00000002

Definition at line 114 of file lan9250_driver.h.

◆ LAN9250_RX_STS_DRIBBLING_BIT

#define LAN9250_RX_STS_DRIBBLING_BIT   0x00000004

Definition at line 113 of file lan9250_driver.h.

◆ LAN9250_RX_STS_ERROR_STATUS

#define LAN9250_RX_STS_ERROR_STATUS   0x00008000

Definition at line 103 of file lan9250_driver.h.

◆ LAN9250_RX_STS_FILTERING_FAIL

#define LAN9250_RX_STS_FILTERING_FAIL   0x40000000

Definition at line 101 of file lan9250_driver.h.

◆ LAN9250_RX_STS_FRAME_TOO_LONG

#define LAN9250_RX_STS_FRAME_TOO_LONG   0x00000080

Definition at line 108 of file lan9250_driver.h.

◆ LAN9250_RX_STS_FRAME_TYPE

#define LAN9250_RX_STS_FRAME_TYPE   0x00000020

Definition at line 110 of file lan9250_driver.h.

◆ LAN9250_RX_STS_LENGTH_ERROR

#define LAN9250_RX_STS_LENGTH_ERROR   0x00001000

Definition at line 105 of file lan9250_driver.h.

◆ LAN9250_RX_STS_MII_ERROR

#define LAN9250_RX_STS_MII_ERROR   0x00000008

Definition at line 112 of file lan9250_driver.h.

◆ LAN9250_RX_STS_MULTICAST_FRAME

#define LAN9250_RX_STS_MULTICAST_FRAME   0x00000400

Definition at line 107 of file lan9250_driver.h.

◆ LAN9250_RX_STS_PACKET_FILTER

#define LAN9250_RX_STS_PACKET_FILTER   0x80000000

Definition at line 100 of file lan9250_driver.h.

◆ LAN9250_RX_STS_PACKET_LEN

#define LAN9250_RX_STS_PACKET_LEN   0x3FFF0000

Definition at line 102 of file lan9250_driver.h.

◆ LAN9250_RX_STS_RECEIVE_WDT

#define LAN9250_RX_STS_RECEIVE_WDT   0x00000010

Definition at line 111 of file lan9250_driver.h.

◆ LAN9250_RX_STS_RUNT_FRAME

#define LAN9250_RX_STS_RUNT_FRAME   0x00000800

Definition at line 106 of file lan9250_driver.h.

◆ LAN9250_SPI_INSTR_EQIO

#define LAN9250_SPI_INSTR_EQIO   0x38

Definition at line 55 of file lan9250_driver.h.

◆ LAN9250_SPI_INSTR_FASTREAD

#define LAN9250_SPI_INSTR_FASTREAD   0x0B

Definition at line 58 of file lan9250_driver.h.

◆ LAN9250_SPI_INSTR_READ

#define LAN9250_SPI_INSTR_READ   0x03

Definition at line 57 of file lan9250_driver.h.

◆ LAN9250_SPI_INSTR_RSTQIO

#define LAN9250_SPI_INSTR_RSTQIO   0xFF

Definition at line 56 of file lan9250_driver.h.

◆ LAN9250_SPI_INSTR_SDADW

#define LAN9250_SPI_INSTR_SDADW   0xB2

Definition at line 65 of file lan9250_driver.h.

◆ LAN9250_SPI_INSTR_SDDW

#define LAN9250_SPI_INSTR_SDDW   0x32

Definition at line 64 of file lan9250_driver.h.

◆ LAN9250_SPI_INSTR_SDIOR

#define LAN9250_SPI_INSTR_SDIOR   0xBB

Definition at line 60 of file lan9250_driver.h.

◆ LAN9250_SPI_INSTR_SDOR

#define LAN9250_SPI_INSTR_SDOR   0x3B

Definition at line 59 of file lan9250_driver.h.

◆ LAN9250_SPI_INSTR_SQADW

#define LAN9250_SPI_INSTR_SQADW   0xE2

Definition at line 67 of file lan9250_driver.h.

◆ LAN9250_SPI_INSTR_SQDW

#define LAN9250_SPI_INSTR_SQDW   0x62

Definition at line 66 of file lan9250_driver.h.

◆ LAN9250_SPI_INSTR_SQIOR

#define LAN9250_SPI_INSTR_SQIOR   0xEB

Definition at line 62 of file lan9250_driver.h.

◆ LAN9250_SPI_INSTR_SQOR

#define LAN9250_SPI_INSTR_SQOR   0x6B

Definition at line 61 of file lan9250_driver.h.

◆ LAN9250_SPI_INSTR_WRITE

#define LAN9250_SPI_INSTR_WRITE   0x02

Definition at line 63 of file lan9250_driver.h.

◆ LAN9250_TX_CFG

#define LAN9250_TX_CFG   0x0070

Definition at line 130 of file lan9250_driver.h.

◆ LAN9250_TX_CFG_STOP_TX

#define LAN9250_TX_CFG_STOP_TX   0x00000001

Definition at line 362 of file lan9250_driver.h.

◆ LAN9250_TX_CFG_TX_ON

#define LAN9250_TX_CFG_TX_ON   0x00000002

Definition at line 361 of file lan9250_driver.h.

◆ LAN9250_TX_CFG_TXD_DUMP

#define LAN9250_TX_CFG_TXD_DUMP   0x00004000

Definition at line 359 of file lan9250_driver.h.

◆ LAN9250_TX_CFG_TXS_DUMP

#define LAN9250_TX_CFG_TXS_DUMP   0x00008000

Definition at line 358 of file lan9250_driver.h.

◆ LAN9250_TX_CFG_TXSAO

#define LAN9250_TX_CFG_TXSAO   0x00000004

Definition at line 360 of file lan9250_driver.h.

◆ LAN9250_TX_CMD_A_BUFFER_ALIGN

#define LAN9250_TX_CMD_A_BUFFER_ALIGN   0x03000000

Definition at line 71 of file lan9250_driver.h.

◆ LAN9250_TX_CMD_A_BUFFER_ALIGN_16B

#define LAN9250_TX_CMD_A_BUFFER_ALIGN_16B   0x01000000

Definition at line 73 of file lan9250_driver.h.

◆ LAN9250_TX_CMD_A_BUFFER_ALIGN_32B

#define LAN9250_TX_CMD_A_BUFFER_ALIGN_32B   0x02000000

Definition at line 74 of file lan9250_driver.h.

◆ LAN9250_TX_CMD_A_BUFFER_ALIGN_4B

#define LAN9250_TX_CMD_A_BUFFER_ALIGN_4B   0x00000000

Definition at line 72 of file lan9250_driver.h.

◆ LAN9250_TX_CMD_A_BUFFER_SIZE

#define LAN9250_TX_CMD_A_BUFFER_SIZE   0x000007FF

Definition at line 79 of file lan9250_driver.h.

◆ LAN9250_TX_CMD_A_FIRST_SEG

#define LAN9250_TX_CMD_A_FIRST_SEG   0x00002000

Definition at line 77 of file lan9250_driver.h.

◆ LAN9250_TX_CMD_A_INT_ON_COMP

#define LAN9250_TX_CMD_A_INT_ON_COMP   0x80000000

Definition at line 70 of file lan9250_driver.h.

◆ LAN9250_TX_CMD_A_LAST_SEG

#define LAN9250_TX_CMD_A_LAST_SEG   0x00001000

Definition at line 78 of file lan9250_driver.h.

◆ LAN9250_TX_CMD_A_START_OFFSET

#define LAN9250_TX_CMD_A_START_OFFSET   0x001F0000

Definition at line 75 of file lan9250_driver.h.

◆ LAN9250_TX_CMD_A_START_OFFSET_0B

#define LAN9250_TX_CMD_A_START_OFFSET_0B   0x00000000

Definition at line 76 of file lan9250_driver.h.

◆ LAN9250_TX_CMD_B_ADD_CRC_DIS

#define LAN9250_TX_CMD_B_ADD_CRC_DIS   0x00002000

Definition at line 84 of file lan9250_driver.h.

◆ LAN9250_TX_CMD_B_PACKET_LEN

#define LAN9250_TX_CMD_B_PACKET_LEN   0x000007FF

Definition at line 86 of file lan9250_driver.h.

◆ LAN9250_TX_CMD_B_PACKET_TAG

#define LAN9250_TX_CMD_B_PACKET_TAG   0xFFFF0000

Definition at line 82 of file lan9250_driver.h.

◆ LAN9250_TX_CMD_B_PADDING_DIS

#define LAN9250_TX_CMD_B_PADDING_DIS   0x00001000

Definition at line 85 of file lan9250_driver.h.

◆ LAN9250_TX_CMD_B_TX_CHECKSUM_EN

#define LAN9250_TX_CMD_B_TX_CHECKSUM_EN   0x00004000

Definition at line 83 of file lan9250_driver.h.

◆ LAN9250_TX_CMD_SIZE

#define LAN9250_TX_CMD_SIZE   8

Definition at line 52 of file lan9250_driver.h.

◆ LAN9250_TX_DATA_FIFO

#define LAN9250_TX_DATA_FIFO   0x0020

Definition at line 118 of file lan9250_driver.h.

◆ LAN9250_TX_FIFO_INF

#define LAN9250_TX_FIFO_INF   0x0080

Definition at line 134 of file lan9250_driver.h.

◆ LAN9250_TX_FIFO_INF_TXFREE

#define LAN9250_TX_FIFO_INF_TXFREE   0x0000FFFF

Definition at line 392 of file lan9250_driver.h.

◆ LAN9250_TX_FIFO_INF_TXSUSED

#define LAN9250_TX_FIFO_INF_TXSUSED   0x00FF0000

Definition at line 391 of file lan9250_driver.h.

◆ LAN9250_TX_STATUS_FIFO

#define LAN9250_TX_STATUS_FIFO   0x0048

Definition at line 121 of file lan9250_driver.h.

◆ LAN9250_TX_STATUS_FIFO_PEEK

#define LAN9250_TX_STATUS_FIFO_PEEK   0x004C

Definition at line 122 of file lan9250_driver.h.

◆ LAN9250_TX_STS_COLLISION_COUNT

#define LAN9250_TX_STS_COLLISION_COUNT   0x00000078

Definition at line 95 of file lan9250_driver.h.

◆ LAN9250_TX_STS_DEFERRED

#define LAN9250_TX_STS_DEFERRED   0x00000001

Definition at line 97 of file lan9250_driver.h.

◆ LAN9250_TX_STS_ERROR_STATUS

#define LAN9250_TX_STS_ERROR_STATUS   0x00008000

Definition at line 90 of file lan9250_driver.h.

◆ LAN9250_TX_STS_EXCESS_COLLISIONS

#define LAN9250_TX_STS_EXCESS_COLLISIONS   0x00000100

Definition at line 94 of file lan9250_driver.h.

◆ LAN9250_TX_STS_EXCESS_DEFERRAL

#define LAN9250_TX_STS_EXCESS_DEFERRAL   0x00000004

Definition at line 96 of file lan9250_driver.h.

◆ LAN9250_TX_STS_LATE_COLLISION

#define LAN9250_TX_STS_LATE_COLLISION   0x00000200

Definition at line 93 of file lan9250_driver.h.

◆ LAN9250_TX_STS_LOSS_OF_CARRIER

#define LAN9250_TX_STS_LOSS_OF_CARRIER   0x00000800

Definition at line 91 of file lan9250_driver.h.

◆ LAN9250_TX_STS_NO_CARRIER

#define LAN9250_TX_STS_NO_CARRIER   0x00000400

Definition at line 92 of file lan9250_driver.h.

◆ LAN9250_TX_STS_PACKET_TAG

#define LAN9250_TX_STS_PACKET_TAG   0xFFFF0000

Definition at line 89 of file lan9250_driver.h.

Function Documentation

◆ lan9250CalcCrc()

uint32_t lan9250CalcCrc ( const void *  data,
size_t  length 
)

CRC calculation.

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 1080 of file lan9250_driver.c.

◆ lan9250DisableIrq()

void lan9250DisableIrq ( NetInterface interface)

Disable interrupts.

Parameters
[in]interfaceUnderlying network interface

Definition at line 230 of file lan9250_driver.c.

◆ lan9250DropPacket()

void lan9250DropPacket ( NetInterface interface,
size_t  length 
)

Drop the received packet.

Parameters
[in]interfaceUnderlying network interface
[in]lengthLength of the packet, in bytes

Definition at line 573 of file lan9250_driver.c.

◆ lan9250DumpMacReg()

void lan9250DumpMacReg ( NetInterface interface)

Dump host MAC CSR registers for debugging purpose.

Parameters
[in]interfaceUnderlying network interface

Definition at line 825 of file lan9250_driver.c.

◆ lan9250DumpPhyReg()

void lan9250DumpPhyReg ( NetInterface interface)

Dump PHY registers for debugging purpose.

Parameters
[in]interfaceUnderlying network interface

Definition at line 921 of file lan9250_driver.c.

◆ lan9250DumpSysReg()

void lan9250DumpSysReg ( NetInterface interface)

Dump system CSR registers for debugging purpose.

Parameters
[in]interfaceUnderlying network interface

Definition at line 731 of file lan9250_driver.c.

◆ lan9250EnableIrq()

void lan9250EnableIrq ( NetInterface interface)

Enable interrupts.

Parameters
[in]interfaceUnderlying network interface

Definition at line 215 of file lan9250_driver.c.

◆ lan9250EventHandler()

void lan9250EventHandler ( NetInterface interface)

LAN9250 event handler.

Parameters
[in]interfaceUnderlying network interface

Definition at line 319 of file lan9250_driver.c.

◆ lan9250Init()

error_t lan9250Init ( NetInterface interface)

LAN9250 controller initialization.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 71 of file lan9250_driver.c.

◆ lan9250InitHook()

void lan9250InitHook ( NetInterface interface)

LAN9250 custom configuration.

Parameters
[in]interfaceUnderlying network interface

Definition at line 195 of file lan9250_driver.c.

◆ lan9250IrqHandler()

bool_t lan9250IrqHandler ( NetInterface interface)

LAN9250 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 246 of file lan9250_driver.c.

◆ lan9250ReadFifo()

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

Read RX FIFO.

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

Definition at line 1042 of file lan9250_driver.c.

◆ lan9250ReadMacReg()

uint32_t lan9250ReadMacReg ( NetInterface interface,
uint8_t  address 
)

Read host MAC CSR register.

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

Definition at line 792 of file lan9250_driver.c.

◆ lan9250ReadMmdReg()

uint16_t lan9250ReadMmdReg ( NetInterface interface,
uint8_t  devAddr,
uint16_t  regAddr 
)

Read MMD register.

Parameters
[in]interfaceUnderlying network interface
[in]devAddrDevice address
[in]regAddrRegister address
Returns
MMD register value

Definition at line 975 of file lan9250_driver.c.

◆ lan9250ReadPhyReg()

uint16_t lan9250ReadPhyReg ( NetInterface interface,
uint8_t  address 
)

Read PHY register.

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

Definition at line 887 of file lan9250_driver.c.

◆ lan9250ReadSysReg()

uint32_t lan9250ReadSysReg ( NetInterface interface,
uint16_t  address 
)

Read system CSR register.

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

Definition at line 698 of file lan9250_driver.c.

◆ lan9250ReceivePacket()

error_t lan9250ReceivePacket ( NetInterface interface)

Receive a packet.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 498 of file lan9250_driver.c.

◆ lan9250SendPacket()

error_t lan9250SendPacket ( 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 429 of file lan9250_driver.c.

◆ lan9250Tick()

void lan9250Tick ( NetInterface interface)

LAN9250 timer handler.

Parameters
[in]interfaceUnderlying network interface

Definition at line 205 of file lan9250_driver.c.

◆ lan9250UpdateMacAddrFilter()

error_t lan9250UpdateMacAddrFilter ( NetInterface interface)

Configure MAC address filtering.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 612 of file lan9250_driver.c.

◆ lan9250WriteFifo()

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

Write TX FIFO.

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

Definition at line 1003 of file lan9250_driver.c.

◆ lan9250WriteMacReg()

void lan9250WriteMacReg ( NetInterface interface,
uint8_t  address,
uint32_t  data 
)

Write host MAC CSR register.

Parameters
[in]interfaceUnderlying network interface
[in]addressHost MAC register address
[in]dataRegister value

Definition at line 755 of file lan9250_driver.c.

◆ lan9250WriteMmdReg()

void lan9250WriteMmdReg ( NetInterface interface,
uint8_t  devAddr,
uint16_t  regAddr,
uint16_t  data 
)

Write MMD register.

Parameters
[in]interfaceUnderlying network interface
[in]devAddrDevice address
[in]regAddrRegister address
[in]dataMMD register value

Definition at line 946 of file lan9250_driver.c.

◆ lan9250WritePhyReg()

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

Write PHY register.

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

Definition at line 849 of file lan9250_driver.c.

◆ lan9250WriteSysReg()

void lan9250WriteSysReg ( NetInterface interface,
uint16_t  address,
uint32_t  data 
)

Write system CSR register.

Parameters
[in]interfaceUnderlying network interface
[in]addressRegister address
[in]dataSystem register value

Definition at line 667 of file lan9250_driver.c.

Variable Documentation

◆ lan9250Driver

const NicDriver lan9250Driver
extern

LAN9250 driver.

Definition at line 44 of file lan9250_driver.c.