FreeBSD kernel usb device Code
if_axgereg.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  axge_frame_txhdr
 
struct  axge_frame_rxhdr
 
struct  axge_softc
 

Macros

#define AXGE_ACCESS_MAC   0x01
 
#define AXGE_ACCESS_PHY   0x02
 
#define AXGE_ACCESS_WAKEUP   0x03
 
#define AXGE_ACCESS_EEPROM   0x04
 
#define AXGE_ACCESS_EFUSE   0x05
 
#define AXGE_RELOAD_EEPROM_EFUSE   0x06
 
#define AXGE_WRITE_EFUSE_EN   0x09
 
#define AXGE_WRITE_EFUSE_DIS   0x0A
 
#define AXGE_ACCESS_MFAB   0x10
 
#define AXGE_PLSR   0x02
 
#define PLSR_USB_FS   0x01
 
#define PLSR_USB_HS   0x02
 
#define PLSR_USB_SS   0x04
 
#define AXGE_EAR   0x07
 
#define AXGE_EDLR   0x08
 
#define AXGE_EDHR   0x09
 
#define AXGE_ECR   0x0a
 
#define AXGE_RCR   0x0b
 
#define RCR_STOP   0x0000
 
#define RCR_PROMISC   0x0001
 
#define RCR_ACPT_ALL_MCAST   0x0002
 
#define RCR_AUTOPAD_BNDRY   0x0004
 
#define RCR_ACPT_BCAST   0x0008
 
#define RCR_ACPT_MCAST   0x0010
 
#define RCR_ACPT_PHY_MCAST   0x0020
 
#define RCR_START   0x0080
 
#define RCR_DROP_CRCERR   0x0100
 
#define RCR_IPE   0x0200
 
#define RCR_TX_CRC_PAD   0x0400
 
#define AXGE_NIDR   0x10
 
#define AXGE_MFA   0x16
 
#define AXGE_MSR   0x22
 
#define MSR_GM   0x0001
 
#define MSR_FD   0x0002
 
#define MSR_EN_125MHZ   0x0008
 
#define MSR_RFC   0x0010
 
#define MSR_TFC   0x0020
 
#define MSR_RE   0x0100
 
#define MSR_PS   0x0200
 
#define AXGE_MMSR   0x24
 
#define MMSR_RWLC   0x02
 
#define MMSR_RWMP   0x04
 
#define MMSR_RWWF   0x08
 
#define MMSR_RW_FLAG   0x10
 
#define MMSR_PME_POL   0x20
 
#define MMSR_PME_TYPE   0x40
 
#define MMSR_PME_IND   0x80
 
#define AXGE_GPIOCR   0x25
 
#define AXGE_EPPRCR   0x26
 
#define EPPRCR_BZ   0x0010
 
#define EPPRCR_IPRL   0x0020
 
#define EPPRCR_AUTODETACH   0x1000
 
#define AXGE_RX_BULKIN_QCTRL   0x2e
 
#define AXGE_CLK_SELECT   0x33
 
#define AXGE_CLK_SELECT_BCS   0x01
 
#define AXGE_CLK_SELECT_ACS   0x02
 
#define AXGE_CLK_SELECT_ACSREQ   0x10
 
#define AXGE_CLK_SELECT_ULR   0x08
 
#define AXGE_CRCR   0x34
 
#define CRCR_IP   0x01
 
#define CRCR_TCP   0x02
 
#define CRCR_UDP   0x04
 
#define CRCR_ICMP   0x08
 
#define CRCR_IGMP   0x10
 
#define CRCR_TCPV6   0x20
 
#define CRCR_UDPV6   0x40
 
#define CRCR_ICMPV6   0x80
 
#define AXGE_CTCR   0x35
 
#define CTCR_IP   0x01
 
#define CTCR_TCP   0x02
 
#define CTCR_UDP   0x04
 
#define CTCR_ICMP   0x08
 
#define CTCR_IGMP   0x10
 
#define CTCR_TCPV6   0x20
 
#define CTCR_UDPV6   0x40
 
#define CTCR_ICMPV6   0x80
 
