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.

Compiler/TDA2EXEVM: Linux system and vps driver

Part Number: TDA2EXEVM


Tool/software: TI C/C++ Compiler

Hi,

I have a piece of tda2exevm in my hand. I am using vsdk3.08 for development. Now the system can start normally, but I find it very difficult to debug or add my own camera driver and display. This is similar to what I have on Linux Big difference, how do I start my own camera driver? And the debugging method for locating hardware-related driver problems?

I saw the following documentation on the use of vps, but I did not find it. Can you tell me where it is?

Thank you!

  • Hi,

    Refer the below page for VPS user-guide

    file: ti_components/drivers/pdk_01_10_04_05/docs/userguide/html/PDK_TDA_VPS_User_Guide.html

    For other queries, our expert will respond

    Thanks

    Gaviraju

  • Hi,

    This document describes the operation through ccs, I want to know how to debug and operate vps directly on the linux system.

  • Hi,

    You need to use CCS and connect to IPU, in order to debug capture & display module.

    For Linux debugging, use standard Linux debug modules.

    Regards,

    Brijesh  

  • Hi,

    After reading your answer, I am still very vague. For vsdk3.08, the driver for video capture does not use the v4l2 framework for linux + rtos. What you call "For Linux debugging, use standard Linux debug modules" is specific What is it?

  • Hi yacc,

    But if you are using rtos for configuring sensor, i think you should use CCS for debugging, isn't it? 

    Regards,

    Brijesh

  • Hi brijesh

    Oh my god!

    I don't know how I can describe my difficulties to you. I want to know, how to use the linux+rtos system, can I only use ccs to debug the camera driver part? Do I need a hardware emulator for debugging with ccs?

  • Hi yacc,

    It depends on the HW/SW architecture.

    By default in vision sdk, sensor are configured from IPU, but you could change it, allocate this specific i2c instance to Linux and then can use Linux to configure sensor.. 

    Rgds,

    Brijesh 

  • Hi, brijesh

    Thank you for your reply, your answer gave me hope.

    But I don’t know how to modify the default camera configuration from ipu to linux.

    1. Please tell me the detailed modification steps


    2. If you say, I changed it to assign this specific i2c instance to Linux, and then the sensor can be configured using Linux.

    Can I still use the existing link and chain methods to get the camera video stream? Or do I need to call the v4l2

    architecture of Linux to get the video stream?

  • Hi yacc,

    Yes, once the i2c instance is allocated to Linux, you should be able to configure sensor from Linux and can run the same usecase, with minor modifications. 

    Which input interface are you using? is it on VIP?

    Rgs,

    Brijesh 

  • Hi brijesh,

    The video input is a VIP interface. I am using the i2c1 interface.

    How can I allocate this interface to the Linux system instead of RTOS?

    As you said, once I allocate i2c to the linux system, I can use the linx system to issue i2c

    read and write configuration commands to the camera, but to obtain the video stream, it is not

    necessary to use the Linux v4l2 architecture, right?

  • Hi yacc,

    Please refer to Linux documentation about dtb files. The resources are reserved/allocated in the Linux dtb files. So if you want to remove i2c1 from Linux, you need to remote it from Linux and then you can use it from ipu. 

    the other way is, you could configure sensor from Linux only by accessing i2c1 and then run usecase to capture data via VIP. This is also possible. 

    Yes, you could use vision sdk to configure VIP port, so not necessary to use V4L2. 

    You could select one of these frameworks and could configure VIP port to capture..

    Regards,

    Brijesh

  • Hi brijesh

    I use the i2cdetect tool to detect the devices under the i2c4 bus in the Linux system, and the following information is prompted:

    root@root i2cdetect -l
    i2c-4 i2c OMAP I2C adapter I2C adapter

    root@root i2cdetect -r -y 4
    0 1 2 3 4 5 6 7 8 9 a b c d e f[ 517.423287] [drivers/clk/ti/clkctrl.c|_omap4_clkctrl_clk_enable:163]

    00: [ 518.481549] omap_i2c 4807c000.i2c: controller timed out
    -- [ 519.521546] omap_i2c 4807c000.i2c: controller timed out
    -- [ 520.641574] omap_i2c 4807c000.i2c: controller timed out
    -- [ 521.761547] omap_i2c 4807c000.i2c: controller timed out

    How can I modify this question, thanks

  • Hi yacc,

    Can you just try "i2cdetect -y 4"?

    Any specific reason for using -r option? 

    Regards,

    Brijesh

  • Hi brijesh

    After I operate as you said, this question will still appear. I want to know, my current camera is connected to i2c5, how can i use i2c5 bus in linux system, other cores do not use i2c5?

  • Hi yacc,

    Please allocate this i2c instance on Linux by modifying Linux dtb file. Can you please follow below FAQ for updating Linux dtb files?

    e2e.ti.com/.../937619

    Regards,

    Brijesh