2. Serial RapidIO Interface > Hot Insertion and Hot Extraction
61
Tsi578 User Manual
June 6, 2016
Integrated Device Technology
www.idt.com
As with a controlled reset of a link partner (see
“Generating a RapidIO Reset Request to a Peer
), the writes of the two OUTBOUND values must occur in the order given (for example, the
Tsi578 followed by the link partner).
2.9.1.1
Link Partner and Unsupported Error Recovery
In the event that the link partner does not support the software-assisted error recovery registers,
“RapidIO Serial Port x Local ackID Status CSR”
will not exist in the link partner. Since it is impossible
to set the link partner’s OUTBOUND value in this case, the Tsi578 INBOUND value must become
zero.
2.9.2
Hot Extraction
Tsi578 ports where a hot extraction event occurs should not have any transactions flowing through
them in preparation for the extraction. The PORT_LOCKOUT bit must be set on the port where the hot
extraction event occurs in order to drop all packets arriving from the ISF for transmission, to flush any
existing packets in the transmit and receive queues of the port, and to prevent new packets from being
received from the device about to be extracted. At this point, the component can be safely extracted.
The LUT entries for all ports in the Tsi578 can be configured to not route any packets to the port on
which the hot extraction occurs.
When hot extracting a port (Port#N) originally connected to the Tsi578, the following steps should be
completed:
1.
Lock out Port#N by writing 1 to PORT_LOCKOUT in
“RapidIO Serial Port x Control CSR”
2.
Extract the card.
This causes Port #N to lose synchronization. After the Lane Sync Timer has expired, a PORT_ERR
status bit may be asserted in the
“RapidIO Port x Error and Status CSR”
. PORT_UNINIT is set and
PORT_OK is de-asserted in the same register. INPUT_ERR_STOP and OUTPUT_ERR_STOP are
also set.
If the requests are performed in the reverse order, or if other packets are transmitted before
the OUTBOUND values are programmed, the link experiences a fatal error due to an ackID
mismatch.
If Port #N is an odd port, a PORT_ERR condition may occur on the even port of the Tsi578
MAC.