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.

[参考译文] TDA2HF:在创建 Display_Link 时设置 DSS 参数失败

Guru**** 633810 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1046305/tda2hf-set-dss-parameter-failed-when-display_link-was-creating

器件型号:TDA2HF

在 processor_sdk_vision_03_08_00_00中、我创建 了一个链:

capture (捕获)->VPE-> display (VPE->显示)

VPE 参数设置如下:

static Void chains_vipSingleCam_Enc_Dec_SgxDisplay_SetVPEPrms(
VpeLink_CreateParams *pPrm,
UInt32 numLvdsCh,
UInt32 displayWidth,
UInt32 displayHeight,
UInt32 inputWidth,
UInt32 inputHeight
)
{
UInt16 chId;

pPrm->enableOut[0] = TRUE;

for(chId = 0; chId < numLvdsCh; chId++)
{
pPrm->chParams[chId].outParams[0].numBufsPerCh =
VPE_LINK_NUM_BUFS_PER_CH_DEFAULT;

pPrm->chParams[chId].outParams[0].width = displayWidth;
pPrm->chParams[chId].outParams[0].height = displayHeight;
pPrm->chParams[chId].outParams[0].dataFormat =SYSTEM_DF_RGB24_888 ;

pPrm->chParams[chId].scCfg.bypass = FALSE;
pPrm->chParams[chId].scCfg.nonLinear = FALSE;
pPrm->chParams[chId].scCfg.stripSize = 0;

pPrm->chParams[chId].scCropCfg.cropStartX = 32;
pPrm->chParams[chId].scCropCfg.cropStartY = 24;
pPrm->chParams[chId].scCropCfg.cropWidth = inputWidth-32;
pPrm->chParams[chId].scCropCfg.cropHeight = inputHeight-24;
}
}

然后、我得到如下断言:

[HOST] [IPU1-0]     57.923595 s: CaptureLink_drvAllocAndQueueFrames:1553:FVID2_queue: captureVipHandle=0x9f11b880, frameList.numFrames=6, streamId=0
 [HOST] [IPU1-0]     57.923961 s:  CAPTURE: Create Done !!!
 [HOST] [IPU1-0]     57.924388 s:  VPE: Create in progress !!!
 [HOST] [IPU1-0]     57.925242 s: wwlog:vpe set flag=82176,format=20
 [HOST] [IPU1-0]     58.164765 s:  VPE: Loading Down-scaling Co-effs
 [HOST] [IPU1-0]     58.164978 s:  VPE: Co-effs Loading ... DONE !!!
 [HOST] [IPU1-0]     58.165222 s:  VPE: Create Done !!!
 [HOST] [IPU1-0]     58.165649 s:  DISPLAY: Create in progress !!!
 [HOST] [IPU1-0]     58.165954 s:    wwlog: repliEnalbe is false before set!!!!!
 [HOST] [IPU1-0]     58.166046 s: wwlog: repliEnalbe set true
 [HOST] [IPU1-0]     58.166107 s: wwlog: display get flag= 82176,format=20
 [HOST] [IPU1-0]     58.166168 s: wwlog: display will create in SYSTEM_DF_RGB24_888!!!!!
 [HOST] [IPU1-0]     58.166320 s: hal/src/vpshal_dssDispcVid.c @ Line 1023:
 [HOST] [IPU1-0]     58.166412 s: Invalid Data format
 [HOST] [IPU1-0]     58.166595 s: dispdrv/src/vpsdrv_displayCore.c @ Line 304:
 [HOST] [IPU1-0]     58.166687 s: Set DSS parameter failed
 [HOST] [IPU1-0]     58.166748 s:  Assertion @ Line: 474 in displayLink_drv.c: status==SYSTEM_LINK_STATUS_SOK : failed !!!

但是,当我使用 capture ->VPE->sgxFmcpy(A15)-> display 时,display_link 可以在 system_DF_BGRA16_4444中正常运行。

我想知道为什么 dispaly_link 不能在 system_DF_RGB24_888中创建,或者如何使 display_link 在  system_DF_RGB24_888中运行 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我认为 DSS 不支持 RGB24_888格式、即 R、低字节、后跟 G、后跟 B。DSS 支持 BGR24_888格式、那么您可以尝试将其更改为 system_df_BGR24_888格式吗?

    此致、

    Brijesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的回复。

    不知道为什么、但显示运行正常、使用  BGR24_888、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    因为它仅在 DSS 中受支持。 不支持其他 RGB 打包格式。