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.

PROCESSOR-SDK-J721S2: dss code consultation

Part Number: PROCESSOR-SDK-J721S2

Hi:

As shown in the following figure:

When SOC==SOC_ J721S2 and initPrm.display_type==APP_DSS_DEFAULT_DISPLAY_TYPE_DSI ,The isDpConnected variable is false, and the condition in line 360 will not be met. log: appLogPrintf ("DSS: Display is not connected") will be printed; May I ask if this is correct?

  • SW: ti-processor-sdk-rtos-j721s2-evm-08_06_01_03

  • Hi,

    Thanks for pointing this out. Yes, this does not look correct. I have raised this issue to the team and it will be fixed in the next release.

    [TIOVX-1447] [DSS] DSI is configured based on connection status of eDP - Texas Instruments JIRA

    For the time being, can you please move out below code from the if block?

    if(obj->initPrm.display_type==APP_DSS_DEFAULT_DISPLAY_TYPE_DSI)
    {
    /* Only two lanes output supported for AOU LCD */
    dsiParams.num_lanes = 2u;
    retVal+= appRemoteServiceRun(cpuId, APP_DCTRL_REMOTE_SERVICE_NAME, APP_DCTRL_CMD_SET_DSI_PARAMS, &dsiParams, sizeof(app_dctrl_dsi_params_t), 0U);
    }

    Regards,

    Brijesh

  • Hi:

    As you said, if we move the block of code you mentioned above outside of  if block.  The code from lines 369 to 376 in the figure still cannot be executed, right?

  • If based on the conditions I mentioned earlier,The code from lines 369 to 376 in the figure will still not run.may I ask if this is right?

  • ok, can you please change this code like below.

        if (FVID2_SOK == retVal)
        {
            if ((obj->initPrm.display_type!=APP_DSS_DEFAULT_DISPLAY_TYPE_EDP) ||
                (true == isDpConnected))
            {
                if(obj->initPrm.display_type==APP_DSS_DEFAULT_DISPLAY_TYPE_DSI)
                {
                    /* Only two lanes output supported for AOU LCD */
                    dsiParams.num_lanes = 2u;
                    retVal+= appRemoteServiceRun(cpuId, APP_DCTRL_REMOTE_SERVICE_NAME, APP_DCTRL_CMD_SET_DSI_PARAMS, &dsiParams, sizeof(app_dctrl_dsi_params_t), 0U);
                }
            
                retVal+= appRemoteServiceRun(cpuId, APP_DCTRL_REMOTE_SERVICE_NAME, APP_DCTRL_CMD_SET_PATH, &pathInfo, sizeof(pathInfo), 0U);
                retVal+= appRemoteServiceRun(cpuId, APP_DCTRL_REMOTE_SERVICE_NAME, APP_DCTRL_CMD_SET_VP_PARAMS, &vpParams, sizeof(vpParams), 0U);
                if(true == doAdvVpSetup)
                {
                    retVal+= appRemoteServiceRun(cpuId, APP_DCTRL_REMOTE_SERVICE_NAME, APP_DCTRL_CMD_SET_ADV_VP_PARAMS, &advVpParams, sizeof(advVpParams), 0U);
                }
                retVal+= appRemoteServiceRun(cpuId, APP_DCTRL_REMOTE_SERVICE_NAME, APP_DCTRL_CMD_SET_OVERLAY_PARAMS, &overlayParams, sizeof(overlayParams), 0U);
                retVal+= appRemoteServiceRun(cpuId, APP_DCTRL_REMOTE_SERVICE_NAME, APP_DCTRL_CMD_SET_LAYER_PARAMS, &layerParams, sizeof(layerParams), 0U);
            }
            else
            {
                appLogPrintf("DSS: Display is not connected\n");
            }
        }