Ironlord
Member level 3
Hello.
First of all, if this thread doesn't belong to this board, please move it. I didn't know where would it fit better, if here or in microcontrollers.
As some of you know, I'm working with a DE10-Nano board. In my last adventures, I interconnected the FPGA with the HPS and I did some cool things. For example, I could interact through HPS with FPGA peripherals, manipulate some content with the CPU and even I made a webserver example in which I showed the values catched from an ADC on the web.
Now I am trying to step forward and work with interrupts instead of polling. I have been reading on the Internet and there isn't much material about this issue. I thought it would be easier, but nope...
The last I did was compiling a Preempt-RT kernel. I also built a device tree and compiled a module kernel to catch the interrupts. Just in case you are asking, I followed this guide: https://wiki.epfl.ch/prsoc/documents/Cyclone_V_SoC_Linux_Interrupt-2.pdf
I also built a System using Qsys, and created a line for the interrupts between my peripheral and the HPS. The peripheral is just a GPIO pin configured as input, so if I connect it to a signal generator, it should create an interruption at the rising edge. I have tried with different interrupt numbers, but it doesn't work at all and I don't know what am I doing wrong. I thought maybe someone of you has made s similar project and can share some information.
Here are some pictures I have taken:
Thanks in advance guys!
First of all, if this thread doesn't belong to this board, please move it. I didn't know where would it fit better, if here or in microcontrollers.
As some of you know, I'm working with a DE10-Nano board. In my last adventures, I interconnected the FPGA with the HPS and I did some cool things. For example, I could interact through HPS with FPGA peripherals, manipulate some content with the CPU and even I made a webserver example in which I showed the values catched from an ADC on the web.
Now I am trying to step forward and work with interrupts instead of polling. I have been reading on the Internet and there isn't much material about this issue. I thought it would be easier, but nope...
The last I did was compiling a Preempt-RT kernel. I also built a device tree and compiled a module kernel to catch the interrupts. Just in case you are asking, I followed this guide: https://wiki.epfl.ch/prsoc/documents/Cyclone_V_SoC_Linux_Interrupt-2.pdf
I also built a System using Qsys, and created a line for the interrupts between my peripheral and the HPS. The peripheral is just a GPIO pin configured as input, so if I connect it to a signal generator, it should create an interruption at the rising edge. I have tried with different interrupt numbers, but it doesn't work at all and I don't know what am I doing wrong. I thought maybe someone of you has made s similar project and can share some information.
Here are some pictures I have taken:
Thanks in advance guys!