To debug the VCU interface, perform the following steps:
- Ensure VCU init driver probe is successful during boot process.
Check
init driver with the following
command.
which showslsmod
xlnx_vcu
module is inserted. - If PLL fails to lock, VCU initialization driver reports a lock status failure message. Ensure that the PLL input reference clock frequency of VCU AMD LogiCORE™ IP is set properly in the IPI block design. Ensure that the PLL clock source (parent clock) is modelled correctly in device tree node as a fixed clock source. Ensure VCU init driver node properties are proper and phandle for PLL reference clock is passed correctly.
- After successful probe of VCU init driver, check VCU drivers with the following
command:
lsmod
which should show al5d, al5e and Allegro modules as being inserted.
- Check if sufficient CMA is allocated. VCU operation requires at least 1000 MB of CMA. You can check for available CMA by using
cat /proc/meminfo
- If CMA size is not sufficient, increase the size either in U-Boot using the
following steps:
- Stop the boot process at U-Boot level and run the
following command to increase the CMA size or while building the Linux
kernel using kernel configuration property.
setenv bootargs ${bootargs} cma=xxxxM
- In the kernel config (for PetaLinux, run
petalinux-config -c kernel
and for standalone compilation, run makemenuconfig
), change the size of the CMA by selecting .
- Stop the boot process at U-Boot level and run the
following command to increase the CMA size or while building the Linux
kernel using kernel configuration property.
- Run a VCU sanity test using on of the VCU Control Software sample applications. You can use ctrlsw_encoder and ctrlsw_decoder applications to run a sanity test.