The DISPC supports wake-up signaling. The mode can be selected by programming the appropriate value in the DISPC_SYSCONFIG[2] ENAWAKEUP bit. Because the SWakeUp signal is asynchronous, it does not require the interface clock.
The conditions of assertion of the SWakeUp signal are:
- The GFX pipeline is enabled but the data fetch did not complete for the GFX window, and the data in the DMA buffer is less than the low threshold value.
- The VID1 pipeline is enabled but the data fetch did not complete for the VID1 window, and the data in the DMA buffer is less than the low threshold value.
- The VID2 pipeline is enabled but the data fetch did not complete for the VID2 window, and the data in the DMA buffer is less than the low threshold value.
- The VID3 pipeline is enabled but the data fetch did not complete for the VID3 window, and the data in the DMA buffer is less than the low threshold value.
- The WB pipeline is enabled and the data in the DMA buffer is more than the high threshold value.
- The last pixel displayed into the LCD1 panel if it is not the last frame
- The last pixel displayed into the LCD2 panel if it is not the last frame
- The last pixel displayed into the LCD3 panel if it is not the last frame
- The last pixel displayed into the TV panel if it is not the last frame
The SWakeUp signal is asserted whenever any one of these nine events occurs and IdleAck is asserted.
When one of the active pipelines reaches the low threshold and must refill its DMA buffer for the current frame, all other pipelines refill their own DMA buffer even if their low threshold has not been reached. The DISPC_CONFIG1[17] BUFFERFILLING bit is used to increase the probability that the time increases, where there is no access to the L3_MAIN interconnect.
The condition of deassertion of the SWakeUp signal is:
- Immediately after deassertion of IdleReq