cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Participant
Participant
3,193 Views
Registered: ‎07-24-2017

Driver PARAM not shown in BSP configuration page

Hello,

 

when I develop a custom driver for my IP, I want to provide a customization options by defining some parameters, which I put into the drivers .mdd file according to UG1138.

Example Code:

OPTION psf_version = 2.1;

BEGIN DRIVER AXI4_TEST
	OPTION supported_peripherals = (AXI4_TEST);
	OPTION driver_state = ACTIVE;
	OPTION copyfiles = all;
	OPTION VERSION = 2.1;
	OPTION NAME = AXI4_TEST;
	PARAM name = test, desc = "testing parameter", type = bool, default = false;
END DRIVER

However, when I press the button "Modify this BSP's Settings", it doesn't show up anywhere on the Configuration GUI.

What am I missing here?

Thanks in advance for any help

 

0 Kudos
4 Replies
Highlighted
Moderator
Moderator
3,167 Views
Registered: ‎09-12-2007

The xparameters.h file in the BSP is populated by the tcl file in the data folder of your driver. The driver is added to the HDF when exporting to SDK. When you create a custom IP, the driver will be created for you (and this tcl file). However, by default only the base and high address will be populated.

Do you see anything pertaining to your custom IP in your xparameters file?

 

You can modify this TCL file to add other features:

https://www.xilinx.com/support/answers/64980.html

 

 

 

 

Highlighted
Participant
Participant
3,163 Views
Registered: ‎07-24-2017

I already have a fully developed driver with its own tcl, checking for connected pins, exporting custom parameters from the IP customization GUI and exporting other stuff like the IRQ id of the connected IP. The provided AR x64980 was very helpful.

What I would like to do now is to customize the generated driver file in such a way that features can be turned off, e.g. creating a `define in my header files depending on the selection of a checkbox, which would be set in the BSP configuration and then propagated to the .tcl script.

Reading the PARAM of the .mdd file and using it for that purpose is not the problem but somehow, I can't find where this checkbox would be provided in the SDK. I expected an own tab in the page "Board Support Package Settings" -> "Overview" -> "drivers",  similar to the already existing "ps7_cortexa9_0" tab, providing the parameters in an editable way.

0 Kudos
Highlighted
Moderator
Moderator
3,127 Views
Registered: ‎09-12-2007

Im not sure about a checkbox, but if you add the line below in your MLD in your driver

 

PARAM name = my_parameter, desc = "type a description here", type = int, default = 1;

 

Then in the TCL, you would use 

 

if{$my_parameter == 1}{

 #do stuff here

}

 

Highlighted
Participant
Participant
3,107 Views
Registered: ‎07-24-2017

In the MLD? Do I need to implement a library description additionally to the device driver MDD?

My main question is, where can I edit that parameter later in the SDK? I thought that's a way of providing different option to the programming part like excluding or including conditional code, which would be done in the TCL, but without re-packaging the whole IP and generating the bitstream again.

Maybe the following screenshot might clarify, where I'd expect the customization option provided as PARAM:

 

ScreenShot 190 Board Support Package Settings.png

 

I already had a look into the file cpu_cortexa9.mdd provided by Xilinx and the option are exactly as shown in the image, however my params defined in my custom IP driver are not provided anywhere. Also, the cpu_cortexa9.mdd doesn't seem to have a MLD file.

 

Highly appreciate your answers and effort.

 

 

0 Kudos