08-05-2014 12:27 AM
Issue Summary – Xilinx 2014.1
We have a Zedboard with a Xilinx Zynq SoC and are simply aiming to create a Linux application (not standalone) in XSDK that links to the drivers (eg. DMA, XADC, etc) required by our hardware design exported from Vivado. Using version 2014.1 of the Xilinx tools on both Linux and Windows, we have tried the following steps:
When attempting to create the BSP, the following error message is encountered (refer to SDK.log file attached for full description):
08:53:34 ERROR : [Common 17-55] 'get_property' expects at least one object.
ERROR: [Hsm 55-1545] Problem running tcl command ::sw_petalinux_v2_00_b::generate : ERROR: [Common 17-55] 'get_property' expects at least one object.
We were hoping that once the BSP was created, we could then create a test application that could reference the BSP and access the Xilinx AXI DMA and XADC drivers. The eventual plan is to use the DMA controller to write/read data to DDR memory.
Interestingly, when I created a test project with just the processing_system7_0 block and nothing else, the PetaLinux BSP was successfully created in XSDK. Therefore, perhaps there is something in the block design that is causing the error above??? Has anyone come across this type of error?
Issue Summary – Xilinx 2014.2
Another attempt to achieve our aim was made using the version 2014.2 of the Xilinx tools, however according to this forum, the build process has now changed compared to earlier versions.
Now it seems as though a PetaLinux BSP is no longer created in the XSDK but rather it is handled automatically when the hardware platform (.hdf file) is merged into the PetaLinux project via the “petalinux-config –get-hw-description –p ...” command. Therefore, we are not sure how to create an application that links to the required drivers if there is no BSP in the XSDK.
It seems as if the only way to get access to the drivers we need is to manually locate, include and link to the source/library files which is very tedious and difficult. Surely there is a better way! It almost seem to all work with 2014.1 apart from the error shown above.
Any help would be greatly appreciated.
08-08-2014 01:37 PM
08-08-2014 02:26 PM
Only linux kernel drivers can access hardware resources the same way as a standalone application.
So, for a custom hardware you have to create driver. For standard IP you can use already existing linux drivers, but not a xilinx low level api.