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: 
Observer sconvertini
Observer
125 Views
Registered: ‎09-06-2018

Cannot find linux/interrupt.h

Hi to all,

I'm working with Petalinux 2018.3 running on a MicroZed Rev. F.

I edited a PL project in Vivado 2018.3 as in the following image

Cattura.PNG

I connected four interrupt signals to IRQ_F2P input of the zynq.

In order to recognize these signals as global interrupt, I modified the system-user.dtsi in this way

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

/ {
chosen {
    bootargs = "console=ttyPS0,115200 earlyprintk uio_pdrv_genirq.of_id=generic-uio";
    };
	amba_pl: amba_pl {
		axi_gpio_0: gpio@41200000 {
			compatible = "generic-uio";
		};
		axi_uartlite_0: serial@42c00000 {
			compatible = "generic-uio";
		};
		axi_timer_0: timer@42800000 {
			compatible = "generic-uio";
		};
		myAXITimer_0: myAXITimer@43c00000 {
			compatible = "generic-uio";
		};
	};
};

Finally I ensured that the UIO driver was enable in the configuration of the kernel.

After building my petalinux and running on the microzed. I can see this:

root@IMU_plnx:~# cat /proc/interrupts
           CPU0       CPU1
 16:          1          0     GIC-0  27 Edge      gt
 17:          0          0     GIC-0  43 Level     ttc_clockevent
 [...]
 40:          0          0     GIC-0  40 Level     f8007000.devcfg
 47:          0          0     GIC-0  41 Edge      f8005000.watchdog
 48:          0          0     GIC-0  63 Level     gpio
 49:          0          0     GIC-0  62 Level     timer
 50:          0          0     GIC-0  64 Edge      serial
 51:          0          0     GIC-0  61 Level     myAXITimer
IPI1:          0          0  Timer broadcast interrupts
IPI2:        599        826  Rescheduling interrupts
IPI3:          1          2  Function call interrupts
IPI4:          0          0  CPU stop interrupts
IPI5:          0          0  IRQ work interrupts
IPI6:          0          0  completion interrupts

I can see all four itnerrupt.

But if I try to use the sysroot generated by linux into xilinx sdk, I cannot use the linux/interrupt. since the file does not exist.

Is there any configuration or setting in the kernel or somewhere else to be enabled?

Thank you for your support.

0 Kudos
2 Replies
Explorer
Explorer
90 Views
Registered: ‎06-03-2015

Re: Cannot find linux/interrupt.h

Hi

 

UIO framework does not use by default set of Libray headers, peta linux gives support extranlly for the same.

below one gives exact soultion for your query:

https://forums.xilinx.com/t5/Embedded-Linux/petalinux-including-linux-interrupt-h/td-p/841436

Provide kudos if post is helpful

Thanks & Regards

Satish G

G Satish Kumar
0 Kudos
Observer sconvertini
Observer
72 Views
Registered: ‎09-06-2018

Re: Cannot find linux/interrupt.h

Hi,

I already saw that link.

if linux/interrupt.h is not used by UIO framework, how can I generate linux/interrupt.h in petalinux?

Thank you

0 Kudos