|
#define | ADIN1110_BUFF_LEN 1530 |
|
#define | ADIN1110_ETH_ALEN 6 |
|
#define | ADIN1110_ETHERTYPE_LEN 2 |
|
#define | ADIN1110_ETH_HDR_LEN 14 |
|
#define | ADIN1110_ADDR_FILT_LEN 16 |
|
#define | ADIN1110_FCS_LEN 4 |
|
#define | ADIN1110_MAC_LEN 6 |
|
#define | ADIN1110_ADDR_MASK NO_OS_GENMASK(12, 0) |
|
#define | ADIN1110_RD_FRAME_SIZE 7 |
|
#define | ADIN1110_WR_FRAME_SIZE 6 |
|
#define | ADIN1110_RD_HDR_SIZE 3 |
|
#define | ADIN1110_WR_HDR_SIZE 2 |
|
#define | ADIN1110_PHY_ID_REG 1 |
|
#define | ADIN1110_PHY_ID 0x0283BC91 |
|
#define | ADIN2111_PHY_ID 0x0283BCA1 |
|
#define | ADIN1110_PORTS 1 |
|
#define | ADIN2111_PORTS 2 |
|
#define | ADIN1110_CD_MASK NO_OS_BIT(15) |
|
#define | ADIN1110_RW_MASK NO_OS_BIT(13) |
|
#define | ADIN1110_SOFT_RST_REG 0x3C |
|
#define | ADIN1110_RESET_REG 0x03 |
|
#define | ADIN1110_SWRESET NO_OS_BIT(0) |
|
#define | ADIN1110_SWRESET_KEY1 0x4F1C |
|
#define | ADIN1110_SWRESET_KEY2 0xC1F4 |
|
#define | ADIN1110_SWRELEASE_KEY1 0x6F1A |
|
#define | ADIN1110_SWRELEASE_KEY2 0xA1F6 |
|
#define | ADIN1110_SPI_CD NO_OS_BIT(7) |
|
#define | ADIN1110_SPI_RW NO_OS_BIT(5) |
|
#define | ADIN1110_CONFIG1_REG 0x04 |
|
#define | ADIN1110_CONFIG1_SYNC NO_OS_BIT(15) |
|
#define | ADIN1110_CONFIG2_REG 0x06 |
|
#define | ADIN2111_P2_FWD_UNK2HOST_MASK NO_OS_BIT(12) |
|
#define | ADIN2111_PORT_CUT_THRU_EN NO_OS_BIT(11) |
|
#define | ADIN1110_CRC_APPEND NO_OS_BIT(5) |
|
#define | ADIN1110_FWD_UNK2HOST_MASK NO_OS_BIT(2) |
|
#define | ADIN1110_STATUS0_REG 0x08 |
|
#define | ADIN1110_STATUS0_TXPE_MASK NO_OS_BIT(0) |
|
#define | ADIN1110_RESETC_MASK NO_OS_BIT(6) |
|
#define | ADIN1110_STATUS1_REG 0x09 |
|
#define | ADIN1110_LINK_STATE_MASK NO_OS_BIT(0) |
|
#define | ADIN2111_P2_RX_RDY NO_OS_BIT(17) |
|
#define | ADIN1110_SPI_ERR NO_OS_BIT(10) |
|
#define | ADIN1110_RX_RDY NO_OS_BIT(4) |
|
#define | ADIN1110_IMASK1_REG 0x0D |
|
#define | ADIN2111_RX_RDY_IRQ NO_OS_BIT(17) |
|
#define | ADIN1110_SPI_ERR_IRQ NO_OS_BIT(10) |
|
#define | ADIN1110_RX_RDY_IRQ NO_OS_BIT(4) |
|
#define | ADIN1110_TX_RDY_IRQ NO_OS_BIT(3) |
|
#define | ADIN1110_MDIOACC(x) (0x20 + (x)) |
|
#define | ADIN1110_MDIO_TRDONE NO_OS_BIT(31) |
|
#define | ADIN1110_MDIO_TAERR NO_OS_BIT(30) |
|
#define | ADIN1110_MDIO_ST NO_OS_GENMASK(29, 28) |
|
#define | ADIN1110_MDIO_OP NO_OS_GENMASK(27, 26) |
|
#define | ADIN1110_MDIO_PRTAD NO_OS_GENMASK(25, 21) |
|
#define | ADIN1110_MDIO_DEVAD NO_OS_GENMASK(20, 16) |
|
#define | ADIN1110_MDIO_DATA NO_OS_GENMASK(15, 0) |
|
#define | ADIN1110_MMD_ACR_DEVAD_MASK NO_OS_GENMASK(4, 0) |
|
#define | ADIN1110_MMD_ACR_FUNCTION_MASK NO_OS_GENMASK(15, 14) |
|
#define | ADIN1110_MMD_ACCESS_MASK NO_OS_GENMASK(15, 0) |
|
#define | ADIN1110_MMD_ACCESS_CTRL_REG 0x0D |
|
#define | ADIN1110_MMD_ACCESS_REG 0x0E |
|
#define | ADIN1110_MI_SFT_PD_MASK NO_OS_BIT(11) |
|
#define | ADIN1110_MDIO_PHY_ID(x) ((x) + 1) |
|
#define | ADIN1110_MI_CONTROL_REG 0x0 |
|
#define | ADIN1110_TX_FSIZE_REG 0x30 |
|
#define | ADIN1110_TX_REG 0x31 |
|
#define | ADIN1110_TX_SPACE_REG 0x32 |
|
#define | ADIN1110_FIFO_CLR_REG 0x36 |
|
#define | ADIN1110_FIFO_CLR_RX_MASK NO_OS_BIT(0) |
|
#define | ADIN1110_FIFO_CLR_TX_MASK NO_OS_BIT(1) |
|
#define | ADIN1110_MAC_RST_STATUS_REG 0x3B |
|
#define | ADIN2111_MAC_ADDR_APPLY2PORT2 NO_OS_BIT(31) |
|
#define | ADIN1110_MAC_ADDR_APPLY2PORT NO_OS_BIT(30) |
|
#define | ADIN2111_MAC_ADDR_TO_OTHER_PORT NO_OS_BIT(17) |
|
#define | ADIN1110_MAC_ADDR_TO_HOST NO_OS_BIT(16) |
|
#define | ADIN1110_MAC_ADDR_FILT_UPR_REG(x) (0x50 + 2 * (x)) |
|
#define | ADIN1110_MAC_ADDR_FILT_LWR_REG(x) (0x51 + 2 * (x)) |
|
#define | ADIN1110_MAC_ADDR_UPR_MASK NO_OS_GENMASK(15, 0) |
|
#define | ADIN1110_MAC_ADDR_LWR_MASK NO_OS_GENMASK(31, 0) |
|
#define | ADIN1110_MAC_ADDR_MASK_UPR_REG 0x70 |
|
#define | ADIN1110_MAC_ADDR_MASK_LWR_REG 0x71 |
|
#define | ADIN1110_RX_FRM_CNT_REG 0xA0 |
|
#define | ADIN1110_RX_CRC_ERR_CNT_REG 0xA4 |
|
#define | ADIN1110_RX_ALGN_ERR_CNT_REG 0xA5 |
|
#define | ADIN1110_RX_LS_ERR_CNT_REG 0xA6 |
|
#define | ADIN1110_RX_PHY_ERR_CNT_REG 0xA7 |
|
#define | ADIN1110_TX_FRM_CNT_REG 0xA8 |
|
#define | ADIN1110_TX_BCAST_CNT_REG 0xA9 |
|
#define | ADIN1110_TX_MCAST_CNT_REG 0xAA |
|
#define | ADIN1110_TX_UCAST_CNT_REG 0xAB |
|
#define | ADIN1110_RX_BCAST_CNT_REG 0xA1 |
|
#define | ADIN1110_RX_MCAST_CNT_REG 0xA2 |
|
#define | ADIN1110_RX_UCAST_CNT_REG 0xA3 |
|
#define | ADIN1110_RX_DROP_FULL_CNT_REG 0xAC |
|
#define | ADIN1110_RX_DROP_FILT_CNT_REG 0xAD |
|
#define | ADIN1110_RX_FSIZE_REG 0x90 |
|
#define | ADIN1110_RX_REG 0x91 |
|
#define | ADIN2111_RX_P2_FSIZE_REG 0xC0 |
|
#define | ADIN2111_RX_P2_REG 0xC1 |
|
#define | ADIN1110_CLEAR_STATUS0 0xFFF |
|
#define | ADIN1110_MDIO_OP_ADDR 0x0 |
|
#define | ADIN1110_MDIO_OP_WR 0x1 |
|
#define | ADIN1110_MDIO_OP_RD 0x3 |
|
#define | ADIN1110_WR_HEADER_LEN 2 |
|
#define | ADIN1110_FRAME_HEADER_LEN 2 |
|
#define | ADIN1110_RD_HEADER_LEN 3 |
|
#define | ADIN1110_REG_LEN 4 |
|
#define | ADIN1110_CRC_LEN 1 |
|
#define | ADIN1110_FEC_LEN 4 |
|
#define | ADIN_MAC_MULTICAST_ADDR_SLOT 0 |
|
#define | ADIN_MAC_BROADCAST_ADDR_SLOT 1 |
|
#define | ADIN_MAC_P1_ADDR_SLOT 2 |
|
#define | ADIN_MAC_P2_ADDR_SLOT 3 |
|
#define | ADIN_MAC_FDB_ADDR_SLOT 4 |
|
|
int | adin1110_sw_reset (struct adin1110_desc *) |
| Reset both the MAC and PHY. More...
|
|
int | adin1110_reg_update (struct adin1110_desc *, uint16_t, uint32_t, uint32_t) |
| Update a register's value based on a mask. More...
|
|
int | adin1110_reg_write (struct adin1110_desc *, uint16_t, uint32_t) |
| Write a register's value. More...
|
|
int | adin1110_reg_read (struct adin1110_desc *, uint16_t, uint32_t *) |
| Read a register's value. More...
|
|
int | adin1110_write_fifo (struct adin1110_desc *, uint32_t, struct adin1110_eth_buff *) |
| Write a frame to the TX FIFO. More...
|
|
int | adin1110_read_fifo (struct adin1110_desc *, uint32_t, struct adin1110_eth_buff *) |
| Read a frame from the RX FIFO. More...
|
|
int | adin1110_mdio_write (struct adin1110_desc *, uint32_t, uint32_t, uint16_t) |
| Write a PHY register using clause 22. More...
|
|
int | adin1110_mdio_read (struct adin1110_desc *, uint32_t, uint32_t, uint16_t *) |
| Read a PHY register using clause 22. More...
|
|
int | adin1110_mdio_write_c45 (struct adin1110_desc *, uint32_t, uint32_t, uint32_t, uint16_t) |
| Write a PHY register using clause 45. More...
|
|
int | adin1110_mdio_read_c45 (struct adin1110_desc *, uint32_t, uint32_t, uint16_t, uint16_t *) |
| Read a PHY register using clause 45. More...
|
|
int | adin1110_link_state (struct adin1110_desc *, uint32_t *) |
| Reset both the MAC and PHY. More...
|
|
int | adin1110_set_promisc (struct adin1110_desc *, uint32_t, bool) |
| Set a port in promiscuous mode. All MAC filters are dropped. More...
|
|
int | adin1110_set_mac_addr (struct adin1110_desc *desc, uint8_t mac_address[ADIN1110_ETH_ALEN]) |
| Set a MAC address destination filter, frames who's DA doesn't match are dropped. More...
|
|
int | adin1110_broadcast_filter (struct adin1110_desc *, bool) |
| Set/clear a broadcast filter. By enabling this, broadcast frames will be forwarded to the host. More...
|
|
int | adin1110_mac_reset (struct adin1110_desc *) |
| Reset the MAC device. More...
|
|
int | adin1110_phy_reset (struct adin1110_desc *) |
| Reset the PHY device. More...
|
|
int | adin1110_init (struct adin1110_desc **, struct adin1110_init_param *) |
| Initialize the device. More...
|
|
int | adin1110_remove (struct adin1110_desc *) |
| Free a device descriptor. More...
|
|