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.

No V4L2 Media Controller Traces with LoggerSMDump Utility

Hello,

I am debugging v4l2 capture vs. OMX capture and I would like to see the logs generated with LoggerSMDump utlity for both. At the moment, I can only see the logs in the case of OMX capture and no messages (apart from the initial setup messages) are generated for v4l2. 

I have followed the instructions on how to enable debug when inserting the v4l2 capture module, i.e.:

$ insmod ti81xxvin.ko debug=1

 but no success in getting the logs so far.

Please, can you help with this? Would I need to rebuild the M3 firmware also to enable v4l2 logging or is there something else?

Please note that I can do v4l2 capture at the moment and it's the logging which I need to make work.

Thank you,

Przemek Gajos

  • Hello,

    LoggerSMDump is a A8 utility provided in the EZSDK that prints the debug logs generated by the Media Controller. Check this wiki page.
    You could Viewing traces from DSP on A8 as well.
    processors.wiki.ti.com/.../OMX_Viewing_Media_Controller_Traces

    To enable debug of V4L2:

    insmod ti81xxvin.ko debug=1

    processors.wiki.ti.com/.../TI81XX_PSP_VIDEO_CAPTURE_Driver_User_Guide

    If you are using gstreamer & v4l2src element you could add --gst-debug=v4l2:5 to the pipeline.



    BR
    Margarita
  • Hello Margarita,

    Thank you for your answer.

    I have already followed the instructions (if you read my initial post) to insert the capture module as:
    $ insmod ti81xxvin.ko debug=1

    but no logs are generated when capturing (only the initial LoggerSMDump setup messages are printed out).

    Is there anything in the M3 firmware which needs to be modified to enable v4l2 logs?

    Regards,
    Przemek
  • Hello,

    V4l2 is running on A8 core. Are you able to get prints from insmod ti81xxvin.ko debug=1?

    LoggerSMDump is printing the debug messages from vpss and vicp which are running on M3 cores.

    BR
    Margarita
  • Hi,

    Will " insmod ti81xxvin.ko debug=1" enable the messages from the v4l2 capture driver? I can do it.

    But let me specify and please correct me if I am wrong:
    v4l2 capture at some point configures port vip[1] which I am using in this case and this is done through vpss which runs on M3, correct?
    If the above is correct, the with LoggerSMDump I should see the messages from M3 for that vip port initialisation... but I do not see any.

    Clarification on what I am doing:
    I am having problems to do dual (vip[0] & vip[1]) v4l2 capture + dei scaling so after your advice (e2e.ti.com/.../475937
    I am trying to replace v4l2 capture with OMX capture. However, with OMX capture I am having a problem to capture RGB24 data from VIP[1]. I am aware that officially RGB24 on vip[1] is not supported by OMX capture but since it is a must for our product (it is fixed that we have RGB24 data on vip[1]) I need to make it work.

    What I am trying to achieve:
    so I am trying to make RGB24 data OMX capture work on vip[1]... And I have been successful doing it with v4l2 capture so I think it can be done and at the moment I am looking into what differences there are in vip configurations when doing:
    - v4l2 capture (working capture)
    - OMX capture (non-working, OMX capt component locked, no callbacks)

    Przemek
  • Hi,

    Is there a way to print out from M3 firmware source? I do not mean by using LoggerSMDump but a straight-forward print...

    I found Vps_printf() in source but I do not see my prints. Is this the function to use?
    I am able to rebuild M3 firmware: would I have to modify a default firmware configuration and rebuild M3 firmware? I already tried to set DEBUG level as default in vps_config.h but it did not work..

    Thanks for any help on this,
    Przemek

  • Hello,

    Check these topics:
    e2e.ti.com/.../238911
    e2e.ti.com/.../185162


    Regarding the v4l2 you could use printk and rebuild the kernel modules.

    BR
    Margarita

  • Thank you for the links!

    Przemek

  • Hello Margarita,

    To debug M3 firmware, I now need to get Vps_print logs from it.

    I have tried remote_debug_client.out as:

    $./remote_debug_client.out bfef0000

    (where bfef0000 is the address from section .bss:extMemNonCache:remoteDebugCoreShm of .xem3.map file) 

    but the only output I see is:

    [c6xdsp ] Remote Debug Shared Memory @ 0xbfef0000
    [m3video] Remote Debug Shared Memory @ 0xbfef5020
    [m3vpss ] Remote Debug Shared Memory @ 0xbfefa040

    1) Am I specifying the incorrect address to remote_debug_client.out?

    2) In the output from the log utility, should the [m3vpss ] line point to the same address as I give as the argument, that is bfef0000

    Clearly, the output address for m3vpss is different than specified as argument:

    [m3vpss ] Remote Debug Shared Memory @ 0xbfefa040

    Would this discrepancy be the reason for not getting M3 Vps_prints?  If yes, how to fix it?

    Thanks for your help,

    Przemek

  • Hello,

    You could check these threads regarding vps_print & remote_debug_client.out :

    e2e.ti.com/.../872274
    e2e.ti.com/.../1362689
    e2e.ti.com/.../178312

    BR
    Margarita