UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Participant rankeney
Participant
8,020 Views
Registered: ‎11-26-2014

2016.1 Device Tree error

I have an AMP system with Petalinux running on ARM0 and a bare-metal application on ARM1. I have a CDMA IP in the FPGA with it's interrupt line ORed with the interrupt line from another IP to drive the nIRQ on ARM1. In previous petalinux versions, when it created the device tree:

  • 2014.4: Omitted the <interrupt x>
  • 2015.x: Inserted <interrupt -1>
  • 2016.1: Gives a fatal error and exits without generating the device tree

For the first 2 cases, I could simply add status = "disabled"; For the second case I could delete the bogus interrupt line.

But 2016.1 leaves me no path to recover. Can anyone suggest a workaround? I'd hate to delve in the device tree code...

Tags (3)
0 Kudos
4 Replies
Participant rankeney
Participant
7,264 Views
Registered: ‎11-26-2014

Re: 2016.1 Device Tree error

I thought I'd bump this, as nobody has replied.

0 Kudos
Scholar stephenm
Scholar
7,247 Views
Registered: ‎05-06-2012

Re: 2016.1 Device Tree error

Can you post the error message, or sdk log. This will at least given an indication as to where to look in the tcl file
0 Kudos
Scholar stephenm
Scholar
7,129 Views
Registered: ‎05-06-2012

Re: 2016.1 Device Tree error

I tested this real quick. I added a util_vector_logic IP between the cdma_introut, and the IRQ_F2P.

 

Capture.PNG

 

I seen your issue. 

I open the devicetree and made some changes to 

device-tree-xlnx-master\axi_cdma\data\axi_cdma.tcl

device-tree-xlnx-master\devicetree\data\common_proc.tcl

 

In the axi_cdma.tcl, I modifed the TCL here to check the pin connected to the cdma_intout pin. If this is a util_vector_logic, then I get the output pin, and pass this to the get_int_id proc in common_procs. This will alow that id to be found. However, to get the interrupt type. I need to get the source pin on the 0 input on the util_vector (ie the ddma_intout pin), and use this to populate the interrupt type.

 

These two file are attached. These changes would be specific to the use-case I mentioend here and you may need to change this. However, you may need to change this to match your exact needs. 

0 Kudos
Participant rankeney
Participant
7,028 Views
Registered: ‎11-26-2014

Re: 2016.1 Device Tree error

Thanks for looking at it! I'll give it a try next chance I get.

0 Kudos