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.

TDA4VE-Q1: TDA4VE codec

Part Number: TDA4VE-Q1

Tool/software:

Hi Experts :

                  our project now needs to develop codec functions, and we are using TDA4VE SDK version 0806. By referring to the documents and checking the code, I am a little confused about the memory here. I see that the document mentions CMA, and I see that there is SRAM configuration in the code. I would like to ask if these two memories are necessary for developing codec functions, and what are their functions
Document link:
https://software-dl.ti.com/jacinto7/esd/processor-sdk-linux-j721s2/08_06_01_02/exports/docs/linux/Foundational_Components_Multimedia_wave5.html#

sram config:

  • Hello, 

    Yes, these two memories do serve important functions for the CODEC. The CMA provides a way to allocate memory in contiguous blocks, ensuring that the buffers required by the codec is readily available for DMA transfers. While the CMA, handles the buffers of the stream data, the SRAM typically manages internal allocations for memory needed by the CODEC's firmware (secondary AXI).

    Regards,
    Sarabesh S.

  • Hi :

            The camera we use is 300W, 1920*1536 30fps, what is the appropriate cma size configuration, is sram 128k enough

  • Hi Sarabesh:

                        When running the codec demo in the TDA4VE 0806 SDK version, the vx_app_multi_cam_codec.out file is used in conjunction with the app_multi_cam_codec.cfg configuration file. After debugging, it is found that the codec stops after running for a few seconds, and an error is reported in the gst_app_sink_pull_sample function. How can we troubleshoot and solve this problem?

  • Hi Sarabesh:

      The print information and error information are as follows

  • Hi 

    The camera we use is 300W, 1920*1536 30fps, what is the appropriate cma size configuration, is sram 128k enough

    Please keep sram unchanged. You can enlarge cma if error like OOM happens. 

    The print information and error information are as follows

    Please add GST_DEBUG=2 before you run the app. You can call it like GST_DEBUG=2 xxxx.out

    Regards,

    Adam

  • Hi Adam:

                 I have been busy with other projects, and now I have time to look at this problem. After adding GST_DEBUG=2, the log information is as follows codec_debug.log, please help analyze it.
    Another question, does the codec function in TDA4VE sdk0806 need to be used with mcu20?

                    

    root@imotion:~# GST_DEBUG=2 ./vx_app_multi_cam_codec.out --cfg app_multi_cam_codec.cfg
    APP: Init ... !!!
    MEM: Init ... !!!
    MEM: Initialized DMA HEAP (fd=4) !!!
    MEM: Init ... Done !!!
    IPC: Init ... !!!
    IPC: Init ... Done !!!
    REMOTE_SERVICE: Init ... !!!
    REMOTE_SERVICE: Init ... Done !!!
       222.108787 s: GTC Frequency = 200 MHz
    APP: Init ... Done !!!
       222.113995 s:  VX_ZONE_INIT:Enabled
       222.114043 s:  VX_ZONE_ERROR:Enabled
       222.114055 s:  VX_ZONE_WARNING:Enabled
       222.115350 s:  VX_ZONE_INIT:[tivxInitLocal:131] Initialization Done !!!
       222.116880 s:  VX_ZONE_INIT:[tivxHostInitLocal:93] Initialization Done for HOST !!!
    Ready to test cali param -----------  !
    ##############################################
    cam index = 0 paraType = 0 len = 128
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    ##############################################
    cam index = 1 paraType = 0 len = 128
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    ##############################################
    cam index = 2 paraType = 0 len = 128
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    ##############################################
    cam index = 3 paraType = 0 len = 128
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:set_display_defaults, line=2560 display_option = 0
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:set_display_defaults, line=2562 display_option = 0
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_parse_cfg_file, line=544 display_option = 0
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_multi_cam_codec_main, line=919 app_querry_sensor
       222.124905 s: ISS: Enumerating sensors ... !!!
       222.125600 s: ISS: Enumerating sensors ... found 0 : BL_031_3M_96717_SVM
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/modules/src/app_sensor_module.c, func:app_querry_sensor, line=91 sensorObj->is_interactive = 1
    1 sensor(s) found
    Supported sensor list:
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/modules/src/app_sensor_module.c, func:app_querry_sensor, line=102
    a : BL_031_3M_96717_SVM
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/modules/src/app_sensor_module.c, func:app_querry_sensor, line=108
    Select a sensor above or press '0' to autodetect the sensor
    a
    Sensor selected : BL_031_3M_96717_SVM
    Querying BL_031_3M_96717_SVM
       223.852007 s: ISS: Querying sensor [BL_031_3M_96717_SVM] ... !!!
       223.852342 s: ISS: Querying sensor [BL_031_3M_96717_SVM] ... Done !!!
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/modules/src/app_sensor_module.c, func:app_querry_sensor, line=185 ldcSelected = 0
    LDC Selection Yes(1)/No(0)
    Max number of cameras supported by sensor BL_031_3M_96717_SVM = 4
    Please enter number of cameras to be enabled
    4
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/modules/src/app_sensor_module.c, func:app_querry_sensor, line=224 channel_selected = 0
    Please enter number of csi-rx channel  1:svm  0:rv
    0
    Sensor width = 1920
    Sensor height = 1536
    Sensor DCC ID = 25
    Sensor Supported Features = 0x00000178
    Sensor Enabled Features = 0x00000158
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_multi_cam_codec_main, line=921 app_querry_sensor done
    YUV Input selected. VISS, AEWB and Mosaic nodes will be bypassed.
    Capture->Encode Selection Yes(1)/No(0)
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_querry_param_set, line=2643, ch = 1
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_querry_param_set, line=2646 obj->encode = 1
    1
    Decode->Display Selection Yes(1)/No(0)
    1
    Max number of cameras supported by sensor BL_031_3M_96717_SVM = 4
    Please enter number of channels to be enabled
    4
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_multi_cam_codec_main, line=942
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_multi_cam_codec_main, line=946
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_init, line=1023, enable_configure_hwa_freq = 0
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_init, line=1051, Creating context done
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_init, line=1060, Kernel loading done
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_init, line=1066, init sensor
       229.959677 s: ISS: Initializing sensor [BL_031_3M_96717_SVM], doing IM_SENSOR_CMD_PWRON ... !!!
       229.959982 s: ISS: Initializing sensor [BL_031_3M_96717_SVM], doing IM_SENSOR_CMD_CONFIG ... !!!
       230.859250 s: ISS: Initializing sensor [BL_031_3M_96717_SVM] ... Done !!!
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_init, line=1073, init sensor done
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_init, line=1095, LDC init done
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_init, line=1208, Img Mosaic init done
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_init, line=1215, Display init done
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_multi_cam_codec_main, line=951
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_multi_cam_codec_main, line=956
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_create_graph, line=1465
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_create_graph, line=1472 capture_graph create done
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_create_graph, line=1485 capture_graph create done
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_create_graph, line=1492 capture_graph create done
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_create_graph, line=1537 LDC graph done
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_create_graph, line=1560 Img Mosaic graph done
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/modules/src/app_display_module.c, func:app_create_graph_display, line=123 display_option = 0
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_create_graph, line=1573 Display graph done
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_create_graph, line=1685 appCodecInit
    gst_wrapper: GstCmdString:
    appsrc format=GST_FORMAT_TIME is-live=true do-timestamp=true block=false name=myAppSrc0 ! queue
    ! video/x-raw, width=(int)1920, height=(int)1536, framerate=(fraction)30/1, format=(string)NV12, interlace-mode=(string)progressive, colorimetry=(string)bt601
    ! v4l2h264enc bitrate=10000000
    ! h264parse
    ! v4l2h264dec
    ! video/x-raw, format=(string)NV12
    ! tiovxmemalloc pool-size=7
    ! appsink name=myAppSink0 drop=true wait-on-eos=false max-buffers=4
    appsrc format=GST_FORMAT_TIME is-live=true do-timestamp=true block=false name=myAppSrc1 ! queue
    ! video/x-raw, width=(int)1920, height=(int)1536, framerate=(fraction)30/1, format=(string)NV12, interlace-mode=(string)progressive, colorimetry=(string)bt601
    ! v4l2h264enc bitrate=10000000
    ! h264parse
    ! v4l2h264dec
    ! video/x-raw, format=(string)NV12
    ! tiovxmemalloc pool-size=7
    ! appsink name=myAppSink1 drop=true wait-on-eos=false max-buffers=4
    appsrc format=GST_FORMAT_TIME is-live=true do-timestamp=true block=false name=myAppSrc2 ! queue
    ! video/x-raw, width=(int)1920, height=(int)1536, framerate=(fraction)30/1, format=(string)NV12, interlace-mode=(string)progressive, colorimetry=(string)bt601
    ! v4l2h264enc bitrate=10000000
    ! h264parse
    ! v4l2h264dec
    ! video/x-raw, format=(string)NV12
    ! tiovxmemalloc pool-size=7
    ! appsink name=myAppSink2 drop=true wait-on-eos=false max-buffers=4
    appsrc format=GST_FORMAT_TIME is-live=true do-timestamp=true block=false name=myAppSrc3 ! queue
    ! video/x-raw, width=(int)1920, height=(int)1536, framerate=(fraction)30/1, format=(string)NV12, interlace-mode=(string)progressive, colorimetry=(string)bt601
    ! v4l2h264enc bitrate=10000000
    ! h264parse
    ! v4l2h264dec
    ! video/x-raw, format=(string)NV12
    ! tiovxmemalloc pool-size=7
    ! appsink name=myAppSink3 drop=true wait-on-eos=false max-buffers=4
    
    0:00:00.021874500   307     0x13d28ea0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:458:gst_element_factory_make: no such element factory "v4l2h264enc"!
    0:00:00.021977395   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "v4l2h264enc"
    0:00:00.022019910   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no sink [source=@0x13d96090]
    0:00:00.022056915   307     0x13d28ea0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:458:gst_element_factory_make: no such element factory "h264parse"!
    0:00:00.022078405   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "h264parse"
    0:00:00.022099965   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@(nil)]
    0:00:00.022121420   307     0x13d28ea0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:458:gst_element_factory_make: no such element factory "v4l2h264dec"!
    0:00:00.022141420   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "v4l2h264dec"
    0:00:00.022163960   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@(nil)]
    0:00:00.022193710   307     0x13d28ea0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:458:gst_element_factory_make: no such element factory "tiovxmemalloc"!
    0:00:00.022214105   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "tiovxmemalloc"
    0:00:00.022234545   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@(nil)]
    0:00:00.022656895   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@0x13d9b790]
    0:00:00.023031440   307     0x13d28ea0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:458:gst_element_factory_make: no such element factory "v4l2h264enc"!
    0:00:00.023069530   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "v4l2h264enc"
    0:00:00.023096005   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no sink [source=@0x13d96390]
    0:00:00.023120945   307     0x13d28ea0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:458:gst_element_factory_make: no such element factory "h264parse"!
    0:00:00.023139745   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "h264parse"
    0:00:00.023158160   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@(nil)]
    0:00:00.023176210   307     0x13d28ea0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:458:gst_element_factory_make: no such element factory "v4l2h264dec"!
    0:00:00.023193110   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "v4l2h264dec"
    0:00:00.023215040   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@(nil)]
    0:00:00.023241840   307     0x13d28ea0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:458:gst_element_factory_make: no such element factory "tiovxmemalloc"!
    0:00:00.023262515   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "tiovxmemalloc"
    0:00:00.023283720   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@(nil)]
    0:00:00.023377360   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@0x13d9e6c0]
    0:00:00.023612855   307     0x13d28ea0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:458:gst_element_factory_make: no such element factory "v4l2h264enc"!
    0:00:00.023644140   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "v4l2h264enc"
    0:00:00.023666110   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no sink [source=@0x13d96690]
    0:00:00.023689970   307     0x13d28ea0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:458:gst_element_factory_make: no such element factory "h264parse"!
    0:00:00.023705990   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "h264parse"
    0:00:00.023724640   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@(nil)]
    0:00:00.023742750   307     0x13d28ea0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:458:gst_element_factory_make: no such element factory "v4l2h264dec"!
    0:00:00.023759150   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "v4l2h264dec"
    0:00:00.023776525   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@(nil)]
    0:00:00.023800400   307     0x13d28ea0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:458:gst_element_factory_make: no such element factory "tiovxmemalloc"!
    0:00:00.023818230   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "tiovxmemalloc"
    0:00:00.023838150   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@(nil)]
    0:00:00.023937980   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@0x13da1b50]
    0:00:00.024146030   307     0x13d28ea0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:458:gst_element_factory_make: no such element factory "v4l2h264enc"!
    0:00:00.024170870   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "v4l2h264enc"
    0:00:00.024194240   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no sink [source=@0x13d96990]
    0:00:00.024216070   307     0x13d28ea0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:458:gst_element_factory_make: no such element factory "h264parse"!
    0:00:00.024232415   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "h264parse"
    0:00:00.024251220   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@(nil)]
    0:00:00.024271650   307     0x13d28ea0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:458:gst_element_factory_make: no such element factory "v4l2h264dec"!
    0:00:00.024288235   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "v4l2h264dec"
    0:00:00.024306950   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@(nil)]
    0:00:00.024329050   307     0x13d28ea0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:458:gst_element_factory_make: no such element factory "tiovxmemalloc"!
    0:00:00.024388170   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "tiovxmemalloc"
    0:00:00.024410255   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@(nil)]
    0:00:00.024490075   307     0x13d28ea0 ERROR           GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@0x13da3740]
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_create_graph, line=1688 appCodecInit done
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_multi_cam_codec_main, line=963
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_multi_cam_codec_main, line=968
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_multi_cam_codec_main, line=973
       231.076806 s: ISS: Starting sensor [BL_031_3M_96717_SVM] ... !!!
       231.110941 s: ISS: Starting sensor [BL_031_3M_96717_SVM] ... !!!
    
    
     =========================
     Demo : Camera Demo
     =========================
    
     s: Save CSIx, VISS and LDC outputs
    
     p: Print performance statistics
    
     x: Exit
    
     Enter Choice:
    
    
     =========================
     Demo : Camera Demo
     =========================
    
     s: Save CSIx, VISS and LDC outputs
    
     p: Print performance statistics
    
     x: Exit
    
     Enter Choice: Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_run_graph, line=2387 frame_id = 0 
    
    capture_encode: frame 0 beginning
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_run_graph, line=2387 frame_id = 1
    
    capture_encode: frame 1 beginning
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_run_graph, line=2387 frame_id = 2
    
    capture_encode: frame 2 beginning
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_run_graph, line=2387 frame_id = 3
    
    capture_encode: frame 3 beginning
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_run_graph, line=2387 frame_id = 4
    
    capture_encode: frame 4 beginning
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_run_graph, line=2387 frame_id = 5
    
    capture_encode: frame 5 beginning
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_run_graph, line=2387 frame_id = 6
    
    capture_encode: frame 6 beginning
    0:00:00.385804145   307     0x13d31370 WARN                 basesrc gstbasesrc.c:3072:gst_base_src_loop:<myAppSrc0> error: Internal data stream error.
    0:00:00.386020830   307     0x13d31370 WARN                 basesrc gstbasesrc.c:3072:gst_base_src_loop:<myAppSrc0> error: streaming stopped, reason not-linked (-1)
    0:00:00.386184160   307     0x13d31370 WARN                   queue gstqueue.c:988:gst_queue_handle_sink_event:<queue0> error: Internal data stream error.
    0:00:00.386232300   307     0x13d31370 WARN                   queue gstqueue.c:988:gst_queue_handle_sink_event:<queue0> error: streaming stopped, reason not-linked (-1)
    0:00:00.385934370   307 0xffff9c009450 WARN                 basesrc gstbasesrc.c:3072:gst_base_src_loop:<myAppSrc2> error: Internal data stream error.
    0:00:00.386336215   307 0xffff9c009450 WARN                 basesrc gstbasesrc.c:3072:gst_base_src_loop:<myAppSrc2> error: streaming stopped, reason not-linked (-1)
    0:00:00.386476475   307 0xffff9c009450 WARN                   queue gstqueue.c:988:gst_queue_handle_sink_event:<queue2> error: Internal data stream error.
    0:00:00.386520255   307 0xffff9c009450 WARN                   queue gstqueue.c:988:gst_queue_handle_sink_event:<queue2> error: streaming stopped, reason not-linked (-1)
    0:00:00.385879285   307 0xffff9c009400 WARN                 basesrc gstbasesrc.c:3072:gst_base_src_loop:<myAppSrc3> error: Internal data stream error.
    0:00:00.386615640   307 0xffff9c009400 WARN                 basesrc gstbasesrc.c:3072:gst_base_src_loop:<myAppSrc3> error: streaming stopped, reason not-linked (-1)
    0:00:00.386491215   307     0x13d31280 WARN                 basesrc gstbasesrc.c:3072:gst_base_src_loop:<myAppSrc1> error: Internal data stream error.
    0:00:00.386689290   307 0xffff9c009400 WARN                   queue gstqueue.c:988:gst_queue_handle_sink_event:<queue3> error: Internal data stream error.
    0:00:00.386728930   307 0xffff9c009400 WARN                   queue gstqueue.c:988:gst_queue_handle_sink_event:<queue3> error: streaming stopped, reason not-linked (-1)
    0:00:00.386812885   307     0x13d31280 WARN                 basesrc gstbasesrc.c:3072:gst_base_src_loop:<myAppSrc1> error: streaming stopped, reason not-linked (-1)
    0:00:00.386952200   307     0x13d31280 WARN                   queue gstqueue.c:988:gst_queue_handle_sink_event:<queue1> error: Internal data stream error.
    0:00:00.387032740   307     0x13d31280 WARN                   queue gstqueue.c:988:gst_queue_handle_sink_event:<queue1> error: streaming stopped, reason not-linked (-1)
    
    decode_display: frame 0 beginning
    gst_wrapper: WARNING: gst_app_sink_pull_sample() FAILED!
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_run_graph, line=2387 frame_id = 7
    
    capture_encode: frame 7 beginning
    
    decode_display: frame 1 beginning
    gst_wrapper: WARNING: gst_app_sink_pull_sample() FAILED!
    Debug: file:/SSD/yan/zx/tisdk0806/ti-processor-sdk-rtos-j721s2-evm-08_06_01_03/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c, func:app_run_graph, line=2387 frame_id = 8
    
    capture_encode: frame 8 beginning
    p
    
    
    Summary of CPU load,
    ====================
    
    CPU: mpu1_0: TOTAL LOAD =  10.19 % ( HWI =   0. 8 %, SWI =   0. 0 % )
    CPU: mcu2_0: TOTAL LOAD =   1. 0 % ( HWI =   0. 0 %, SWI =   0. 0 % )
    CPU:  c7x_1: TOTAL LOAD =   0. 0 % ( HWI =   0. 0 %, SWI =   0. 0 % )
    CPU:  c7x_2: TOTAL LOAD =   0. 0 % ( HWI =   0. 0 %, SWI =   0. 0 % )
    
    
    HWA performance statistics,
    ===========================
    
    
    
    DDR performance statistics,
    ===========================
    
    DDR: READ  BW: AVG =     48 MB/s, PEAK =   5353 MB/s
    DDR: WRITE BW: AVG =    539 MB/s, PEAK =   1129 MB/s
    DDR: TOTAL BW: AVG =    587 MB/s, PEAK =   6482 MB/s
    
    
    Detailed CPU performance/memory statistics,
    ===========================================
    
    DDR_SHARED_MEM: Alloc's: 63 alloc's of 274968800 bytes
    DDR_SHARED_MEM: Free's : 16 free's  of 70778880 bytes
    DDR_SHARED_MEM: Open's : 47 allocs  of 204189920 bytes
    DDR_SHARED_MEM: Total size: 536870912 bytes
    
    CPU: mcu2_0: TASK:           IPC_RX:   0. 0 %
    CPU: mcu2_0: TASK:       REMOTE_SRV:   0. 1 %
    CPU: mcu2_0: TASK:        LOAD_TEST:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CPU_0:   0. 0 %
    CPU: mcu2_0: TASK:        TIVX_V1NF:   0. 0 %
    CPU: mcu2_0: TASK:      TIVX_V1LDC1:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_V1SC1:   0. 0 %
    CPU: mcu2_0: TASK:      TIVX_V1MSC2:   0. 0 %
    CPU: mcu2_0: TASK:       TIVXVVISS1:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CAPT1:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CAPT2:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_DISP1:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_DISP2:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CSITX:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CAPT3:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CAPT4:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CAPT5:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CAPT6:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CAPT7:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CAPT8:   0. 0 %
    CPU: mcu2_0: TASK:      TIVX_DPM2M1:   0. 0 %
    CPU: mcu2_0: TASK:      TIVX_DPM2M2:   0. 0 %
    CPU: mcu2_0: TASK:      TIVX_DPM2M3:   0. 0 %
    CPU: mcu2_0: TASK:      TIVX_DPM2M4:   0. 0 %
    
    CPU: mcu2_0: HEAP:    DDR_LOCAL_MEM: size =   16777216 B, free =   16708352 B ( 99 % unused)
    CPU: mcu2_0: HEAP:           L3_MEM: size =     524288 B, free =     524032 B ( 99 % unused)
    
    CPU:  c7x_1: TASK:           IPC_RX:   0. 0 %
    CPU:  c7x_1: TASK:       REMOTE_SRV:   0. 0 %
    CPU:  c7x_1: TASK:        LOAD_TEST:   0. 0 %
    CPU:  c7x_1: TASK:      TIVX_C71_P1:   0. 0 %
    CPU:  c7x_1: TASK:      TIVX_C71_P2:   0. 0 %
    CPU:  c7x_1: TASK:      TIVX_C71_P3:   0. 0 %
    CPU:  c7x_1: TASK:      TIVX_C71_P4:   0. 0 %
    CPU:  c7x_1: TASK:      TIVX_C71_P5:   0. 0 %
    CPU:  c7x_1: TASK:      TIVX_C71_P6:   0. 0 %
    CPU:  c7x_1: TASK:      TIVX_C71_P7:   0. 0 %
    CPU:  c7x_1: TASK:      TIVX_C71_P8:   0. 0 %
    CPU:  c7x_1: TASK:      IPC_TEST_RX:   0. 0 %
    CPU:  c7x_1: TASK:      IPC_TEST_TX:   0. 0 %
    CPU:  c7x_1: TASK:      IPC_TEST_TX:   0. 0 %
    CPU:  c7x_1: TASK:      IPC_TEST_TX:   0. 0 %
    
    CPU:  c7x_1: HEAP:    DDR_LOCAL_MEM: size =  268435456 B, free =  268435200 B ( 99 % unused)
    CPU:  c7x_1: HEAP:           L3_MEM: size =    1572864 B, free =    1572864 B (100 % unused)
    CPU:  c7x_1: HEAP:           L2_MEM: size =     458752 B, free =     458752 B (100 % unused)
    CPU:  c7x_1: HEAP:           L1_MEM: size =      16384 B, free =      16384 B (100 % unused)
    CPU:  c7x_1: HEAP:  DDR_SCRATCH_MEM: size =  385875968 B, free =  385875968 B (100 % unused)
    
    CPU:  c7x_2: TASK:           IPC_RX:   0. 0 %
    CPU:  c7x_2: TASK:       REMOTE_SRV:   0. 0 %
    CPU:  c7x_2: TASK:        LOAD_TEST:   0. 0 %
    CPU:  c7x_2: TASK:         TIVX_CPU:   0. 0 %
    CPU:  c7x_2: TASK:      IPC_TEST_RX:   0. 0 %
    CPU:  c7x_2: TASK:      IPC_TEST_TX:   0. 0 %
    CPU:  c7x_2: TASK:      IPC_TEST_TX:   0. 0 %
    CPU:  c7x_2: TASK:      IPC_TEST_TX:   0. 0 %
    
    CPU:  c7x_2: HEAP:    DDR_LOCAL_MEM: size =   16777216 B, free =   16772608 B ( 99 % unused)
    CPU:  c7x_2: HEAP:           L2_MEM: size =     458752 B, free =     458752 B (100 % unused)
    CPU:  c7x_2: HEAP:           L1_MEM: size =      16384 B, free =      16384 B (100 % unused)
    CPU:  c7x_2: HEAP:  DDR_SCRATCH_MEM: size =   67108864 B, free =   67108864 B (100 % unused)
    
    
    GRAPH:    capture_graph (#nodes =   2, #executions =      6)
     NODE:       CAPTURE1:             capture_node: avg =  43385 usecs, min/max =    586 /  90936 usecs, #executions =          6
     NODE:      VPAC_LDC1:                 ldc_node: avg =     81 usecs, min/max =     78 /     85 usecs, #executions =          6
    
    GRAPH:    display_graph (#nodes =   1, #executions =      0)
     NODE:      VPAC_MSC1:          img_mosaic_node: avg =      0 usecs, min/max = 18446744073709551 /      0 usecs, #executions =          0
    
     PERF:           FILEIO: avg =      0 usecs, min/max = 4294967295 /      0 usecs, #executions =          0
     PERF:            TOTAL: avg = 122634 usecs, min/max =     12 / 440077 usecs, #executions =          8
    
     PERF:            TOTAL:    8.15 FPS
    
    GST_WRAPPER PUSH/PULL COUNTS:
    
    Push count : 4
    Pull count : 0
    
    
    
    
     =========================
     Demo : Camera Demo
     =========================
    
     s: Save CSIx, VISS and LDC outputs
    
     p: Print performance statistics
    
     x: Exit
    
     Enter Choice:
    
    
     =========================
     Demo : Camera Demo
     =========================
    
     s: Save CSIx, VISS and LDC outputs
    
     p: Print performance statistics
    
     x: Exit
    
     Enter Choice:
    

                 

  • Hi 

    It looks like you do not have those element in your filesystem. Are your using custom filesystem or SDK defualt?

    Regards,

    Adam

  • Hi Adam:

                 Our file system is cut down. Could you please point out what is missing or give us some guidance on what file system content is needed?

  • Hi Gaston, 

    Can you share what kernel patches you've applied on top of 5.10 kernel. 

    Regards,
    Sarabesh S.

  • Hi Sarabech:

                       Is it the kernel, not the file system? There are many changes in the kernel. I turned off the video before, and now I turn it on through the device tree, set up cma, and turn on the video module. You can see the attachment for the video patch. I don't know if it will be helpful to you.

     

                       

  • diff --git a/arch/arm64/boot/dts/imotion_d4/k3-j721s2-main.dtsi b/arch/arm64/boot/dts/imotion_d4/k3-j721s2-main.dtsi
    index aae62a001..487de43cd 100644
    --- a/arch/arm64/boot/dts/imotion_d4/k3-j721s2-main.dtsi
    +++ b/arch/arm64/boot/dts/imotion_d4/k3-j721s2-main.dtsi
    @@ -26,7 +26,7 @@ atf-sram@0 {
     		};
     
     		vpu_sram: vpu-sram@20000 {
    -			reg = <0x20000 0x1f800>;
    +			reg = <0x20000 0x20000>;
     		};
     
     		tifs-sram@1f0000 {
    @@ -448,7 +448,7 @@ vpu: video-codec@4210000 {
     		clock-names = "vcodec";
     		power-domains = <&k3_pds 179 TI_SCI_PD_EXCLUSIVE>;
     		sram = <&vpu_sram>;
    -		status = "disabled";
    +		/* status = "disabled"; */
     	};
     
     	main_sdhci0: mmc@4f80000 {
    diff --git a/arch/arm64/boot/dts/imotion_d4/k3-j721s2-rtos-memory-map.dtsi b/arch/arm64/boot/dts/imotion_d4/k3-j721s2-rtos-memory-map.dtsi
    index 1a6cddb8a..8ad1994b4 100644
    --- a/arch/arm64/boot/dts/imotion_d4/k3-j721s2-rtos-memory-map.dtsi
    +++ b/arch/arm64/boot/dts/imotion_d4/k3-j721s2-rtos-memory-map.dtsi
    @@ -218,6 +218,12 @@ zx_mcu_log_shared_region: zx-mcu-log-shared-memories {
     		reg = <0x00 0xe0020000 0x00 0x00021000>;
     		alignment = <0x1000>;
     	};
    +	linux_cma_region: linux-cma-buffers@e4000000 {
    +		compatible = "shared-dma-pool";
    +		reusable;
    +		reg = <0x00 0xe4000000 0x00 0x1c000000>;
    +		linux,cma-default;
    +	};
     };
     
     &mcu_r5fss0_core0 {
    diff --git a/arch/arm64/configs/tisdk_j721s2-evm_d4_defconfig b/arch/arm64/configs/tisdk_j721s2-evm_d4_defconfig
    index 474c861c3..96d933567 100644
    --- a/arch/arm64/configs/tisdk_j721s2-evm_d4_defconfig
    +++ b/arch/arm64/configs/tisdk_j721s2-evm_d4_defconfig
    @@ -753,6 +753,7 @@ CONFIG_GENERIC_EARLY_IOREMAP=y
     # CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
     # CONFIG_IDLE_PAGE_TRACKING is not set
     CONFIG_ARCH_HAS_PTE_DEVMAP=y
    +CONFIG_FRAME_VECTOR=y
     CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y
     # CONFIG_PERCPU_STATS is not set
     # CONFIG_GUP_BENCHMARK is not set
    @@ -1607,6 +1608,7 @@ CONFIG_MICREL_PHY=y
     # CONFIG_TERANETICS_PHY is not set
     # CONFIG_DP83822_PHY is not set
     # CONFIG_DP83TC811_PHY is not set
    +# CONFIG_DP83TC813_PHY is not set
     # CONFIG_DP83848_PHY is not set
     # CONFIG_DP83867_PHY is not set
     # CONFIG_DP83869_PHY is not set
    @@ -2156,7 +2158,489 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=y
     # CONFIG_REGULATOR_VCTRL is not set
     # CONFIG_RC_CORE is not set
     # CONFIG_MEDIA_CEC_SUPPORT is not set
    -# CONFIG_MEDIA_SUPPORT is not set
    +CONFIG_MEDIA_SUPPORT=m
    +# CONFIG_MEDIA_SUPPORT_FILTER is not set
    +# CONFIG_MEDIA_SUBDRV_AUTOSELECT is not set
    +
    +#
    +# Media device types
    +#
    +CONFIG_MEDIA_CAMERA_SUPPORT=y
    +CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
    +CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
    +CONFIG_MEDIA_RADIO_SUPPORT=y
    +CONFIG_MEDIA_SDR_SUPPORT=y
    +CONFIG_MEDIA_PLATFORM_SUPPORT=y
    +CONFIG_MEDIA_TEST_SUPPORT=y
    +# end of Media device types
    +
    +#
    +# Media core support
    +#
    +CONFIG_VIDEO_DEV=m
    +CONFIG_MEDIA_CONTROLLER=y
    +CONFIG_DVB_CORE=m
    +# end of Media core support
    +
    +#
    +# Video4Linux options
    +#
    +CONFIG_VIDEO_V4L2=m
    +CONFIG_VIDEO_V4L2_I2C=y
    +# CONFIG_VIDEO_V4L2_SUBDEV_API is not set
    +# CONFIG_VIDEO_ADV_DEBUG is not set
    +# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
    +CONFIG_V4L2_MEM2MEM_DEV=m
    +# end of Video4Linux options
    +
    +#
    +# Media controller options
    +#
    +# CONFIG_MEDIA_CONTROLLER_DVB is not set
    +# end of Media controller options
    +
    +#
    +# Digital TV options
    +#
    +# CONFIG_DVB_MMAP is not set
    +# CONFIG_DVB_NET is not set
    +CONFIG_DVB_MAX_ADAPTERS=16
    +# CONFIG_DVB_DYNAMIC_MINORS is not set
    +# CONFIG_DVB_DEMUX_SECTION_LOSS_LOG is not set
    +# CONFIG_DVB_ULE_DEBUG is not set
    +# end of Digital TV options
    +
    +#
    +# Media drivers
    +#
    +# CONFIG_RADIO_ADAPTERS is not set
    +CONFIG_VIDEOBUF2_CORE=m
    +CONFIG_VIDEOBUF2_V4L2=m
    +CONFIG_VIDEOBUF2_MEMOPS=m
    +CONFIG_VIDEOBUF2_DMA_CONTIG=m
    +CONFIG_VIDEOBUF2_VMALLOC=m
    +# CONFIG_V4L_PLATFORM_DRIVERS is not set
    +CONFIG_V4L_MEM2MEM_DRIVERS=y
    +
    +#
    +# Chips&Media media platform drivers
    +#
    +CONFIG_VIDEO_WAVE_VPU=m
    +# CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set
    +# CONFIG_VIDEO_IMG_VXD_DEC is not set
    +# CONFIG_VIDEO_IMG_VXE_ENC is not set
    +# CONFIG_DVB_PLATFORM_DRIVERS is not set
    +# CONFIG_SDR_PLATFORM_DRIVERS is not set
    +
    +#
    +# MMC/SDIO DVB adapters
    +#
    +# CONFIG_SMS_SDIO_DRV is not set
    +# CONFIG_V4L_TEST_DRIVERS is not set
    +# CONFIG_DVB_TEST_DRIVERS is not set
    +# end of Media drivers
    +
    +#
    +# Media ancillary drivers
    +#
    +CONFIG_MEDIA_ATTACH=y
    +
    +#
    +# Audio decoders, processors and mixers
    +#
    +# CONFIG_VIDEO_TVAUDIO is not set
    +# CONFIG_VIDEO_TDA7432 is not set
    +# CONFIG_VIDEO_TDA9840 is not set
    +# CONFIG_VIDEO_TEA6415C is not set
    +# CONFIG_VIDEO_TEA6420 is not set
    +# CONFIG_VIDEO_MSP3400 is not set
    +# CONFIG_VIDEO_CS3308 is not set
    +# CONFIG_VIDEO_CS5345 is not set
    +# CONFIG_VIDEO_CS53L32A is not set
    +# CONFIG_VIDEO_TLV320AIC23B is not set
    +# CONFIG_VIDEO_UDA1342 is not set
    +# CONFIG_VIDEO_WM8775 is not set
    +# CONFIG_VIDEO_WM8739 is not set
    +# CONFIG_VIDEO_VP27SMPX is not set
    +# CONFIG_VIDEO_SONY_BTF_MPX is not set
    +# end of Audio decoders, processors and mixers
    +
    +#
    +# RDS decoders
    +#
    +# CONFIG_VIDEO_SAA6588 is not set
    +# end of RDS decoders
    +
    +#
    +# Video decoders
    +#
    +# CONFIG_VIDEO_ADV7180 is not set
    +# CONFIG_VIDEO_ADV7183 is not set
    +# CONFIG_VIDEO_ADV748X is not set
    +# CONFIG_VIDEO_ADV7604 is not set
    +# CONFIG_VIDEO_ADV7842 is not set
    +# CONFIG_VIDEO_BT819 is not set
    +# CONFIG_VIDEO_BT856 is not set
    +# CONFIG_VIDEO_BT866 is not set
    +# CONFIG_VIDEO_KS0127 is not set
    +# CONFIG_VIDEO_ML86V7667 is not set
    +# CONFIG_VIDEO_SAA7110 is not set
    +# CONFIG_VIDEO_SAA711X is not set
    +# CONFIG_VIDEO_TC358743 is not set
    +# CONFIG_VIDEO_TVP514X is not set
    +# CONFIG_VIDEO_TVP5150 is not set
    +# CONFIG_VIDEO_TVP7002 is not set
    +# CONFIG_VIDEO_TW2804 is not set
    +# CONFIG_VIDEO_TW9903 is not set
    +# CONFIG_VIDEO_TW9906 is not set
    +# CONFIG_VIDEO_TW9910 is not set
    +# CONFIG_VIDEO_VPX3220 is not set
    +# CONFIG_VIDEO_MAX9286 is not set
    +
    +#
    +# Video and audio decoders
    +#
    +# CONFIG_VIDEO_SAA717X is not set
    +# CONFIG_VIDEO_CX25840 is not set
    +# end of Video decoders
    +
    +#
    +# Video encoders
    +#
    +# CONFIG_VIDEO_SAA7127 is not set
    +# CONFIG_VIDEO_SAA7185 is not set
    +# CONFIG_VIDEO_ADV7170 is not set
    +# CONFIG_VIDEO_ADV7175 is not set
    +# CONFIG_VIDEO_ADV7343 is not set
    +# CONFIG_VIDEO_ADV7393 is not set
    +# CONFIG_VIDEO_ADV7511 is not set
    +# CONFIG_VIDEO_AD9389B is not set
    +# CONFIG_VIDEO_AK881X is not set
    +# CONFIG_VIDEO_THS8200 is not set
    +# end of Video encoders
    +
    +#
    +# Video improvement chips
    +#
    +# CONFIG_VIDEO_UPD64031A is not set
    +# CONFIG_VIDEO_UPD64083 is not set
    +# end of Video improvement chips
    +
    +#
    +# Audio/Video compression chips
    +#
    +# CONFIG_VIDEO_SAA6752HS is not set
    +# end of Audio/Video compression chips
    +
    +#
    +# SDR tuner chips
    +#
    +# CONFIG_SDR_MAX2175 is not set
    +# end of SDR tuner chips
    +
    +#
    +# Miscellaneous helper chips
    +#
    +# CONFIG_VIDEO_THS7303 is not set
    +# CONFIG_VIDEO_M52790 is not set
    +# CONFIG_VIDEO_I2C is not set
    +# CONFIG_VIDEO_ST_MIPID02 is not set
    +# end of Miscellaneous helper chips
    +
    +#
    +# Camera sensor devices
    +#
    +# CONFIG_VIDEO_HI556 is not set
    +# CONFIG_VIDEO_IMX214 is not set
    +# CONFIG_VIDEO_IMX219 is not set
    +# CONFIG_VIDEO_IMX258 is not set
    +# CONFIG_VIDEO_IMX274 is not set
    +# CONFIG_VIDEO_IMX290 is not set
    +# CONFIG_VIDEO_IMX319 is not set
    +# CONFIG_VIDEO_IMX355 is not set
    +# CONFIG_VIDEO_IMX390 is not set
    +# CONFIG_VIDEO_OV2312 is not set
    +# CONFIG_VIDEO_OV2640 is not set
    +# CONFIG_VIDEO_OV2659 is not set
    +# CONFIG_VIDEO_OV2680 is not set
    +# CONFIG_VIDEO_OV2685 is not set
    +# CONFIG_VIDEO_OV5640 is not set
    +# CONFIG_VIDEO_OV5645 is not set
    +# CONFIG_VIDEO_OV5647 is not set
    +# CONFIG_VIDEO_OV6650 is not set
    +# CONFIG_VIDEO_OV5670 is not set
    +# CONFIG_VIDEO_OV5675 is not set
    +# CONFIG_VIDEO_OV5695 is not set
    +# CONFIG_VIDEO_OV7251 is not set
    +# CONFIG_VIDEO_OV772X is not set
    +# CONFIG_VIDEO_OV7640 is not set
    +# CONFIG_VIDEO_OV7670 is not set
    +# CONFIG_VIDEO_OV7740 is not set
    +# CONFIG_VIDEO_OV8856 is not set
    +# CONFIG_VIDEO_OV9640 is not set
    +# CONFIG_VIDEO_OV9650 is not set
    +# CONFIG_VIDEO_OV13858 is not set
    +# CONFIG_VIDEO_VS6624 is not set
    +# CONFIG_VIDEO_MT9M001 is not set
    +# CONFIG_VIDEO_MT9M032 is not set
    +# CONFIG_VIDEO_MT9M111 is not set
    +# CONFIG_VIDEO_MT9P031 is not set
    +# CONFIG_VIDEO_MT9T001 is not set
    +# CONFIG_VIDEO_MT9T112 is not set
    +# CONFIG_VIDEO_MT9V011 is not set
    +# CONFIG_VIDEO_MT9V032 is not set
    +# CONFIG_VIDEO_MT9V111 is not set
    +# CONFIG_VIDEO_SR030PC30 is not set
    +# CONFIG_VIDEO_NOON010PC30 is not set
    +# CONFIG_VIDEO_M5MOLS is not set
    +# CONFIG_VIDEO_RDACM20 is not set
    +# CONFIG_VIDEO_RJ54N1 is not set
    +# CONFIG_VIDEO_S5K6AA is not set
    +# CONFIG_VIDEO_S5K6A3 is not set
    +# CONFIG_VIDEO_S5K4ECGX is not set
    +# CONFIG_VIDEO_S5K5BAF is not set
    +# CONFIG_VIDEO_SMIAPP is not set
    +# CONFIG_VIDEO_ET8EK8 is not set
    +# end of Camera sensor devices
    +
    +#
    +# Lens drivers
    +#
    +# CONFIG_VIDEO_AD5820 is not set
    +# CONFIG_VIDEO_AK7375 is not set
    +# CONFIG_VIDEO_DW9714 is not set
    +# CONFIG_VIDEO_DW9768 is not set
    +# CONFIG_VIDEO_DW9807_VCM is not set
    +# end of Lens drivers
    +
    +#
    +# Flash devices
    +#
    +# CONFIG_VIDEO_ADP1653 is not set
    +# CONFIG_VIDEO_LM3560 is not set
    +# CONFIG_VIDEO_LM3646 is not set
    +# end of Flash devices
    +
    +#
    +# Video serializers and deserializers
    +#
    +# CONFIG_VIDEO_DS90UB953 is not set
    +# CONFIG_VIDEO_DS90UB960 is not set
    +# end of Video serializers and deserializers
    +
    +#
    +# SPI helper chips
    +#
    +# end of SPI helper chips
    +
    +CONFIG_MEDIA_TUNER=m
    +
    +#
    +# Customize TV tuners
    +#
    +# CONFIG_MEDIA_TUNER_SIMPLE is not set
    +# CONFIG_MEDIA_TUNER_TDA18250 is not set
    +# CONFIG_MEDIA_TUNER_TDA8290 is not set
    +# CONFIG_MEDIA_TUNER_TDA827X is not set
    +# CONFIG_MEDIA_TUNER_TDA18271 is not set
    +# CONFIG_MEDIA_TUNER_TDA9887 is not set
    +# CONFIG_MEDIA_TUNER_TEA5761 is not set
    +# CONFIG_MEDIA_TUNER_TEA5767 is not set
    +# CONFIG_MEDIA_TUNER_MT20XX is not set
    +# CONFIG_MEDIA_TUNER_MT2060 is not set
    +# CONFIG_MEDIA_TUNER_MT2063 is not set
    +# CONFIG_MEDIA_TUNER_MT2266 is not set
    +# CONFIG_MEDIA_TUNER_MT2131 is not set
    +# CONFIG_MEDIA_TUNER_QT1010 is not set
    +# CONFIG_MEDIA_TUNER_XC2028 is not set
    +# CONFIG_MEDIA_TUNER_XC5000 is not set
    +# CONFIG_MEDIA_TUNER_XC4000 is not set
    +# CONFIG_MEDIA_TUNER_MXL5005S is not set
    +# CONFIG_MEDIA_TUNER_MXL5007T is not set
    +# CONFIG_MEDIA_TUNER_MC44S803 is not set
    +# CONFIG_MEDIA_TUNER_MAX2165 is not set
    +# CONFIG_MEDIA_TUNER_TDA18218 is not set
    +# CONFIG_MEDIA_TUNER_FC0011 is not set
    +# CONFIG_MEDIA_TUNER_FC0012 is not set
    +# CONFIG_MEDIA_TUNER_FC0013 is not set
    +# CONFIG_MEDIA_TUNER_TDA18212 is not set
    +# CONFIG_MEDIA_TUNER_E4000 is not set
    +# CONFIG_MEDIA_TUNER_FC2580 is not set
    +# CONFIG_MEDIA_TUNER_M88RS6000T is not set
    +# CONFIG_MEDIA_TUNER_TUA9001 is not set
    +# CONFIG_MEDIA_TUNER_SI2157 is not set
    +# CONFIG_MEDIA_TUNER_IT913X is not set
    +# CONFIG_MEDIA_TUNER_R820T is not set
    +# CONFIG_MEDIA_TUNER_MXL301RF is not set
    +# CONFIG_MEDIA_TUNER_QM1D1C0042 is not set
    +# CONFIG_MEDIA_TUNER_QM1D1B0004 is not set
    +# end of Customize TV tuners
    +
    +#
    +# Customise DVB Frontends
    +#
    +
    +#
    +# Multistandard (satellite) frontends
    +#
    +# CONFIG_DVB_STB0899 is not set
    +# CONFIG_DVB_STB6100 is not set
    +# CONFIG_DVB_STV090x is not set
    +# CONFIG_DVB_STV0910 is not set
    +# CONFIG_DVB_STV6110x is not set
    +# CONFIG_DVB_STV6111 is not set
    +# CONFIG_DVB_MXL5XX is not set
    +# CONFIG_DVB_M88DS3103 is not set
    +
    +#
    +# Multistandard (cable + terrestrial) frontends
    +#
    +# CONFIG_DVB_DRXK is not set
    +# CONFIG_DVB_TDA18271C2DD is not set
    +# CONFIG_DVB_SI2165 is not set
    +# CONFIG_DVB_MN88472 is not set
    +# CONFIG_DVB_MN88473 is not set
    +
    +#
    +# DVB-S (satellite) frontends
    +#
    +# CONFIG_DVB_CX24110 is not set
    +# CONFIG_DVB_CX24123 is not set
    +# CONFIG_DVB_MT312 is not set
    +# CONFIG_DVB_ZL10036 is not set
    +# CONFIG_DVB_ZL10039 is not set
    +# CONFIG_DVB_S5H1420 is not set
    +# CONFIG_DVB_STV0288 is not set
    +# CONFIG_DVB_STB6000 is not set
    +# CONFIG_DVB_STV0299 is not set
    +# CONFIG_DVB_STV6110 is not set
    +# CONFIG_DVB_STV0900 is not set
    +# CONFIG_DVB_TDA8083 is not set
    +# CONFIG_DVB_TDA10086 is not set
    +# CONFIG_DVB_TDA8261 is not set
    +# CONFIG_DVB_VES1X93 is not set
    +# CONFIG_DVB_TUNER_ITD1000 is not set
    +# CONFIG_DVB_TUNER_CX24113 is not set
    +# CONFIG_DVB_TDA826X is not set
    +# CONFIG_DVB_TUA6100 is not set
    +# CONFIG_DVB_CX24116 is not set
    +# CONFIG_DVB_CX24117 is not set
    +# CONFIG_DVB_CX24120 is not set
    +# CONFIG_DVB_SI21XX is not set
    +# CONFIG_DVB_TS2020 is not set
    +# CONFIG_DVB_DS3000 is not set
    +# CONFIG_DVB_MB86A16 is not set
    +# CONFIG_DVB_TDA10071 is not set
    +
    +#
    +# DVB-T (terrestrial) frontends
    +#
    +# CONFIG_DVB_SP8870 is not set
    +# CONFIG_DVB_SP887X is not set
    +# CONFIG_DVB_CX22700 is not set
    +# CONFIG_DVB_CX22702 is not set
    +# CONFIG_DVB_S5H1432 is not set
    +# CONFIG_DVB_DRXD is not set
    +# CONFIG_DVB_L64781 is not set
    +# CONFIG_DVB_TDA1004X is not set
    +# CONFIG_DVB_NXT6000 is not set
    +# CONFIG_DVB_MT352 is not set
    +# CONFIG_DVB_ZL10353 is not set
    +# CONFIG_DVB_DIB3000MB is not set
    +# CONFIG_DVB_DIB3000MC is not set
    +# CONFIG_DVB_DIB7000M is not set
    +# CONFIG_DVB_DIB7000P is not set
    +# CONFIG_DVB_DIB9000 is not set
    +# CONFIG_DVB_TDA10048 is not set
    +# CONFIG_DVB_AF9013 is not set
    +# CONFIG_DVB_EC100 is not set
    +# CONFIG_DVB_STV0367 is not set
    +# CONFIG_DVB_CXD2820R is not set
    +# CONFIG_DVB_CXD2841ER is not set
    +# CONFIG_DVB_RTL2830 is not set
    +# CONFIG_DVB_RTL2832 is not set
    +# CONFIG_DVB_SI2168 is not set
    +# CONFIG_DVB_ZD1301_DEMOD is not set
    +
    +#
    +# DVB-C (cable) frontends
    +#
    +# CONFIG_DVB_VES1820 is not set
    +# CONFIG_DVB_TDA10021 is not set
    +# CONFIG_DVB_TDA10023 is not set
    +# CONFIG_DVB_STV0297 is not set
    +
    +#
    +# ATSC (North American/Korean Terrestrial/Cable DTV) frontends
    +#
    +# CONFIG_DVB_NXT200X is not set
    +# CONFIG_DVB_OR51211 is not set
    +# CONFIG_DVB_OR51132 is not set
    +# CONFIG_DVB_BCM3510 is not set
    +# CONFIG_DVB_LGDT330X is not set
    +# CONFIG_DVB_LGDT3305 is not set
    +# CONFIG_DVB_LGDT3306A is not set
    +# CONFIG_DVB_LG2160 is not set
    +# CONFIG_DVB_S5H1409 is not set
    +# CONFIG_DVB_AU8522_DTV is not set
    +# CONFIG_DVB_AU8522_V4L is not set
    +# CONFIG_DVB_S5H1411 is not set
    +
    +#
    +# ISDB-T (terrestrial) frontends
    +#
    +# CONFIG_DVB_S921 is not set
    +# CONFIG_DVB_DIB8000 is not set
    +# CONFIG_DVB_MB86A20S is not set
    +
    +#
    +# ISDB-S (satellite) & ISDB-T (terrestrial) frontends
    +#
    +# CONFIG_DVB_TC90522 is not set
    +# CONFIG_DVB_MN88443X is not set
    +
    +#
    +# Digital terrestrial only tuners/PLL
    +#
    +# CONFIG_DVB_PLL is not set
    +# CONFIG_DVB_TUNER_DIB0070 is not set
    +# CONFIG_DVB_TUNER_DIB0090 is not set
    +
    +#
    +# SEC control devices for DVB-S
    +#
    +# CONFIG_DVB_DRX39XYJ is not set
    +# CONFIG_DVB_LNBH25 is not set
    +# CONFIG_DVB_LNBH29 is not set
    +# CONFIG_DVB_LNBP21 is not set
    +# CONFIG_DVB_LNBP22 is not set
    +# CONFIG_DVB_ISL6405 is not set
    +# CONFIG_DVB_ISL6421 is not set
    +# CONFIG_DVB_ISL6423 is not set
    +# CONFIG_DVB_A8293 is not set
    +# CONFIG_DVB_LGS8GL5 is not set
    +# CONFIG_DVB_LGS8GXX is not set
    +# CONFIG_DVB_ATBM8830 is not set
    +# CONFIG_DVB_TDA665x is not set
    +# CONFIG_DVB_IX2505V is not set
    +# CONFIG_DVB_M88RS2000 is not set
    +# CONFIG_DVB_AF9033 is not set
    +# CONFIG_DVB_HORUS3A is not set
    +# CONFIG_DVB_ASCOT2E is not set
    +# CONFIG_DVB_HELENE is not set
    +
    +#
    +# Common Interface (EN50221) controller drivers
    +#
    +# CONFIG_DVB_CXD2099 is not set
    +# CONFIG_DVB_SP2 is not set
    +# end of Customise DVB Frontends
    +
    +#
    +# Tools to develop new frontends
    +#
    +# CONFIG_DVB_DUMMY_FE is not set
    +# end of Media ancillary drivers
     
     #
     # Graphics support
    @@ -2406,6 +2890,7 @@ CONFIG_SYNC_FILE=y
     # CONFIG_DMABUF_SELFTESTS is not set
     CONFIG_DMABUF_HEAPS=y
     CONFIG_DMABUF_HEAPS_SYSTEM=y
    +# CONFIG_DMABUF_HEAPS_CMA is not set
     CONFIG_DMABUF_HEAPS_CARVEOUT=y
     # end of DMABUF options
     
    @@ -3481,7 +3966,18 @@ CONFIG_DMA_NONCOHERENT_MMAP=y
     CONFIG_DMA_COHERENT_POOL=y
     CONFIG_DMA_REMAP=y
     CONFIG_DMA_DIRECT_REMAP=y
    -# CONFIG_DMA_CMA is not set
    +CONFIG_DMA_CMA=y
    +# CONFIG_DMA_PERNUMA_CMA is not set
    +
    +#
    +# Default contiguous memory area size:
    +#
    +CONFIG_CMA_SIZE_MBYTES=64
    +CONFIG_CMA_SIZE_SEL_MBYTES=y
    +# CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set
    +# CONFIG_CMA_SIZE_SEL_MIN is not set
    +# CONFIG_CMA_SIZE_SEL_MAX is not set
    +CONFIG_CMA_ALIGNMENT=8
     # CONFIG_DMA_API_DEBUG is not set
     CONFIG_SGL_ALLOC=y
     CONFIG_CPU_RMAP=y
    diff --git a/drivers/media/platform/chips-media/wave5/wave5-vpu.c b/drivers/media/platform/chips-media/wave5/wave5-vpu.c
    index 11388a6ad..e286a42b8 100644
    --- a/drivers/media/platform/chips-media/wave5/wave5-vpu.c
    +++ b/drivers/media/platform/chips-media/wave5/wave5-vpu.c
    @@ -23,6 +23,8 @@
     #define WAVE5_IS_ENC BIT(0)
     #define WAVE5_IS_DEC BIT(1)
     
    +#define DEBUG
    +
     struct wave5_match_data {
     	int flags;
     	const char *fw_name;
    @@ -221,6 +223,7 @@ static int wave5_vpu_probe(struct platform_device *pdev)
     	const struct wave5_match_data *match_data;
     	struct resource sram;
     
    +	printk("\033[31mDebug: file:%s, func:%s, line=%d \033[0m \n",__FILE__,__FUNCTION__,__LINE__);
     	match_data = device_get_match_data(&pdev->dev);
     	if (!match_data) {
     		dev_err(&pdev->dev, "missing device match data\n");
    @@ -339,6 +342,12 @@ static int wave5_vpu_probe(struct platform_device *pdev)
     		goto err_enc_unreg;
     	}
     
    +	printk("\033[31mDebug: file:%s, func:%s, line=%d Added wave5 driver with caps: %s %s and product code: 0x%x \033[0m \n",
    +			__FILE__,__FUNCTION__,__LINE__,
    +		(match_data->flags & WAVE5_IS_ENC) ? "'ENCODE'" : "",
    +		(match_data->flags & WAVE5_IS_DEC) ? "'DECODE'" : "",
    +		dev->product_code);
    +
     	dev_dbg(&pdev->dev, "Added wave5 driver with caps: %s %s and product code: 0x%x\n",
     		(match_data->flags & WAVE5_IS_ENC) ? "'ENCODE'" : "",
     		(match_data->flags & WAVE5_IS_DEC) ? "'DECODE'" : "",
    diff --git a/scripts/Makefile.modinst b/scripts/Makefile.modinst
    index 5a4579e76..536ec5fe2 100644
    --- a/scripts/Makefile.modinst
    +++ b/scripts/Makefile.modinst
    @@ -25,7 +25,7 @@ quiet_cmd_modules_install = INSTALL $@
     
     # Modules built outside the kernel source tree go into extra by default
     INSTALL_MOD_DIR ?= extra
    -ext-mod-dir = $(INSTALL_MOD_DIR)$(subst $(patsubst %/,%,$(KBUILD_EXTMOD)),,$(@D))
    +ext-mod-dir = $(INSTALL_MOD_DIR)
     
     modinst_dir = $(if $(KBUILD_EXTMOD),$(ext-mod-dir),kernel/$(@D))
     
    

  • Hi Sarabech:

                       Our kernel uses the TDA4VE sdk linux 0806 version, but has been modified to some extent. See the attached file for defconfig.

                       6406.t1gc_defconfig.txt

  • Hello, 

    Thanks for the information Gaston. I will try to look at this by EOW if not early next week.

    Thanks,
    Sarabesh S.

  • Hi Gaston, 

    1. Is this error reproducible on the latest SDK?
    2. Have you made any changes to the multi-cam-code app, if so please share them.
    3. Are you using the demo app with camera or filesrc?

    Thanks,
    Sarabesh S.

  • Hi Sarabesh:

                      

    1. Is this error reproducible on the latest SDK?We are using 0806 sdk, the latest demo is not tested
    2. Have you made any changes to the multi-cam-code app, if so please share them.

             

    diff --git a/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c b/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c
    index f7027333d..65e0976da 100755
    --- a/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c
    +++ b/vision_apps/apps/basic_demos/app_multi_cam_codec/main.c
    @@ -734,7 +734,7 @@ vx_int32 app_multi_cam_codec_main(vx_int32 argc, vx_char* argv[])
             printf("YUV Input selected. VISS, AEWB and Mosaic nodes will be bypassed. \n");
             obj->enable_viss = 0;
             obj->enable_aewb = 0;
    -        obj->enable_mosaic = 0;
    +        obj->enable_mosaic = 1;
         }
         else
         {
    @@ -1787,6 +1787,7 @@ static vx_status app_run_graph(AppObj *obj)
     
         for(frame_id = 0; frame_id < obj->num_frames_to_run; frame_id++)
         {
    +        printf("\033[34mDebug: file:%s, func:%s, line=%d frame_id = %d \033[0m \n",__FILE__,__FUNCTION__,__LINE__, frame_id);
             if(obj->write_file == 1)
             {
                 if((obj->captureObj.en_out_capture_write == 1) && (status == VX_SUCCESS))
    @@ -1987,13 +1988,13 @@ static void set_sensor_defaults(SensorObj *sensorObj)
         sensorObj->num_cameras_enabled = 1;
         sensorObj->ch_mask = 0x1;
         sensorObj->usecase_option = APP_SENSOR_FEATURE_CFG_UC0;
    -    sensorObj->is_interactive = 0;
    +    sensorObj->is_interactive = 1;
     }
     
     static void set_ref_pool_defaults(AppGraphParamRefPool *poolObj)
     {
         poolObj->width          = 1920;
    -    poolObj->height         = 1080;
    +    poolObj->height         = 1536;
         poolObj->format         = VX_DF_IMAGE_NV12;
         poolObj->num_planes     = 2;
         poolObj->num_channels   = 1;
    @@ -2037,7 +2038,9 @@ static void app_querry_param_set(AppObj *obj)
         {
             fflush (stdin);
             printf ("Capture->Encode Selection Yes(1)/No(0)\n");
    -        ch = getchar();
    +        /* ch = getchar(); */
    +		ch = '1';
    +		printf("\033[32mDebug: file:%s, func:%s, line=%d ch = %c \033[0m \n",__FILE__,__FUNCTION__,__LINE__, ch);
             obj->encode = ch - '0';
     
             if((obj->encode > 1) || (obj->encode < 0))
    @@ -2048,13 +2051,15 @@ static void app_querry_param_set(AppObj *obj)
             {
                 encSelected = vx_true_e;
             }
    -        ch = getchar();
    +        /* ch = getchar(); */
         }
         while (decSelected != vx_true_e)
         {
             fflush (stdin);
             printf ("Decode->Display Selection Yes(1)/No(0)\n");
    -        ch = getchar();
    +        /* ch = getchar(); */
    +		ch = '1';
    +		printf("\033[32mDebug: file:%s, func:%s, line=%d ch = %c \033[0m \n",__FILE__,__FUNCTION__,__LINE__, ch);
             obj->decode = ch - '0';
     
             if((obj->decode > 1) || (obj->decode < 0))
    @@ -2065,21 +2070,22 @@ static void app_querry_param_set(AppObj *obj)
             {
                 decSelected = vx_true_e;
             }
    -        ch = getchar();
    +        /* ch = getchar(); */
         }
         while (obj->sensorObj.num_cameras_enabled == 0)
         {
             fflush(stdin);
             printf("Max number of cameras supported by sensor %s = %d \n", obj->sensorObj.sensor_name, obj->sensorObj.sensorParams.num_channels);
             printf("Please enter number of channels to be enabled \n");
    -        ch = getchar();
    +        /* ch = getchar(); */
    +        ch = '4';
             obj->sensorObj.num_cameras_enabled = ch - '0';
             if(((obj->sensorObj.num_cameras_enabled > obj->sensorObj.sensorParams.num_channels) || (obj->sensorObj.num_cameras_enabled <= 0)))
             {
                 obj->sensorObj.num_cameras_enabled = 0;
                 printf("Invalid selection %c. Try again \n", ch);
             }
    -        ch = getchar();
    +        /* ch = getchar(); */
         }
         obj->num_ch = obj->sensorObj.num_cameras_enabled;
         obj->sensorObj.ch_mask = (1<<obj->sensorObj.num_cameras_enabled) - 1;
    diff --git a/vision_apps/modules/src/app_sensor_module.c b/vision_apps/modules/src/app_sensor_module.c
    index c934ffd28..bf6c0d944 100755
    --- a/vision_apps/modules/src/app_sensor_module.c
    +++ b/vision_apps/modules/src/app_sensor_module.c
    @@ -200,14 +200,14 @@ vx_status app_querry_sensor(SensorObj *sensorObj)
             sensorObj->num_cameras_enabled = 0;
             while(sensorObj->num_cameras_enabled == 0)
             {
    -            char c;
    -            int ret;
    -            int num_cameras;
    +            /* char c; */
    +            int ret = 0;
    +            int num_cameras = 4;
                 fflush(stdin);
                 printf("Max number of cameras supported by sensor %s = %d \n", sensorObj->sensor_name, sensorObj->sensorParams.num_channels);
                 printf("Please enter number of cameras to be enabled \n");
    -            ret = scanf("%d", &num_cameras);
    -            while ((c = getchar()) != '\n' && c != EOF);
    +            /* ret = scanf("%d", &num_cameras); */
    +            /* while ((c = getchar()) != '\n' && c != EOF); */
                 sensorObj->num_cameras_enabled = num_cameras;
                 if( (1==ret) && ((sensorObj->num_cameras_enabled > sensorObj->sensorParams.num_channels) || (sensorObj->num_cameras_enabled <= 0)) )
                 {
    @@ -221,8 +221,8 @@ vx_status app_querry_sensor(SensorObj *sensorObj)
     		{
     			fflush(stdin);
     			printf("Please enter number of csi-rx channel  1:svm  0:rv  \n");
    -			ch = getchar();
    -			//ch = '0';
    +			/* ch = getchar(); */
    +			ch = '0';
     			sensorObj->csi_rx_channel = ch - '0';
     			if((sensorObj->csi_rx_channel > 1) || (sensorObj->csi_rx_channel < 0)) {
     				printf("Invalid selection %c. Try again \n", ch);
    

             3. Are you using the demo app with camera or filesrc?

                 In our environment, the vx_app_multi_cam demo code is ok

  • Ok I will try to replicate. However, please expect a delay since I am out of office till the 23rd. I will respond as I become available.

    Thank you,
    Sarabesh S.