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.

RTOS/AM5728: CaptureVip example save buffer fails

Part Number: AM5728

Tool/software: TI-RTOS

Hi,

I creat a CaptureVip Project  in CCS from pdk_am57xx_1_0_7\packages\ti\drv\vps\examples\vip .

Below is the log :

CAPT_VIP_APP: Sample Application - STARTS !!!
*** VPDMA Firmware Loading... ***
VPDMA Firmware already loaded !!!
VPDMA Firmware Version = 0x4d0001b8
VPDMA List Busy Status = 0x00000000
*** VPDMA Firmware Load Success ***

*** VPDMA Firmware Loading... ***
VPDMA Firmware already loaded !!!
VPDMA Firmware Version = 0x4d0001b8
VPDMA List Busy Status = 0x00000000
*** VPDMA Firmware Load Success ***

*** VPDMA Firmware Loading... ***
VPDMA Firmware already loaded !!!
VPDMA Firmware Version = 0x4d0001b8
VPDMA List Busy Status = 0x00000000
*** VPDMA Firmware Load Success ***

*** VPDMA Firmware Loading... ***
VPDMA Firmware already loaded !!!
VPDMA Firmware Version = 0x4d0001b8
VPDMA List Busy Status = 0x00000000
*** VPDMA Firmware Load Success ***


Build time : [14:27:40 Sep 21 2017]
FVID2 Version : [FVID_02_01_00_01]
BSP Version : [BSP_01_08_00_xx]
Platform : [EVM]
SOC : [AM572X]
SOC Revision : [ES2.0]
FT Revision : [9]
Package : [UNKNOWN]
Core : [A15]
Board Detected : [AM57XX IDK EVM]
EEPROM Board Info Header Mismatch!!
Base Board Revision : [UNKNOWN]
Daughter Card Revision: [REV A]

CAPT_VIP_APP: CaptApp_init() - DONE !!!

--------------------------------------
Select test to run as per below table:
--------------------------------------

0: OV1063x->VIP1_S0_PORTA SCH 8-bit Discrete Sync (HSYNC/VSYNC), YUYV422I out
1: OV1063x->VIP1_S0_PORTA SCH 8-bit Discrete Sync (HSYNC/VSYNC), YUYV422I 800x480 Scaled out
2: OV1063x->VIP1_S0_PORTA SCH 8-bit Discrete Sync (HSYNC/VSYNC), YUV422SP_UV out
3: OV1063x->VIP1_S0_PORTA SCH 8-bit Discrete Sync (HSYNC/VSYNC), Dual out - YUYV422I 800x480 Scaled out, YUYV422I
4: OV1063x(MULDES_CAM1)->VIP1_S0_PORTA SCH 8-bit Discrete Sync (HSYNC/VSYNC), YUYV422I out
5: OV1063x(RevA/B:CAM1,2,3,4 Else:CAM1,2,4,5)->VIP SCH 8-bit Discrete Sync (HSYNC/VSYNC), YUYV422I out
6: OV1063x(MULDES_CAM1,2,3,4,5,6)->VIP SCH 8-bit Discrete Sync (HSYNC/VSYNC), YUYV422I out
7: LI OV1063x->VIP1_S0_PORTA SCH 8-bit Discrete Sync (HSYNC/VSYNC), YUYV422I out
8: Aptina AR0132->VIP1_S0_PORTA SCH 12-bit Discrete Sync (HSYNC/VSYNC), Bayer (GR) out
9: ADV7611->VIP1_S0_PORTA SCH 16-bit Discrete Sync (HSYNC/VSYNC), YUYV422I out
10: SII9127->VIP1_S0_PORTA SCH 16-bit Discrete Sync (HSYNC/VSYNC), YUYV422I out
11: TVP5158->VIP1_S0_PORTA SCH D1 8-bit Embedded Sync, YUYV422I out
12: TVP5158->VIP1_S0_PORTA 4-CH D1 8-bit Pixel Multiplexed Embedded Sync, YUYV422I out
13: TVP5158->VIP1_S0_PORTA 4-CH D1 8-bit Line Multiplexed Embedded Sync, YUYV422I out
14: OV2659->VIP1_S1_PORTA SCH 8-bit Discrete Sync (HSYNC/VSYNC), YUYV422I out
15: Auto Run

100: EXIT

Enter Test to Run (in UART console):
9
9
CAPT_VIP_APP: HANDLES 1: MODE 0006 : CH 1: RUN COUNT 5: OUTPUT:1:0 !!!
CAPT_VIP_APP: VIP 0: VID DEC 1004 (0x4c): 2051:0000:0000
CAPT_VIP_APP: Detect video in progress for inst 0 !!!
CAPT_VIP_APP: Detected video at CH0 (14x1125@60Hz, 0)!!!
CAPT_VIP_APP: Detect video Done !!!
CAPT_VIP_APP: Capture create complete!!
CAPT_VIP_APP: Starting capture ... !!!
CAPT_VIP_APP: Capture in progress ... DO NOT HALT !!!
CAPT_VIP_APP: Stopping capture ... DONE !!!

