IBM PowerPC 405GP User Manual page 571

Embedded processor
Table of Contents

Advertisement

The COM MAC channel may request that MAL process the next buffer descriptor and the same packet
handling process will be initiated. The first descriptor in the next packet follows the descriptor marked
"last" in the previous packet.
20.4.1 Wrapping the BO Table for Transmit
When MAL processes a buffer descriptor (while handling. a packet for a COMMAC channel), it may
encounter a Wrap indication within a buffer descriptor control field. This causes MAL to go back to the
beginning of the buffer descriptor table for the next descriptor table entry. (This will also happen when
MAL reaches the maximum number of descriptors.) The wrapping of the BD table, like all other SD
table handling processes, is transparent to the COMMAC.
20.4.2 Continuous Mode for Transmit
After transmitting the data pOinted to by a buffer descriptor, MAL clears the Ready bit in the buffer
descriptor control/status field. In this way, MAL will not process the same buffer descriptor again until
software has filled the buffer with valid data and set the Ready bit in the descriptor again. While the
Continuous Mode (CM) bit is set in the status/control field, MAL will not clear the Ready bit. The
Continuous Mode allows re-transmission of the current data buffer without software intervention. This
mode is generally used by protocols in which frequent re-transmission is an integral part of the
protocol itself. In such cases, re-transmission can be performed without software intervention.
20.4.3 Back Up a Packet for Transmit
MAL is capable of re-transmitting the last packet ("back up a packet") following a request from a
COM MAC. If re-transmission is requested by the COMMAC, it must be assured that all the buffers of
the re-transmitted packet are available and were not re-processed by the device
driver~
In regular
operation, MAL resets the Ready bit of each buffer descriptor when finished processing the
descriptor. When MAL is requested by the COMMAC to retransmit the last packet (the Back Up a
Packet bit in the COM MAC TX channel Status Halfword is set), MAL doesn't reset the READY bit in
the last processed buffer descriptor, activate the end of packet interrupt, or write the status back to the
descriptor in the memory. MAL also doesn't consider this as an end of packet event.
On the next service request from the same channel, MAL will start transmitting the packet again,
starting from the first descriptor.
Note: The last processed buffer descriptor can be either the last descriptor of the packet or, in case
of early packet termination, the buff.er descriptor that was being processed when the transmit
channel initiated the early packet termination. MAL will retransmit the backed-up packet
regardless of the Ready bit value.
During retransmission of a backed-up packet, MAL may use descriptors on which the Ready bit was
already cleared. Therefore, the device driver should not reuse descriptors before the Ready bit of the
last descriptor is cleared.
Note: In the case of descriptor not valid, which is the first one in TX channel, COMMAC is not allowed
to return a status that contains a Back-Up a Packet request.
20-10
PPC405GP User's Manual
Preliminary

Advertisement

Table of Contents
loading

Table of Contents