1.Clear the network control register. Write 0x0 to the gem.network_control register.
2.Clear the statistics registers. Write a 1 to the gem.network_control [clear_all_stats_regs].
3.Clear the status registers. Write a 1 to the status registers. gem.receive_status = 0x0F and gem.transmit_status = 0xFF.
4.Disable all interrupts. Write 0x7FF_FEFF to the gem. int_disable register.
5.Clear the buffer queues. Write 0x0 to the gem.receive_q{ , 1}_ptr and
gem.transmit_q{ , 1}_ptr registers.
Note: The GEM controller has two receive-buffer queue pointer registers (GEM{0:3}.receive_q_ptr, GEM{0:3}.receive_q1_ptr) and two transmit-buffer queue pointer registers (GEM{0:3}.transmit_q_ptr, GEM{0:3}.transmit_q1_ptr). Any combination of transmit-buffer and receive-buffer queues can be used, but it is important to ensure that the unused queues are tied off properly with a dummy or terminate descriptor, otherwise it does not work.