The MAC configuration registers establish the
operating mode of the MAC. These registers must be initialized before initializing
the DMA.
The following MAC Initialization operations can be performed after DMA initialization. If the MAC initialization is completed before the DMA is configured, enable the MAC receiver (last step in the following sequence) only after the DMA is active. Otherwise, received frames fill the Rx FIFO and overflow.
- Provide the MAC address registers: MAC_Address0_High and MAC_Address0_Low. If more than one MAC address is to be enabled program the MAC addresses appropriately.
- Program the following fields to set the appropriate filters for the incoming
frames in the MAC_Packet_Filter register:
- Receive All
- Promiscuous mode
- Hash or Perfect Filter
- Unicast, multicast, broadcast, and control frames
filter settings
- Program the following fields for proper flow control in the MAC_Q0_Tx_Flow_Ctrl register:
- Pause time and other Pause frame control bits
- Transmit Flow control bits
- Flow Control Busy
- Program the MAC_Interrupt_Enable register, as required, and if applicable, for your configuration.
- Program the appropriate fields in the MAC_Configuration register. For example,
Inter-packet gap while transmission and jabber disable.
- Set bit 0 and 1 in MAC_Configuration registers to start the MAC transmitter and receiver