#define AXGE_PWLHR   0x54
 
#define AXGE_PWLLR   0x55
 
#define AXGE_CONFIG_IDX   0 /* config number 1 */
 
#define AXGE_IFACE_IDX   0
 
#define GET_MII(sc)   uether_getmii(&(sc)->sc_ue)
 
#define AXGE_N_FRAMES   16
 
#define AXGE_TXLEN_MASK   0x0001FFFF
 
#define AXGE_VLAN_INSERT   0x20000000
 
#define AXGE_CSUM_DISABLE   0x80000000
 
#define AXGE_MSS_MASK   0x00003FFF
 
#define AXGE_PADDING   0x80008000
 
#define AXGE_VLAN_TAG_MASK   0xFFFF0000
 
#define AXGE_TXBYTES(x)   ((x) & AXGE_TXLEN_MASK)
 
#define AXGE_PHY_ADDR   3
 
#define AXGE_RX_L4_CSUM_ERR   0x00000001
 
#define AXGE_RX_L3_CSUM_ERR   0x00000002
 
#define AXGE_RX_L4_TYPE_UDP   0x00000004
 
#define AXGE_RX_L4_TYPE_ICMP   0x00000008
 
#define AXGE_RX_L4_TYPE_IGMP   0x0000000C
 
#define AXGE_RX_L4_TYPE_TCP   0x00000010
 
#define AXGE_RX_L4_TYPE_MASK   0x0000001C
 
#define AXGE_RX_L3_TYPE_IPV4   0x00000020
 
#define AXGE_RX_L3_TYPE_IPV6   0x00000040
 
#define AXGE_RX_L3_TYPE_MASK   0x00000060
 
#define AXGE_RX_VLAN_IND_MASK   0x00000700
 
#define AXGE_RX_GOOD_PKT   0x00000800
 
#define AXGE_RX_VLAN_PRI_MASK   0x00007000
 
#define AXGE_RX_MBCAST   0x00008000
 
#define AXGE_RX_LEN_MASK   0x1FFF0000
 
#define AXGE_RX_CRC_ERR   0x20000000
 
#define AXGE_RX_MII_ERR   0x40000000
 
#define AXGE_RX_DROP_PKT   0x80000000
 
#define AXGE_RX_LEN_SHIFT   16
 
#define AXGE_RXBYTES(x)   (((x) & AXGE_RX_LEN_MASK) >> AXGE_RX_LEN_SHIFT)
 
#define AXGE_RX_ERR(x)    ((x) & (AXGE_RX_CRC_ERR | AXGE_RX_MII_ERR | AXGE_RX_DROP_PKT))
 
#define AXGE_FLAG_LINK   0x0001 /* got a link */
 
#define AXGE_LOCK(_sc)   mtx_lock(&(_sc)->sc_mtx)
 
#define AXGE_UNLOCK(_sc)   mtx_unlock(&(_sc)->sc_mtx)
 
#define AXGE_LOCK_ASSERT(_sc, t)   mtx_assert(&(_sc)->sc_mtx, t)
 

Enumerations

enum  { AXGE_BULK_DT_WR , AXGE_BULK_DT_RD , AXGE_N_TRANSFER }
 

Variables

struct axge_frame_txhdr __packed
 

Macro Definition Documentation

◆ AXGE_ACCESS_EEPROM

#define AXGE_ACCESS_EEPROM   0x04

Definition at line 34 of file if_axgereg.h.

◆ AXGE_ACCESS_EFUSE

#define AXGE_ACCESS_EFUSE   0x05

Definition at line 35 of file if_axgereg.h.

◆ AXGE_ACCESS_MAC

#define AXGE_ACCESS_MAC   0x01

Definition at line 31 of file if_axgereg.h.

◆ AXGE_ACCESS_MFAB

#define AXGE_ACCESS_MFAB   0x10

Definition at line 39 of file if_axgereg.h.

◆ AXGE_ACCESS_PHY

#define AXGE_ACCESS_PHY   0x02

Definition at line 32 of file if_axgereg.h.

◆ AXGE_ACCESS_WAKEUP

