cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Observer
Observer
568 Views
Registered: ‎08-08-2019

Problem adding a custom IP drivers in SDK

Jump to solution

I am trying to evaluate a custom IP. However, as I include the the software driver in SDK I get build errors about a missing makefile.

 

My workflow is as follows:

1. Copy the "drivers" and "sw_services" folders to the current SDK workspace folder.

2. Xilinx -> Repositories -> new local repository, and I add the workspace folder containing the forementioned drivers and software.

After selecting ok, SDK loads the drivers and they can be found all right. However, when I create a new application project the project does not build. The problem seems to be that an additional makefile is missing (included by the main makefile of the driver), The file should be generated by the drivers/<name_of_the_driver>/data/<name_of_the_driver>.tcl file. However, it seems like the .tcl file is not run at all.

Any suggestions how to properly include the IP repository?

Tags (3)
1 Solution

Accepted Solutions
Highlighted
Moderator
Moderator
537 Views
Registered: ‎03-25-2019

Hi @tsharp,

From your description, it seems that you have correctly added the custom repository.
Are you sure that the missing Makefile should be created by that Tcl script?
If so, could you please check if that script was really called and if it has reached the point where you believe it's creating the Makefile?
To do so, please add some "puts" commands in that script, then open the "XSCT Console" window in SDK (from the main menu> Xilinx> XSCT Console) and regenerate your BSP Sources. The output of puts commands will be printed in the console.

Best regards,
Abdallah
-------------------------------------------------------------------------------
Please don't forget to reply, kudo and accept as a solution

View solution in original post

4 Replies
Highlighted
Moderator
Moderator
538 Views
Registered: ‎03-25-2019

Hi @tsharp,

From your description, it seems that you have correctly added the custom repository.
Are you sure that the missing Makefile should be created by that Tcl script?
If so, could you please check if that script was really called and if it has reached the point where you believe it's creating the Makefile?
To do so, please add some "puts" commands in that script, then open the "XSCT Console" window in SDK (from the main menu> Xilinx> XSCT Console) and regenerate your BSP Sources. The output of puts commands will be printed in the console.

Best regards,
Abdallah
-------------------------------------------------------------------------------
Please don't forget to reply, kudo and accept as a solution

View solution in original post

Highlighted
Visitor
Visitor
497 Views
Registered: ‎05-16-2019

Depending on the interface you use, the way to write the SDK-code running on the ARM may be quite different. There are a lot of details but in general when you create an IP, after exporting the hardware and lunching the SDK, Vivado creates library and drivers for you in order to send data and commands to the every specific IP.

0 Kudos
Highlighted
Observer
Observer
488 Views
Registered: ‎08-08-2019

Hi @abouassi ,

Thank you for suggesting to check the "XSCT Console". It revealed that SDK did not find a necessary file. The cause of the problem was the fact that the Linux filesystem is case sensitive and the Windows filesystem is not.  The cases of the filenames did not match between files, thus causing an error to occour on a Linux operating system. The error message, however, was not displayed in the "SDK log" or in the "Console" but in the "XST Console", instead. 

Highlighted
Moderator
Moderator
484 Views
Registered: ‎03-25-2019

Hi @tsharp,

You are welcome!
Happy that you have solved your issue.

Best regards,
Abdallah
-------------------------------------------------------------------------------
Please don't forget to reply, kudo and accept as a solution
0 Kudos