Execution Statistics
====================

Execution time : 8.505 s
Total field Count : 0 (0 fields/sec)
Avg CPU Load : 0 %

Capture Instance 0 Statistics
==============================
Capture Inst 0 Status: Number of request queued : 1
Capture Inst 0 Status: Number of request dequeued: 0
Capture Inst 0 Status: Overflow Count : 0

CH | Q DQ Total Top Bot Total Top Bot Min/Max Min/Max Dropped Repeat Fid Desc
(I/S/CH) | Count Count Fields Fields Fields FPS FPS FPS Width Height Frames Frames Repeat Error
---------------------------------------------------------------------------------------------------------------------------
00.0.00 | 4 0 0 0 0 0 0 0 0/0 0/0 0 0 0 0


saveRaw(0, 0x81600000, "D:\\captureOption9Inst0Ch0Str0_yuyv422_prog_packed_1920_1080.tigf", 4147200, 32, false);
Trying to save buffer to SD card.
Couldnot save buffer to SD card.
CAPT_VIP_APP: Capture delete complete!!

14685: LOAD: CPU: 1%, HWI: 0%, SWI:0%

It could't save the buffer to SD card.I tried to add bsputils_app.c to CCS,but some source file do not exist .

Such as :

ti/drv/bsp_lld/i2c/bsp_i2c.h

ti/drv/stw_lld/fatlib/hsmmcsd_API.h

Thanks and Best Regards,

  • The RTOS team have been notified. They will respond here.
  • Hi,

    Sorry for the confusion! The VPS driver example doesn't have MMCSD driver integrated, so saving the VIP capture data into a MMCSD card wouldn't work. We typically look at the data buffer in the DDR via JTAG. Or, you can save that memory to computer hard drive as a file.

    Regards, Eric
  • Hi,

    Thanks for reply.

    I tried check DDR(0x81600000) via JTAG.The data in memory is default value  0x8080.

    I checked adv7611driver .I think I2C is work well.

    I think adv7611driver is match with VIP capture driver.I did not changed the adv7611driver.

    I changed the config file of example in CaptureVip_main.h as :

    {
       #if defined (SOC_TDA2EX) || defined (SOC_AM571x)
                            "ADV7611->VIP1_S1_PORTA SCH 16-bit Discrete Sync (HSYNC/VSYNC), YUYV422I out",
       #else
                            "ADV7611->VIP1_S0_PORTA SCH 16-bit Discrete Sync (HSYNC/VSYNC), YUYV422I out",
       #endif
                            1U, /* numCh */
                            1U, /* numHandles */
         {
       #if defined (SOC_TDA2EX) || defined (SOC_AM571x)
                            VPS_CAPT_VIP_MAKE_INST_ID(VPS_VIP1, VPS_VIP_S1, VPS_VIP_PORTA),
       #else
                            VPS_CAPT_VIP_MAKE_INST_ID(VPS_VIP1, VPS_VIP_S0, VPS_VIP_PORTA), /*instID*/
       #endif
       },
       {
                            FVID2_VID_DEC_ADV7611_DRV, /*decDrvID*/
       },
                            FVID2_VIFM_SCH_DS_AVID_VSYNC, /*videoIfMode*/
                            FVID2_VIFW_16BIT, /*videoIfWidth*/
                            FVID2_STD_1080P_60, /*standard*/
                            FVID2_DF_YUV422I_YUYV, /*inDataFmt*/
                            1U, /* numStream */
       {
                            FVID2_DF_YUV422I_YUYV /*outDataFmt*/
       },
                            CAPT_APP_SC_DISABLE_ALL, /*scEnable*/
                            1920U, /* inWidth */
                            1080U, /* inHeight */
                            {1920U }, /* outWidth[] */
                            {1080U }, /* outHeight[] */
                            CAPT_APP_RUN_COUNT, /*runCount*/
                            BSP_BOARD_MODE_VIDEO_16BIT, /*boardMode*/
                            /* Note: Can't run in muldes board because of I2C conflict */
                            BSP_BOARD_IDK_AM57XX, /*cxy_test*/
    },

    Please help me check is that match with adv7611driver.

  • Hi,

    Can you clarify what HW platform you are testing the VIP capture example? Are you using AM572x IDK EVM?

    Regards, Eric
  • Hi,

    Our design references the IDK.Using VIN1A to capture from adv7611.Communicating with I2C0.

  • And I config VIN1A pin(include de fld hs vs ) to pull-down mux0.
    I didn't found how to config the pinmux,so I add the pin config code into boot myself.
  • Hi,
    I found the issue .The issue is the pinmux .I config the pinmux register to wrong value.When I fix that the capture example runs successfully .