#define AXGE_ACCESS_WAKEUP   0x03

Definition at line 33 of file if_axgereg.h.

◆ AXGE_CLK_SELECT

#define AXGE_CLK_SELECT   0x33

Definition at line 110 of file if_axgereg.h.

◆ AXGE_CLK_SELECT_ACS

#define AXGE_CLK_SELECT_ACS   0x02

Definition at line 112 of file if_axgereg.h.

◆ AXGE_CLK_SELECT_ACSREQ

#define AXGE_CLK_SELECT_ACSREQ   0x10

Definition at line 113 of file if_axgereg.h.

◆ AXGE_CLK_SELECT_BCS

#define AXGE_CLK_SELECT_BCS   0x01

Definition at line 111 of file if_axgereg.h.

◆ AXGE_CLK_SELECT_ULR

#define AXGE_CLK_SELECT_ULR   0x08

Definition at line 114 of file if_axgereg.h.

◆ AXGE_CONFIG_IDX

#define AXGE_CONFIG_IDX   0 /* config number 1 */

Definition at line 144 of file if_axgereg.h.

◆ AXGE_CRCR

#define AXGE_CRCR   0x34

Definition at line 117 of file if_axgereg.h.

◆ AXGE_CSUM_DISABLE

#define AXGE_CSUM_DISABLE   0x80000000

Definition at line 162 of file if_axgereg.h.

◆ AXGE_CTCR

#define AXGE_CTCR   0x35

Definition at line 128 of file if_axgereg.h.

◆ AXGE_EAR

#define AXGE_EAR   0x07

Definition at line 48 of file if_axgereg.h.

◆ AXGE_ECR

#define AXGE_ECR   0x0a

Definition at line 57 of file if_axgereg.h.

◆ AXGE_EDHR

#define AXGE_EDHR   0x09

Definition at line 54 of file if_axgereg.h.

◆ AXGE_EDLR

#define AXGE_EDLR   0x08

Definition at line 51 of file if_axgereg.h.

◆ AXGE_EPPRCR

#define AXGE_EPPRCR   0x26

Definition at line 103 of file if_axgereg.h.

◆ AXGE_FLAG_LINK

#define AXGE_FLAG_LINK   0x0001 /* got a link */

Definition at line 206 of file if_axgereg.h.

◆ AXGE_GPIOCR

#define AXGE_GPIOCR   0x25

Definition at line 100 of file if_axgereg.h.

◆ AXGE_IFACE_IDX

#define AXGE_IFACE_IDX   0

Definition at line 145 of file if_axgereg.h.

◆ AXGE_LOCK

#define AXGE_LOCK (   _sc)    mtx_lock(&(_sc)->sc_mtx)

Definition at line 209 of file if_axgereg.h.

◆ AXGE_LOCK_ASSERT

#define AXGE_LOCK_ASSERT (   _sc,
 
)    mtx_assert(&(_sc)->sc_mtx, t)

Definition at line 211 of file if_axgereg.h.

◆ AXGE_MFA

#define AXGE_MFA   0x16

Definition at line 77 of file if_axgereg.h.

◆ AXGE_MMSR

#define AXGE_MMSR   0x24

Definition at line 90 of file if_axgereg.h.

◆ AXGE_MSR

#define AXGE_MSR   0x22

Definition at line 80 of file if_axgereg.h.

◆ AXGE_MSS_MASK

#define AXGE_MSS_MASK   0x00003FFF

Definition at line 164 of file if_axgereg.h.

◆ AXGE_N_FRAMES

#define AXGE_N_FRAMES   16

Definition at line 156 of file if_axgereg.h.

◆ AXGE_NIDR

#define AXGE_NIDR   0x10

Definition at line 74 of file if_axgereg.h.

◆ AXGE_PADDING

#define AXGE_PADDING   0x80008000

Definition at line 165 of file if_axgereg.h.

◆ AXGE_PHY_ADDR

#define AXGE_PHY_ADDR   3

Definition at line 171 of file if_axgereg.h.

◆ AXGE_PLSR

#define AXGE_PLSR   0x02

