This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM648 Display Port: first 2-3 frames after starting are zero

I have a DM648 application where I am using the video port driver (dvsdk version 1.11) to start and stop a raw video display port.  I need to control exactly when a frame is output.  What I am noticing is the first 2-3 frames after issuing a start command contain all zeros for the data.  The process I am using is this:

1.) On startup, initialize the RAW display port and allocate 3 VGA buffers.

2.) Fill all three buffers with data (using 0xFFFF) for this test

3.) Queue all three buffers to the display port

4.) Issue the start command

I see on a scope that the first 3 (or sometimes 2) frames have all zeros for data, and then after that I start to see the frames with 0xFFFF come out.

Does anyone know what causes this behavior?  I need to be able to guarantee that when I start the video port that a frame I have filled with data will be put out.  I.E. - the first time hsync and vsync start to come out, my data should be on the bus.

Thanks,

Jason

  • The reason for seeing this behavior is the way the display driver is implemented.

    When starting display, the following sequence is used

    1. Enable VDEN
    2. Wait for two blank frames
    3. Enable EDMA events

     Hence the first two/three frames is always blank generated by the VPORT.

     

    I am not sure how the VPORT will behave if we simultaneously enable both VPORT and EDMA events.

    Regards, Srirami.