- Wait for the DOWN_REQUEST_BUFFER_READY status interrupt, and read from DOWN_REQUEST_BUFFER. Continue to collect sideband messages as per VESA DisplayPort Standard (VESA website). After a complete sideband message is received, the software processes the message and writes the reply to DOWN_REPLY_BUFFER.
- After the response is written, set DOWN Reply Buffer Message to 1 in the Remote Command New register.
- Wait for DOWN_REPLY_BUFFER_READ status in interrupts and continue writing
During the MST AUX messaging phase, the required PBN (available BW) is calculated and sent to the source. The source then sends allocation requests based on available bandwidth. Internally, the Sink hardware updates the VC payload table by monitoring the AUX transactions. Alternatively, if you are an advanced user, you can use software to control the VC payload table (setting bit 1 in 0x0D0 enables it). The software maintains a VC payload manager (by monitoring the interrupt bit 28 of 0x014 register and 0x06C register) and writes the resulting stream allocations to 0x800-0x8FF. When the software finishes writing to the VC payload table, the software has to set bit 4 in 0x0D0.
For an interrupt event, read both Interrupt Cause and Interrupt Cause 1 registers.Important: The software is required to form an appropriate LINK_ADDRESS sideband reply as per the Message Transaction protocol given in Section 2.11.2 of the VESA DisplayPort Standard (VESA website). The LINK_ADDRESS reply helps the source to identify the topology of the sink. For example, if the sink core is configured for four MST streams, it receives the multi-stream input from the DisplayPort RX and outputs four individual streams in native video format. In this case, the LINK_ADDRESS_REPLY can be modeled to contain one input and four output logical ports, with their DisplayPort device plug status set as 1 and Peer Device Type set as 3.