/* SPDX-License-Identifier: GPL-2.0-only */
#ifndef __BCM4908_ENET_H
#define __BCM4908_ENET_H
#define ENET_CONTROL 0 x000
#define ENET_MIB_CTRL 0 x004
#define ENET_MIB_CTRL_CLR_MIB 0 x00000001
#define ENET_RX_ERR_MASK 0 x008
#define ENET_MIB_MAX_PKT_SIZE 0 x00C
#define ENET_MIB_MAX_PKT_SIZE_VAL 0 x00003fff
#define ENET_DIAG_OUT 0 x01c
#define ENET_ENABLE_DROP_PKT 0 x020
#define ENET_IRQ_ENABLE 0 x024
#define ENET_IRQ_ENABLE_OVFL 0 x00000001
#define ENET_GMAC_STATUS 0 x028
#define ENET_GMAC_STATUS_ETH_SPEED_MASK 0 x00000003
#define ENET_GMAC_STATUS_ETH_SPEED_10 0 x00000000
#define ENET_GMAC_STATUS_ETH_SPEED_100 0 x00000001
#define ENET_GMAC_STATUS_ETH_SPEED_1000 0 x00000002
#define ENET_GMAC_STATUS_HD 0 x00000004
#define ENET_GMAC_STATUS_AUTO_CFG_EN 0 x00000008
#define ENET_GMAC_STATUS_LINK_UP 0 x00000010
#define ENET_IRQ_STATUS 0 x02c
#define ENET_IRQ_STATUS_OVFL 0 x00000001
#define ENET_OVERFLOW_COUNTER 0 x030
#define ENET_FLUSH 0 x034
#define ENET_FLUSH_RXFIFO_FLUSH 0 x00000001
#define ENET_FLUSH_TXFIFO_FLUSH 0 x00000002
#define ENET_RSV_SELECT 0 x038
#define ENET_BP_FORCE 0 x03c
#define ENET_BP_FORCE_FORCE 0 x00000001
#define ENET_DMA_RX_OK_TO_SEND_COUNT 0 x040
#define ENET_DMA_RX_OK_TO_SEND_COUNT_VAL 0 x0000000f
#define ENET_TX_CRC_CTRL 0 x044
#define ENET_MIB 0 x200
#define ENET_UNIMAC 0 x400
#define ENET_DMA 0 x800
#define ENET_DMA_CONTROLLER_CFG 0 x800
#define ENET_DMA_CTRL_CFG_MASTER_EN 0 x00000001
#define ENET_DMA_CTRL_CFG_FLOWC_CH1_EN 0 x00000002
#define ENET_DMA_CTRL_CFG_FLOWC_CH3_EN 0 x00000004
#define ENET_DMA_FLOWCTL_CH1_THRESH_LO 0 x804
#define ENET_DMA_FLOWCTL_CH1_THRESH_HI 0 x808
#define ENET_DMA_FLOWCTL_CH1_ALLOC 0 x80c
#define ENET_DMA_FLOWCTL_CH1_ALLOC_FORCE 0 x80000000
#define ENET_DMA_FLOWCTL_CH3_THRESH_LO 0 x810
#define ENET_DMA_FLOWCTL_CH3_THRESH_HI 0 x814
#define ENET_DMA_FLOWCTL_CH3_ALLOC 0 x818
#define ENET_DMA_FLOWCTL_CH5_THRESH_LO 0 x81C
#define ENET_DMA_FLOWCTL_CH5_THRESH_HI 0 x820
#define ENET_DMA_FLOWCTL_CH5_ALLOC 0 x824
#define ENET_DMA_FLOWCTL_CH7_THRESH_LO 0 x828
#define ENET_DMA_FLOWCTL_CH7_THRESH_HI 0 x82C
#define ENET_DMA_FLOWCTL_CH7_ALLOC 0 x830
#define ENET_DMA_CTRL_CHANNEL_RESET 0 x834
#define ENET_DMA_CTRL_CHANNEL_DEBUG 0 x838
#define ENET_DMA_CTRL_GLOBAL_INTERRUPT_STATUS 0 x840
#define ENET_DMA_CTRL_GLOBAL_INTERRUPT_MASK 0 x844
#define ENET_DMA_CH0_CFG 0 xa00 /* RX */
#define ENET_DMA_CH1_CFG 0 xa10 /* TX */
#define ENET_DMA_CH0_STATE_RAM 0 xc00 /* RX */
#define ENET_DMA_CH1_STATE_RAM 0 xc10 /* TX */
#define ENET_DMA_CH_CFG 0 x00 /* assorted configuration */
#define ENET_DMA_CH_CFG_ENABLE 0 x00000001 /* set to enable channel */
#define ENET_DMA_CH_CFG_PKT_HALT 0 x00000002 /* idle after an EOP flag is detected */
#define ENET_DMA_CH_CFG_BURST_HALT 0 x00000004 /* idle after finish current memory burst */
#define ENET_DMA_CH_CFG_INT_STAT 0 x04 /* interrupts control and status */
#define ENET_DMA_CH_CFG_INT_MASK 0 x08 /* interrupts mask */
#define ENET_DMA_CH_CFG_INT_BUFF_DONE 0 x00000001 /* buffer done */
#define ENET_DMA_CH_CFG_INT_DONE 0 x00000002 /* packet xfer complete */
#define ENET_DMA_CH_CFG_INT_NO_DESC 0 x00000004 /* no valid descriptors */
#define ENET_DMA_CH_CFG_INT_RX_ERROR 0 x00000008 /* rxdma detect client protocol error */
#define ENET_DMA_CH_CFG_MAX_BURST 0 x0c /* max burst length permitted */
#define ENET_DMA_CH_CFG_MAX_BURST_DESCSIZE_SEL 0 x00040000 /* DMA Descriptor Size Selection */
#define ENET_DMA_CH_CFG_SIZE 0 x10
#define ENET_DMA_CH_STATE_RAM_BASE_DESC_PTR 0 x00 /* descriptor ring start address */
#define ENET_DMA_CH_STATE_RAM_STATE_DATA 0 x04 /* state/bytes done/ring offset */
#define ENET_DMA_CH_STATE_RAM_DESC_LEN_STATUS 0 x08 /* buffer descriptor status and len */
#define ENET_DMA_CH_STATE_RAM_DESC_BASE_BUFPTR 0 x0c /* buffer descrpitor current processing */
#define ENET_DMA_CH_STATE_RAM_SIZE 0 x10
#define DMA_CTL_STATUS_APPEND_CRC 0 x00000100
#define DMA_CTL_STATUS_APPEND_BRCM_TAG 0 x00000200
#define DMA_CTL_STATUS_PRIO 0 x00000C00 /* Prio for Tx */
#define DMA_CTL_STATUS_WRAP 0 x00001000 /* */
#define DMA_CTL_STATUS_SOP 0 x00002000 /* first buffer in packet */
#define DMA_CTL_STATUS_EOP 0 x00004000 /* last buffer in packet */
#define DMA_CTL_STATUS_OWN 0 x00008000 /* cleared by DMA, set by SW */
#define DMA_CTL_LEN_DESC_BUFLENGTH 0 x0fff0000
#define DMA_CTL_LEN_DESC_BUFLENGTH_SHIFT 16
#define DMA_CTL_LEN_DESC_MULTICAST 0 x40000000
#define DMA_CTL_LEN_DESC_USEFPM 0 x80000000
#endif
Messung V0.5 in Prozent C=93 H=91 G=91
¤ Dauer der Verarbeitung: 0.2 Sekunden
¤
*© Formatika GbR, Deutschland