SPRUHZ7K August 2015 – April 2024 AM5706 , AM5708 , AM5716 , AM5718 , AM5718-HIREL
The interrupt line, DISPC_DREQ, indicates when one or more events are detected by the hardware. Each event is independently maskable by setting the DISPC_IRQENABLE register.
To check when a particular interrupt event occurs and to reset a particular event, the DISPC_IRQSTATUS register must be accessed. This register regroups the status of internal events in the module that generate an interrupt (read 0: no interrupt occurred; read 1: interrupt occurred; write 1: status bit reset). For more information about checking and clearing interrupt events, see Section 11.1.5, Display Subsystem Register Manual.
Table 11-58 describes the interrupts generated for the DISPC.
Interrupt Name | Description |
---|---|
FLIPIMMEDIATEDONE_IRQ | Flip immediate done: Occurs when the DMA engine has acknowledged the immediate BA change, and software can write the new BA0. |
FRAMEDONE1_IRQ | Frame done for LCD1 output: Active frame related to the LCD1 is complete and LCD1 output of the DISPC is disabled. |
FRAMEDONE2_IRQ | Framedone for LCD2 output: Active frame related to the LCD2 is complete and LCD2 output of the DISPC is disabled. |
FRAMEDONE3_IRQ | Frame done for LCD3 output: Active frame related to the LCD3 is complete and LCD3 output of the DISPC is disabled. |
FRAMEDONETV_IRQ | Frame done for TV output: Active frame related to the TV output is complete and TV output of the DISPC is disabled. |
FRAMEDONEWB_IRQ | Frame done for WB output: Active frame related to the WB is complete. First, it is used when the WB channel is connected to one of the pipelines to determine when the memory-to-memory transfer through DISPC is completed. Second, it is used when the WB channel is connected to one of the overlay output in nonreal-time mode to determine when the memory-to-memory transfer with overlay processing is completed. |
VSYNC1_IRQ | VSYNC for primary LCD output: VSYNC interrupt for the primary LCD has occurred at the end of the frame. |
VSYNC2_IRQ | VSYNC for secondary LCD output: VSYNC interrupt for the secondary LCD has occurred at the end of the frame. |
VSYNC3_IRQ | VSYNC for third LCD output: VSYNC interrupt for the third LCD has occurred at the end of the frame. |
EVSYNC_EVEN_IRQ | VSYNC for even field: EVSYNC_EVEN interrupt has occurred at the end of the frame (EVSYNC received and the field polarity is even) (HDMI) |
EVSYNC_ODD_IRQ | VSYNC for odd field: EVSYNC_ODD interrupt has occurred at the end of the frame (EVSYNC received and the field polarity is odd) (HDMI) |
ACBIASCOUNTSTATUS1_IRQ | AC bias count status for LCD1 output: AC bias transition counter has decremented to 0. |
ACBIASCOUNTSTATUS2_IRQ | AC bias count status for LCD2 output: AC bias transition counter has decremented to 0. |
ACBIASCOUNTSTATUS3_IRQ | AC bias count status for LCD3 output: AC bias transition counter has decremented to 0. |
PROGRAMMEDLINENUMBER_IRQ | Programmed line number: The primary LCD has reached the user programmed line number. |
VID1ENDWINDOW_IRQ | End of the VID1 window: The DMA engine has fetched all the data from memory for the VID1 for the current frame. |
VID2ENDWINDOW_IRQ | End of the VID2 window: The DMA engine has fetched all the data from memory for the VID2 for the current frame. |
VID3ENDWINDOW_IRQ | End of the VID3 window: The DMA engine has fetched all the data from memory for the VID3 for the current frame. |
GFXENDWINDOW_IRQ | End of the graphics window: The DMA engine has fetched all the data from memory for the graphics for the current frame. |
VID1BUFFERUNDERFLOW_IRQ | VID1 DMA buffer underflow: The input VID1 DMA buffer goes underflow. |
VID2BUFFERUNDERFLOW_IRQ | VID2 DMA buffer underflow: The input VID2 DMA buffer goes underflow. |
VID3BUFFERUNDERFLOW_IRQ | VID3 DMA buffer underflow: The input VID3 DMA buffer goes underflow. |
WBBUFFEROVERFLOW_IRQ | WB DMA buffer overflow: The output WB DMA buffer goes overflow. It cannot occur when WB channel is used in memory-to-memory transfer mode but only in capture mode. In capture mode the timings are defined by the timer associated with the output. In memory-to-memory mode, there is timing constraint. |
GFXBUFFERUNDERFLOW_IRQ | GFX DMA buffer underflow: The input graphics DMA buffer goes underflow. |
PALETTEGAMMALOADING_IRQ | Gamma table loading: Gamma table in the graphics pipeline has been loaded using the DISPC DMA engine. |
WBUNCOMPLETEERROR_IRQ | The write-back buffer has been flushed before being fully drained. In WB capture mode, if the new frame starts before the WB DMA buffers are fully drained (onto external memory), then the contents of the WB DMA buffers are lost (implying last few pixels/lines are corrupted in the captured frame in memory). This interrupt is an indication of that, and will trigger every frame. |
OCPERROR_IRQ | OCP error: L3_MAIN interconnect has sent SResp = ERR |
SYNCLOST1_IRQ | Synchronization lost on LCD1 output: Occurs when VSYNC width/front or back porches are not wide enough to load the pipelines with data (LCD output). |
SYNCLOST2_IRQ | Synchronization lost on LCD2 output: Occurs when VSYNC width/front or back porches are not wide enough to load the pipelines with data (LCD output). |
SYNCLOST3_IRQ | Synchronization lost on LCD3 output: Occurs when VSYNC width/front or back porches are not wide enough to load the pipelines with data (LCD output). |
SYNCLOSTTV_IRQ | Synchronization lost on TV output: Occurs when porches are not wide enough to load the pipelines with data (TV output connected to the HDMI). |
WAKEUP_IRQ | Wakeup: Occurs when the SWakeUp signal is asserted. |