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.

TDA4VM: TDA4 DSI interface display failed with vision-app run ./vx_app_tidl

Part Number: TDA4VM

Hi, TI support team.

Using PSDKLA8.1. So we choose to use DSI interface to output image (superframe: 2*640x480 as 1280x480) in RTOS.

Refer to this case, So we modified the resoluation to 1280x480 in Vision-apps, and replaced Elephant image by using 1280x480 in TI-DL demo

We made chages: 1. RTOS Driver and 2. Vision-apps.

RTOS-Driver-and-Vision-apps.diff
Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
From 28c8c2592f73f574dfdcaae77f501dee20c1550c Mon Sep 17 00:00:00 2001
From: peifeng.zhang <peifeng.zhang@ecarxgroup.com>
Date: Tue, 14 Feb 2023 15:12:37 +0800
Subject: [PATCH] [BSP] DSI bring-up For DLP Module & update RTOS driver
Change-Id: Ib71f849a41182c799ef52b636b9a24224286a51a
---
diff --git a/ti-processor-sdk-rtos-j721e-evm-08_01_00_13/pdk_jacinto_08_01_00_36/packages/ti/board/src/devices/common/common.c b/ti-processor-sdk-rtos-j721e-evm-08_01_00_13/pdk_jacinto_08_01_00_36/packages/ti/board/src/devices/common/common.c
index 6541a5a..605d598 100755
--- a/ti-processor-sdk-rtos-j721e-evm-08_01_00_13/pdk_jacinto_08_01_00_36/packages/ti/board/src/devices/common/common.c
+++ b/ti-processor-sdk-rtos-j721e-evm-08_01_00_13/pdk_jacinto_08_01_00_36/packages/ti/board/src/devices/common/common.c
@@ -128,6 +128,168 @@
return BOARD_SOK;
}
+Board_STATUS Uled_Eviyos_ReadReg(void *handle,
+ uint32_t slaveAddr,
+ uint8_t regAddr,
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

patch as attachment, please focus on below files modifications:

Fullscreen
1
2
3
4
ti-processor-sdk-rtos-j721e-evm-08_01_00_13/vision_apps/platform/j721e/rtos/common/app_init.c <set resolution as 1280x480 superframe>
ti-processor-sdk-rtos-j721e-evm-08_01_00_13/vision_apps/utils/dss/src/app_dctrl.c <lane-num and lane-speed>
ti-processor-sdk-rtos-j721e-evm-08_01_00_13/vision_apps/utils/dss/src/app_dss_defaults.c
ti-processor-sdk-rtos-j721e-evm-08_01_00_13/vision_apps/utils/dss/src/app_dss_j721e.c <config SERDES>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Q:

1. Could you please confirm <DSI IP interface output 1280x480 superframe parameters> whether the modification is correct or if there are any omissions that have not been modified yet ?

2. My understanding is that the parameters set in these files will be called in the end to configure the DSI D-PHY output 1280x480 image. Please correct me !!!

3. If the thses configuration parameters are set correctly, can you confirm that the DSI interface can output images normally ?

By the way

Application layer colleagues linqiang.huang@ecarxgroup.com will then synchronize the changes (modifications made on TI-DL demo) in this thread !!!

Looking forward to your reply.

Best Regards

Murphy

  • Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    #ifndef __SOCKET_CONN__
    #define __SOCKET_CONN__
    #include "stdio.h"
    #include "stdlib.h"
    #include <sys/socket.h>
    #include <sys/types.h>
    #include <sys/un.h>
    #include <stdint.h>
    #define MAX_WIDTH 1280
    #define MAX_HEIGHT 480
    enum DataType{
    RGB_888 = 1,
    RGB_565,
    RGB_YUV,
    };
    typedef struct DlpData{
    int32_t type;
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    Application uses a resolution of 1280*480.

  • Hi Murphy,

    .

    1. Could you please confirm <DSI IP interface output 1280x480 superframe parameters> whether the modification is correct or if there are any omissions that have not been modified yet ?

    For DSI, it does not matter, it is just single input frame of size 1280x480 and yes, it can support this frame size. 

    2. My understanding is that the parameters set in these files will be called in the end to configure the DSI D-PHY output 1280x480 image. Please correct me !!!

    Did not get the question, which parameter do you mean here? You are setting timing parameters, which will get applied first and display would be started and then input video pipelines would be configured and then will merge two frames and send it out as one single merged frame.. 

    3. If the thses configuration parameters are set correctly, can you confirm that the DSI interface can output images normally ?

    yes, if the receiver supports this parameters.. 

    Regarding parameters shared by  linqiang.huang@ecarxgroup.com, none of them seems related to DSI configuration. They are more like application level configuration.. 

    Regards,

    Brijesh

  • Hi Brijesh,

    Thank you for your reply.

    Did not get the question, which parameter do you mean here?

    Parameters set in these files:

    ti-processor-sdk-rtos-j721e-evm-08_01_00_13/vision_apps/platform/j721e/rtos/common/app_init.c
    ti-processor-sdk-rtos-j721e-evm-08_01_00_13/vision_apps/utils/dss/src/app_dctrl.c

    These two files are used to set LCD timing parameters and DSI lane-num/speed, and finally will be aplied to configure video pipeline and D-PHY to output image from DSI interface like you said. Are these Settings compatible with the DSI interface to output the desired 1280x480 image correctly ?

    ti-processor-sdk-rtos-j721e-evm-08_01_00_13/vision_apps/utils/dss/src/app_dss_defaults.c
    ti-processor-sdk-rtos-j721e-evm-08_01_00_13/vision_apps/utils/dss/src/app_dss_j721e.c
    ti-processor-sdk-rtos-j721e-evm-08_01_00_13/pdk_jacinto_08_01_00_36/packages/ti/board/src/devices/common/common.h
    ti-processor-sdk-rtos-j721e-evm-08_01_00_13/pdk_jacinto_08_01_00_36/packages/ti/board/src/devices/common/common.c

    these four files just for SERDES configuration. After receiving the 1280x480 image output from the DSI interface, the SER internally divides into two 640x480 images for the two DES to display on the two screens.


    ti-processor-sdk-rtos-j721e-evm-08_01_00_13/pdk_jacinto_08_01_00_36/packages/ti/drv/dss/src/drv/disp/dss_dispApi.c
    ti-processor-sdk-rtos-j721e-evm-08_01_00_13/vision_apps/apps/basic_demos/app_multi_cam/main.c
    ti-processor-sdk-rtos-j721e-evm-08_01_00_13/vision_apps/apps/basic_demos/app_single_cam/app_single_cam_main.c
    ti-processor-sdk-rtos-j721e-evm-08_01_00_13/vision_apps/modules/src/app_display_module.c

    these four files just Basic Demos for cameras modifications and it worked before. 

    Now we want to use Image Classification Application demo to output image. please guide us how to achieve this. 

    Best Regards,

    Murphy

  • Hi Brijesh,

    Below is the application sending data "00 00 fe" and printing it on the mcu side.This is the progress so far. Hope it helps

    [MCU2_0] 333.225748 s: VX_ZONE_ERROR:| 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe |
    [MCU2_0] 333.225850 s: VX_ZONE_ERROR:| 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe |
    [MCU2_0] 333.225947 s: VX_ZONE_ERROR:| 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe |
    [MCU2_0] 333.226043 s: VX_ZONE_ERROR:| 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe |
    [MCU2_0] 333.226179 s: VX_ZONE_ERROR:| 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe |
    [MCU2_0] 333.226279 s: VX_ZONE_ERROR:| 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe |
    [MCU2_0] 333.226376 s: VX_ZONE_ERROR:| 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe |
    [MCU2_0] 333.226472 s: VX_ZONE_ERROR:| 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe |
    [MCU2_0] 333.226568 s: VX_ZONE_ERROR:| 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe |
    [MCU2_0] 333.226664 s: VX_ZONE_ERROR:| 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe |

    applog.txt

  • Hi Murphy,

    these four files just Basic Demos for cameras modifications and it worked before. 

    ok, does it mean these configuration/timing parameters are working fine, isn't it? Do you see valid output over DSI with this configuration? Then you shouldnt worry about timing parameters..

    Now we want to use Image Classification Application demo to output image. please guide us how to achieve this. 

    Not sure the output resolution from this demo, does it output 1280x480 resolution? If not, you would require to use scalar in the video pipeline to downscale input image to 1280x480 resolution.. 

    Below is the application sending data "00 00 fe" and printing it on the mcu side.This is the progress so far. Hope it helps

    [MCU2_0] 333.225748 s: VX_ZONE_ERROR:| 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe | 00 00 fe |

    Sorry did not get it. Are you printing it from the buffer, which is being sent out? Why do you require to print buffer contents? Are you checking also content on the receiver side? 

    Regards,

    Brijesh 

  • Brijesh Jadav said:

       Sorry did not get it. Are you printing it from the buffer, which is being sent out? Why do you require to print buffer contents? Are you checking also content          on     the receiver side? 

    yes.

  • ok, but this data is before it goes out of DSS. So not sure how does it help? I think you should check if you are getting these data at the receiver end. 

    Also please note that data will not remain same at the receiver, you should expect slight change in the data due to format conversion. 

    Regards,

    Brijesh

  • I think you should check if you are getting these data at the receiver end

    please help me to understand the receiver end

    Which method is easier to verify from the receiver end of what you said? (Driver or APP side) Please tell me how to verify it.

    Regards,

    Murphy

  • Hi Murphy,

    I meant which module is receiving DSI data. Is it some display or LCD or some deserializer based receiver? Do you see correct data on the receiver? 

    Regards,

    Brijesh