To fill the data of 1000 packets with each packet of 1500 bytes. Transmit all the 1000 packets in a loop by configuring all the required registers and setting the R-bit (Ready) in the TXBD. After this receive all the 1000 packets using the RXBD status.
We are using MPC8270. The IMM_BASE_ADDR is defined as 0xF0000000. The issue is with respect to the Buffer Descriptor configuration. We have used the DPRAM location for configuring the Buffer Descriptors with the starting addresses as 0xF00080B0 for Receive Buffer Descriptors.
And for the Transmit Buffer Descriptors, the address is calculated as ((0xF00080B0 + (BUF_DES_SIZE*NUM_SCC_TXBD))).
BUF_DES_SIZE = 8
NUM_SCC_TXBD = 50. Limited to 50, because if we did more than 50, the system is hanging while trying to send and receive data.
Now how can we achieve the 1000 packet transmission and reception. The questions I have are:
- Is it practically possible to send 1000 packets and then receive 1000 packets? (Hope it is because, I was able to do this for 50 packets).
- Does the Address for the TXBD and RXBD need to be changed? If so, what address can be used? We changed multiple addresses but couldn’t get the work done.
- If the addresses are changed for TXBD and RXBD, do we have to change the IMM Base Address as well? Also do we have to change any other addresses corresponding to this?