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.

DRA829V: PSDKLA: VPAC LDC data transfer

Part Number: DRA829V

Hello TI folks,

As asked in the related question, we need LDC to support mem2mem operations. TRM isn't exactly clear on how to provide SL2 base address of the Circular buffer for LDC output channel and how to carry out DMA from VPAC SL2 memory to DDR. So I'll start by asking the following questions:

1. Does LDC support the following operation?

linear memory buffer for captured video frame -> LDC direct block read from DDR  -> Affine transform -> write back linear memory in DDR (or do we need to go through VPAC SL2 memory?)

2. If we must go through VPAC SL2 memory do we need to support VPAC UTC, LSE and HTS for transfers to DDR?

3. If we have to support VPAC UTC how do we configure corresponding UDMA channel under Linux? Can we do DEV to MEM scatter gather DMA using packet/TR1 mode UDMA channel configured with PSI-L interface of VPAC?

  • Hi Ahsan,

    SL2 management is taken care by RTOS driver on R5F and so UTC, LSE, HTS, so application does not really need to worry about these modules. Application just require to configure LDC and submit input and output buffer for the operation.

    Regards,

    Brijesh

  • Hi Brijesh,

    Apologies for not being clear in the original post. We are looking to support rotation for CSI Rx stream, using VPAC LDC block, on the Linux SDK. What I'm getting at is: If we just need the LDC block to take data from DDR and write back to DDR, what entities from VPAC can we skip?

  • Hi Ahsan,

    All of these entities are required for the operation of LDC. They are framework/building blocks, without them, LDC cannot operate.

    Is the LDC only module you want to access from Linux? Is it possible to use it from R5F? 

    Could you please help us understand the usecase? 

    Regards,

    Brijesh

  • Hello Brijesh,

    The use case is that we have to support FPD Link3 capture pipeline on Linux; due to our system design requirements we can not use R5F cluster for video streaming. We've already done much of the work supporting most entities like remote sensor, serializer, deserializer, DPHY Rx, and CSI Rx IF minus the DMA to DDR due to failure in TI SCI firmware for channel acquisition (see e2e.ti.com/.../3602081

    Now we want to support rotation on this pipeline for which we just need to use LDC block; rest of the VPAC entities would be an overhead for us. I can see that LDC can do direct reads from DDR using its MMR programmed internal DMA but I wasn't sure about the output part without using these VPAC entities

  • Hi Ahsan,

    LDC can read directly, but cannot write directly to DDR. Also it requires other infrastructure components. I would suggest to use OpenVX LDC Node running on R5F to access LDC.

    Regards,

    Brijesh