I'm trying to chase down a hang in my application which is based on do_preview_resize in the DM365 examples-r37 of the DVSDK version 3.
My documentation (SPRUFG8) is perhaps old because the description of VPSS events (Table 16, pg 53) shows that bit 15 (i.e. event #15) is "Reserved" yet this event is being used in the vpss.c driver as the dma_complete_interrupt. The documentation for the INTSTAT register shows event 15 as RSZ_INT_DMA. I've traced down that the INTSEL registers and INTSTAT registers have the values below:
INTSEL1 at address 0x1c70010: 0x0b1f0100
INTSEL2 at address 0x1c70014: 0x1f0a0f1f
INTSEL3 at address 0x1c70018: 0x00000015
EVTSEL at address 0x1c7001c: 0x00000000
INTSTAT at address 0x1c7000c: 0x00306237
From these registers you can see that the only VPSS events that are used are 0, 1, 10,11, 15, and 21. I think I understand all of them exact #15 which is labelled as "Reserved". In fact, it is this interrupt that we seem to be waiting for and it isn't happening in my system .... at least not when I'm looking at these registers during the stall.
Are there some other registers that I could look at in order to understand what isn't working? One thing I need to understand better is how (and where) the DMA is set-up. I can see the code that deals with the *end* of the transfers but so far I've not found the code that sets things up.