cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
mascenzi
Observer
Observer
325 Views
Registered: ‎04-06-2020

build fails for UIO testing zedboard

Hoping this is the right board. 

lets start off with I am using the zedboard and my colleague is using a ZC702.

So I'm currently attempting to build a linux image that will also incorporate my counterparts work. He has been responsible for writing the FPGA logic that I will interface with my user space application. He has provided me some steps to replicate his work, including his test software. I'm now trying to replicate his work on my system and build an image for my board. 

I've have already built an image for the zedboard, but now I'm building a new image that takes in to account the FPGA logic and how to interface with it. 

He has moved away from generic i/o on the board and is using the UIO interface for communication between the PL and PS. His work takes notes from this link. Testing UIO w/ Interrupt. Using this link and his notes I've gotten to the point where I have attempted a build. However, it fails. I have followed the instructions/his instructions from the link 

  •   create project
  • configure with HDF
  • update machine name (not sure if this is just a naming convention thing, or if it really matters)
    • (UPDATE): so it appears the machine name does matter.
    • I'm currently using plnx-zynq7
    • Also tried zedboard-zynq7
  • configure kernel
    • as I'm using Petalinux 2019.2 I've made the changes to the Userspace I/O drivers
      • <*> Userspace I/O platform driver with generic IRQ handling
      • <*> Userspace platform driver with generic irq and dynamic memory
      • <*> Xilinx AI Engine driver
  • And I've updated the device tree file. 

While the root cause of the build failure may not be entirely with the device tree modification. I've tested several versions of the device tree modification.  With all the changes above. I've left the device tree file 

 

 

 

project-spec/meta-user/recipes-bsp/device-tree/files/system-user.dtsi

 

 

 

unchanged, empty with the exception of 

 

 

 

/include/ "system-conf.dtsi"
{};

 

 

 

 I built and it finished with no errors. 

I then made the following changes to system-user.dtsi

 

 

 

/include/ "system-conf.dtsi"
{
    chosen{
        bootargs = "earlycon clk_ignore_unused    uio_pdrv_genirq.of_id=generic-uio";
        stdout-path = "serial0:115200n8";
    };

 

 

 

this is the first part from the instructions from the link. Built just fine. 

Now this is where everything starts to fail. 

When I add the 2nd part from the link above the build fails. I've gone through double checking what I typed and it is just fine. Yet the build fails. 

The full change to the device tree file that needs to be this. 

 

 

 

/include/ "system-conf.dtsi"
/ {
 chosen {
        bootargs = "earlycon clk_ignore_unused   uio_pdrv_genirq.of_id=generic-uio";
        stdout-path = "serial0:115200n8";
    };
};

&axi_gpio_0 {
    nm = "fifo_control";
    interrupt-controller ;
    nterrupt-names = "ip2intc_irpt";
    interrupt-parent = <&intc>;
    //override default gpio interrupt 29 with faster signal on int 30
    interrupts = <0 30 4>;//0- shared, 62-32=30, 4=level-sensitive
    compatible = "generic-uio";
};

&axi_gpio_tap_values {
    nm = "tap_values";
    compatible = "generic-uio";
};

&axi_gpio_idelay_ctrl {
    nm = "idelay_ctrl";
    compatible = "generic-uio";

};

&axi_fifo_bram_ctrl {
    nm = "data_ram";
    compatible = "generic-uio";
};

 

 

 

I've made other changes to the config files, kernel, u-boot, rootfs, as I'm using an SD card, and he has been using a jtag to communicate with the board. I think. Not a 100%. 

So my next steps are to go back, clean the build, and only make changes related to the UIO. To see if there are config changes I've made that are messing with it. (UPDATE) I've done a fresh build, with zero changes to the config file with the exception of the changes from the link above. Still fails. 

I've included the log file with the error. I've read through it, but I'm not having much luck understanding it. 

Tags (2)
0 Kudos
1 Reply
mascenzi
Observer
Observer
293 Views
Registered: ‎04-06-2020

So it appears that I'm missing "gpio0" definition in SYSTEM generated device tree files. That this is something generated when I  run petalinux-config --get-hw-description.... 

I'm using the avnet-digilent-zedboard-2019.2 bsp from this link BSP .  Is there a more up to date BSP that has the missing definition?

0 Kudos