Definition at line 42 of file if_axgereg.h.

◆ AXGE_PWLHR

#define AXGE_PWLHR   0x54

Definition at line 139 of file if_axgereg.h.

◆ AXGE_PWLLR

#define AXGE_PWLLR   0x55

Definition at line 142 of file if_axgereg.h.

◆ AXGE_RCR

#define AXGE_RCR   0x0b

Definition at line 60 of file if_axgereg.h.

◆ AXGE_RELOAD_EEPROM_EFUSE

#define AXGE_RELOAD_EEPROM_EFUSE   0x06

Definition at line 36 of file if_axgereg.h.

◆ AXGE_RX_BULKIN_QCTRL

#define AXGE_RX_BULKIN_QCTRL   0x2e

Definition at line 108 of file if_axgereg.h.

◆ AXGE_RX_CRC_ERR

#define AXGE_RX_CRC_ERR   0x20000000

Definition at line 190 of file if_axgereg.h.

◆ AXGE_RX_DROP_PKT

#define AXGE_RX_DROP_PKT   0x80000000

Definition at line 192 of file if_axgereg.h.

◆ AXGE_RX_ERR

#define AXGE_RX_ERR (   x)     ((x) & (AXGE_RX_CRC_ERR | AXGE_RX_MII_ERR | AXGE_RX_DROP_PKT))

Definition at line 197 of file if_axgereg.h.

◆ AXGE_RX_GOOD_PKT

#define AXGE_RX_GOOD_PKT   0x00000800

Definition at line 186 of file if_axgereg.h.

◆ AXGE_RX_L3_CSUM_ERR

#define AXGE_RX_L3_CSUM_ERR   0x00000002

Definition at line 176 of file if_axgereg.h.

◆ AXGE_RX_L3_TYPE_IPV4

#define AXGE_RX_L3_TYPE_IPV4   0x00000020

Definition at line 182 of file if_axgereg.h.

◆ AXGE_RX_L3_TYPE_IPV6

#define AXGE_RX_L3_TYPE_IPV6   0x00000040

Definition at line 183 of file if_axgereg.h.

◆ AXGE_RX_L3_TYPE_MASK

#define AXGE_RX_L3_TYPE_MASK   0x00000060

Definition at line 184 of file if_axgereg.h.

◆ AXGE_RX_L4_CSUM_ERR

#define AXGE_RX_L4_CSUM_ERR   0x00000001

Definition at line 175 of file if_axgereg.h.

◆ AXGE_RX_L4_TYPE_ICMP

#define AXGE_RX_L4_TYPE_ICMP   0x00000008

Definition at line 178 of file if_axgereg.h.

◆ AXGE_RX_L4_TYPE_IGMP

#define AXGE_RX_L4_TYPE_IGMP   0x0000000C

Definition at line 179 of file if_axgereg.h.

◆ AXGE_RX_L4_TYPE_MASK

#define AXGE_RX_L4_TYPE_MASK   0x0000001C

Definition at line 181 of file if_axgereg.h.

◆ AXGE_RX_L4_TYPE_TCP

#define AXGE_RX_L4_TYPE_TCP   0x00000010

Definition at line 180 of file if_axgereg.h.

◆ AXGE_RX_L4_TYPE_UDP

#define AXGE_RX_L4_TYPE_UDP   0x00000004

Definition at line 177 of file if_axgereg.h.

◆ AXGE_RX_LEN_MASK

#define AXGE_RX_LEN_MASK   0x1FFF0000

Definition at line 189 of file if_axgereg.h.

◆ AXGE_RX_LEN_SHIFT

#define AXGE_RX_LEN_SHIFT   16

Definition at line 193 of file if_axgereg.h.

◆ AXGE_RX_MBCAST

#define AXGE_RX_MBCAST   0x00008000

Definition at line 188 of file if_axgereg.h.

◆ AXGE_RX_MII_ERR

#define AXGE_RX_MII_ERR   0x40000000

Definition at line 191 of file if_axgereg.h.

◆ AXGE_RX_VLAN_IND_MASK

