1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 #ifndef __UNIMAC_H 3 #define __UNIMAC_H 4 5 #define UMAC_HD_BKP_CTRL 0x004 6 #define HD_FC_EN (1 << 0) 7 #define HD_FC_BKOFF_OK (1 << 1) 8 #define IPG_CONFIG_RX_SHIFT 2 9 #define IPG_CONFIG_RX_MASK 0x1F 10 #define UMAC_CMD 0x008 11 #define CMD_TX_EN (1 << 0) 12 #define CMD_RX_EN (1 << 1) 13 #define CMD_SPEED_10 0 14 #define CMD_SPEED_100 1 15 #define CMD_SPEED_1000 2 16 #define CMD_SPEED_2500 3 17 #define CMD_SPEED_SHIFT 2 18 #define CMD_SPEED_MASK 3 19 #define CMD_PROMISC (1 << 4) 20 #define CMD_PAD_EN (1 << 5) 21 #define CMD_CRC_FWD (1 << 6) 22 #define CMD_PAUSE_FWD (1 << 7) 23 #define CMD_RX_PAUSE_IGNORE (1 << 8) 24 #define CMD_TX_ADDR_INS (1 << 9) 25 #define CMD_HD_EN (1 << 10) 26 #define CMD_SW_RESET_OLD (1 << 11) 27 #define CMD_SW_RESET (1 << 13) 28 #define CMD_LCL_LOOP_EN (1 << 15) 29 #define CMD_AUTO_CONFIG (1 << 22) 30 #define CMD_CNTL_FRM_EN (1 << 23) 31 #define CMD_NO_LEN_CHK (1 << 24) 32 #define CMD_RMT_LOOP_EN (1 << 25) 33 #define CMD_RX_ERR_DISC (1 << 26) 34 #define CMD_PRBL_EN (1 << 27) 35 #define CMD_TX_PAUSE_IGNORE (1 << 28) 36 #define CMD_TX_RX_EN (1 << 29) 37 #define CMD_RUNT_FILTER_DIS (1 << 30) 38 #define UMAC_MAC0 0x00c 39 #define UMAC_MAC1 0x010 40 #define UMAC_MAX_FRAME_LEN 0x014 41 #define UMAC_PAUSE_QUANTA 0x018 42 #define UMAC_MODE 0x044 43 #define MODE_LINK_STATUS (1 << 5) 44 #define UMAC_FRM_TAG0 0x048 /* outer tag */ 45 #define UMAC_FRM_TAG1 0x04c /* inner tag */ 46 #define UMAC_TX_IPG_LEN 0x05c 47 #define UMAC_EEE_CTRL 0x064 48 #define EN_LPI_RX_PAUSE (1 << 0) 49 #define EN_LPI_TX_PFC (1 << 1) 50 #define EN_LPI_TX_PAUSE (1 << 2) 51 #define EEE_EN (1 << 3) 52 #define RX_FIFO_CHECK (1 << 4) 53 #define EEE_TX_CLK_DIS (1 << 5) 54 #define DIS_EEE_10M (1 << 6) 55 #define LP_IDLE_PREDICTION_MODE (1 << 7) 56 #define UMAC_EEE_LPI_TIMER 0x068 57 #define UMAC_EEE_WAKE_TIMER 0x06C 58 #define UMAC_EEE_REF_COUNT 0x070 59 #define EEE_REFERENCE_COUNT_MASK 0xffff 60 #define UMAC_RX_IPG_INV 0x078 61 #define UMAC_MACSEC_PROG_TX_CRC 0x310 62 #define UMAC_MACSEC_CTRL 0x314 63 #define UMAC_PAUSE_CTRL 0x330 64 #define UMAC_TX_FLUSH 0x334 65 #define UMAC_RX_FIFO_STATUS 0x338 66 #define UMAC_TX_FIFO_STATUS 0x33c 67 68 #endif 69