cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Contributor
Contributor
847 Views
Registered: ‎05-11-2018

GetIncludeSubcores subcoreRepo Table is not filled

When I try to configure the xvprocss driver, instance (XVprocSs *) , the call to GetIncludeSubcores fails, within the call an entry is present (The IsPresent comes back true) but when I try to get the pointer back from subcoreRepo[...] there is no entry. I cannot find anywhere how this table is filled. Any help is greatly appreciated.

0 Kudos
4 Replies
Highlighted
Moderator
Moderator
818 Views
Registered: ‎11-09-2015

Re: GetIncludeSubcores subcoreRepo Table is not filled

HI @kmwilliams,

Make sure you are following the exact same steps as the VPSS example design (in the same order):

  1. VprocSsConfigPtr = XVprocSs_LookupConfig(XPAR_V_PROC_SS_0_DEVICE_ID);
  2. status = XVprocSs_CfgInitialize(pVprocss, VprocSsConfigPtr, VprocSsConfigPtr->BaseAddress);

Also, did you fix the issue mentioned below?

https://forums.xilinx.com/t5/Video/Creating-xsdk-project-for-multiple-IP-HDMI-amp-VPSS-scaler/m-p/909643#M22632

The VPSS should be included directly in the BD. You will face too many issue by packaging it into a custom IP.

If you import the drivers manually you still do not have the xparameter.h not populated correctly

Regards,


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
0 Kudos
805 Views
Registered: ‎11-07-2018

Re: GetIncludeSubcores subcoreRepo Table is not filled

Thanks for your response. I should have been more explicit. I have 2 scalers, in the xparameters.h the addresses that were assigned to the scalers is backwards. Meaning in the design Scaler is assigned address 44a80000 and scaler1 is assigned 44cc0000 but in xparameters.h I see the opposite assignment. When the code gets to the point of the subcore table getting loaded it crashes.

0 Kudos
Highlighted
Moderator
Moderator
795 Views
Registered: ‎11-09-2015

Re: GetIncludeSubcores subcoreRepo Table is not filled

Hi @danielaragona,

I am not sure the name in xparameter always match what you have in HW. The tool might check assign the ID 0 to the first vpss it can find. So I don't think this is an issue.

Can you try read in the first address for each VPSS in xsct (using mrd) to make sure you can access them.

Also, I just check: are you know using the VPSS directly in the BD or are you still using the VPSS in a packaged IP. If you are using them in a package IP, please try to use them directly.


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
0 Kudos
Highlighted
787 Views
Registered: ‎11-07-2018

Re: GetIncludeSubcores subcoreRepo Table is not filled

Thanks for your response.

I am now using them in a single BD. 

I do the following...

1. In xhdmi_example.c main 

XVprocSs VprocInst;

XVprocSs* pVpssPtr;

pVpssPtr = &pVprocInst:

XVprocSS_Config* VprocSsConfigPtr;

memset(pVprocss, 0, sizeof(XVprocSs)); //Does this belong here?

VprocSsConfigPtr = XVprocSs_LookupConfig(XPAR_SCALER_V_PROC_SS_0_DEVICE_ID);

status = XVprocSs_CfgInitialize(pVprocss,VprocSsConfigPtr,VprocSsConfigPtr->BaseAddress);

XSys_SetStreamParam(VpssPtr,
XSYS_VPSS_STREAM_IN,
1920,
1080,
XVIDC_CSF_RGB,
FALSE);

// Set VPSS Video Output AXI Stream
// Note that output video is always progressive
XSys_SetStreamParam(VpssPtr,
XSYS_VPSS_STREAM_OUT,
1920,
1080,
XVIDC_CSF_RGB,
FALSE);
}

XVprocSs_SetSubsystemConfig(pVpssPtr);

 

Seems to die in last call.

 

Do I need the memset? or is there another way to load?

Should the XVprocSs_SetSubsystemConfig(pVpssPtr); come before XSys_SetStreamParam?

 

Thanks

 

0 Kudos