#define AXGE_RX_VLAN_IND_MASK   0x00000700

Definition at line 185 of file if_axgereg.h.

◆ AXGE_RX_VLAN_PRI_MASK

#define AXGE_RX_VLAN_PRI_MASK   0x00007000

Definition at line 187 of file if_axgereg.h.

◆ AXGE_RXBYTES

#define AXGE_RXBYTES (   x)    (((x) & AXGE_RX_LEN_MASK) >> AXGE_RX_LEN_SHIFT)

Definition at line 196 of file if_axgereg.h.

◆ AXGE_TXBYTES

#define AXGE_TXBYTES (   x)    ((x) & AXGE_TXLEN_MASK)

Definition at line 169 of file if_axgereg.h.

◆ AXGE_TXLEN_MASK

#define AXGE_TXLEN_MASK   0x0001FFFF

Definition at line 160 of file if_axgereg.h.

◆ AXGE_UNLOCK

#define AXGE_UNLOCK (   _sc)    mtx_unlock(&(_sc)->sc_mtx)

Definition at line 210 of file if_axgereg.h.

◆ AXGE_VLAN_INSERT

#define AXGE_VLAN_INSERT   0x20000000

Definition at line 161 of file if_axgereg.h.

◆ AXGE_VLAN_TAG_MASK

#define AXGE_VLAN_TAG_MASK   0xFFFF0000

Definition at line 166 of file if_axgereg.h.

◆ AXGE_WRITE_EFUSE_DIS

#define AXGE_WRITE_EFUSE_DIS   0x0A

Definition at line 38 of file if_axgereg.h.

◆ AXGE_WRITE_EFUSE_EN

#define AXGE_WRITE_EFUSE_EN   0x09

Definition at line 37 of file if_axgereg.h.

◆ CRCR_ICMP

#define CRCR_ICMP   0x08

Definition at line 121 of file if_axgereg.h.

◆ CRCR_ICMPV6

#define CRCR_ICMPV6   0x80

Definition at line 125 of file if_axgereg.h.

◆ CRCR_IGMP

#define CRCR_IGMP   0x10

Definition at line 122 of file if_axgereg.h.

◆ CRCR_IP

#define CRCR_IP   0x01

Definition at line 118 of file if_axgereg.h.

◆ CRCR_TCP

#define CRCR_TCP   0x02

Definition at line 119 of file if_axgereg.h.

◆ CRCR_TCPV6

#define CRCR_TCPV6   0x20

Definition at line 123 of file if_axgereg.h.

◆ CRCR_UDP

#define CRCR_UDP   0x04

Definition at line 120 of file if_axgereg.h.

◆ CRCR_UDPV6

#define CRCR_UDPV6   0x40

Definition at line 124 of file if_axgereg.h.

◆ CTCR_ICMP

#define CTCR_ICMP   0x08

Definition at line 132 of file if_axgereg.h.

◆ CTCR_ICMPV6

#define CTCR_ICMPV6   0x80

Definition at line 136 of file if_axgereg.h.

◆ CTCR_IGMP

#define CTCR_IGMP   0x10

Definition at line 133 of file if_axgereg.h.

◆ CTCR_IP

#define CTCR_IP   0x01

Definition at line 129 of file if_axgereg.h.

◆ CTCR_TCP

#define CTCR_TCP   0x02

Definition at line 130 of file if_axgereg.h.

◆ CTCR_TCPV6

#define CTCR_TCPV6   0x20

Definition at line 134 of file if_axgereg.h.

◆ CTCR_UDP

#define CTCR_UDP   0x04

Definition at line 131 of file if_axgereg.h.

◆ CTCR_UDPV6

#define CTCR_UDPV6   0x40

Definition at line 135 of file if_axgereg.h.

◆ EPPRCR_AUTODETACH

#define EPPRCR_AUTODETACH   0x1000

Definition at line 106 of file if_axgereg.h.

◆ EPPRCR_BZ

#define EPPRCR_BZ   0x0010

Definition at line 104 of file if_axgereg.h.

◆ EPPRCR_IPRL

#define EPPRCR_IPRL   0x0020

