linux/drivers/net/ethernet/broadcom/unimac.h
<<
>>
Prefs
   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