ETHERNET SMART BRIDGE
Alberto Carboni, Alessio CiarciĆ , Jacopo Grecuccio, Lorenzo Zaia
MAC Registers

MAC registers addresses

#define MAC_CR   (uint16_t)(0x01)
 
#define MAC_CR_RXALL   (0x80000000)
 
#define MAC_CR_HBDIS   (0x10000000)
 
#define MAC_CR_RCVOWN   (0x00800000)
 
#define MAC_CR_LOOPBK   (0x00200000)
 
#define MAC_CR_FDPX   (0x00100000)
 
#define MAC_CR_MCPAS   (0x00080000)
 
#define MAC_CR_PRMS   (0x00040000)
 
#define MAC_CR_INVFILT   (0x00020000)
 
#define MAC_CR_PASSBAD   (0x00010000)
 
#define MAC_CR_HFILT   (0x00008000)
 
#define MAC_CR_HPFILT   (0x00002000)
 
#define MAC_CR_LCOLL   (0x00001000)
 
#define MAC_CR_BCAST   (0x00000800)
 
#define MAC_CR_DISRTY   (0x00000400)
 
#define MAC_CR_PADSTR   (0x00000100)
 
#define MAC_CR_BOLMT_MSK   (0x000000C0)
 
#define MAC_CR_BOLMT_10   (0x00000000)
 
#define MAC_CR_BOLMT_8   (0x00000040)
 
#define MAC_CR_BOLMT_4   (0x00000080)
 
#define MAC_CR_BOLMT_1   (0x000000C0)
 
#define MAC_CR_DFCHK   (0x00000020)
 
#define MAC_CR_TXEN   (0x00000008)
 
#define MAC_CR_RXEN   (0x00000004)
 
#define MAC_ADDRH   (uint16_t)(0x02)
 
#define MAC_ADDRH_MSK   (0x0000FFFF)
 
#define MAC_ADDRL   (uint16_t)(0x03)
 
#define MAC_ADDRL_MSK   (0xFFFFFFFF)
 
#define MAC_HASHH   (uint16_t)(0x04)
 
#define MAC_HASHH_MSK   (0xFFFFFFFF)
 
#define MAC_HASHL   (uint16_t)(0x05)
 
#define MAC_HASHL_MSK   (0xFFFFFFFF)
 
#define MAC_MIIACC   (uint16_t)(0x06)
 
#define MAC_MIIACC_MII_WRITE   (0x00000002)
 
#define MAC_MIIACC_MII_BUSY   (0x00000001)
 
#define MAC_MII_RD_CMD(Addr, Reg)
 
#define MAC_MII_WR_CMD(Addr, Reg)
 
#define MAC_MIIDATA   (uint16_t)(0x07)
 
#define MAC_MIIDATA_MSK   (0x0000FFFF)
 
#define MAC_MII_DATA(Data)   (Data & MAC_MIIDATA_MSK)
 
#define MAC_FLOW   (uint16_t)(0x08)
 
#define MAC_FLOW_FCPT_MSK   (0xFFFF0000)
 
#define MAC_FLOW_FCPASS   (0x00000004)
 
#define MAC_FLOW_FCEN   (0x00000002)
 
#define MAC_FLOW_FCBSY   (0x00000001)
 
#define MAC_VLAN1   (uint16_t)(0x09)
 
#define MAC_VLAN2   (uint16_t)(0x0A)
 
#define MAC_WUFF   (uint16_t)(0x0B)
 
#define MAC_WUCSR   (uint16_t)(0x0C)
 
#define MAC_WUCSR_GUE   (0x00000200)
 
#define MAC_WUCSR_WUFR   (0x00000040)
 
#define MAC_WUCSR_MPR   (0x00000020)
 
#define MAC_WUCSR_WUEN   (0x00000004)
 
#define MAC_WUCSR_MPEN   (0x00000002)
 
#define MAC_COE_CR   (uint16_t)(0x0D)
 
#define MAC_COE_CR_TXCOE_EN   (0x00010000)
 
#define MAC_COE_CR_RXCOE_MODE   (0x00000002)
 
#define MAC_COE_CR_RXCOE_EN   (0x00000001)
 

Detailed Description

Macro Definition Documentation

◆ MAC_MII_RD_CMD

#define MAC_MII_RD_CMD (   Addr,
  Reg 
)
Value:
(((Addr & 0x1f) << 11) | \
((Reg & 0x1f)) << 6)

◆ MAC_MII_WR_CMD

#define MAC_MII_WR_CMD (   Addr,
  Reg 
)
Value:
(((Addr & 0x1f) << 11) | \
((Reg & 0x1f) << 6) | \
MAC_MIIACC_MII_WRITE)