Definition at line 105 of file if_axgereg.h.

◆ GET_MII

#define GET_MII (   sc)    uether_getmii(&(sc)->sc_ue)

Definition at line 147 of file if_axgereg.h.

◆ MMSR_PME_IND

#define MMSR_PME_IND   0x80

Definition at line 97 of file if_axgereg.h.

◆ MMSR_PME_POL

#define MMSR_PME_POL   0x20

Definition at line 95 of file if_axgereg.h.

◆ MMSR_PME_TYPE

#define MMSR_PME_TYPE   0x40

Definition at line 96 of file if_axgereg.h.

◆ MMSR_RW_FLAG

#define MMSR_RW_FLAG   0x10

Definition at line 94 of file if_axgereg.h.

◆ MMSR_RWLC

#define MMSR_RWLC   0x02

Definition at line 91 of file if_axgereg.h.

◆ MMSR_RWMP

#define MMSR_RWMP   0x04

Definition at line 92 of file if_axgereg.h.

◆ MMSR_RWWF

#define MMSR_RWWF   0x08

Definition at line 93 of file if_axgereg.h.

◆ MSR_EN_125MHZ

#define MSR_EN_125MHZ   0x0008

Definition at line 83 of file if_axgereg.h.

◆ MSR_FD

#define MSR_FD   0x0002

Definition at line 82 of file if_axgereg.h.

◆ MSR_GM

#define MSR_GM   0x0001

Definition at line 81 of file if_axgereg.h.

◆ MSR_PS

#define MSR_PS   0x0200

Definition at line 87 of file if_axgereg.h.

◆ MSR_RE

#define MSR_RE   0x0100

Definition at line 86 of file if_axgereg.h.

◆ MSR_RFC

#define MSR_RFC   0x0010

Definition at line 84 of file if_axgereg.h.

◆ MSR_TFC

#define MSR_TFC   0x0020

Definition at line 85 of file if_axgereg.h.

◆ PLSR_USB_FS

#define PLSR_USB_FS   0x01

Definition at line 43 of file if_axgereg.h.

◆ PLSR_USB_HS

#define PLSR_USB_HS   0x02

Definition at line 44 of file if_axgereg.h.

◆ PLSR_USB_SS

#define PLSR_USB_SS   0x04

Definition at line 45 of file if_axgereg.h.

◆ RCR_ACPT_ALL_MCAST

#define RCR_ACPT_ALL_MCAST   0x0002

Definition at line 63 of file if_axgereg.h.

◆ RCR_ACPT_BCAST

#define RCR_ACPT_BCAST   0x0008

Definition at line 65 of file if_axgereg.h.

◆ RCR_ACPT_MCAST

#define RCR_ACPT_MCAST   0x0010

Definition at line 66 of file if_axgereg.h.

◆ RCR_ACPT_PHY_MCAST

#define RCR_ACPT_PHY_MCAST   0x0020

Definition at line 67 of file if_axgereg.h.

◆ RCR_AUTOPAD_BNDRY

#define RCR_AUTOPAD_BNDRY   0x0004

Definition at line 64 of file if_axgereg.h.

◆ RCR_DROP_CRCERR

#define RCR_DROP_CRCERR   0x0100

Definition at line 69 of file if_axgereg.h.

◆ RCR_IPE

#define RCR_IPE   0x0200

Definition at line 70 of file if_axgereg.h.

◆ RCR_PROMISC

#define RCR_PROMISC   0x0001

Definition at line 62 of file if_axgereg.h.

◆ RCR_START

#define RCR_START   0x0080

Definition at line 68 of file if_axgereg.h.

◆ RCR_STOP

#define RCR_STOP   0x0000

Definition at line 61 of file if_axgereg.h.

◆ RCR_TX_CRC_PAD

#define RCR_TX_CRC_PAD   0x0400

Definition at line 71 of file if_axgereg.h.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
AXGE_BULK_DT_WR 
AXGE_BULK_DT_RD 
AXGE_N_TRANSFER 

Definition at line 150 of file if_axgereg.h.

Variable Documentation

◆ __packed