Intel® SoC FPGA Embedded Development Suite
Support for SoC FPGA Software Development, SoC FPGA HPS Architecture, HPS SoC Boot and Configuration, Operating Systems
569 Discusiones

ARM A9 bare matal IRQ priority can't work

TBaox
Principiante
2.469 Vistas

I use cyclone V HPS, and there is a problem in configuring interrupt priority. I gave OSC1 TIMER a higher priority, and after the program was executed, I found that it could not preempt the low priority external interrupt from FPGA. Look at the priority configuration MASK and binary point are lower 3 bits. Excuse me, where is my configuration wrong.

Inked微信图片_20210510110658_LI.jpg

微信图片_20210510111022.jpg

The OSC1 timer runs normally as shown in figure 2. after the interrupt from FPGA is enabled, the timer interrupt cannot run normally, as shown in figure 1

0 kudos
12 Respuestas
EBERLAZARE_I_Intel
Empleados
2.444 Vistas

Hi,

Is the timer interrupt that you mentioned also could not run normal if if interrupt from other sources other than FPGA?

TBaox
Principiante
2.416 Vistas

I didn't try that.

But  IRQ from FPGA timer ip doesn't preempt the low priority external interrupt from FPGA pio,too.

So I think something wrong on my configation. 

EBERLAZARE_I_Intel
Empleados
2.400 Vistas

May I know which Quartus version you are using? Also how did you compile/setup your preloader files?

TBaox
Principiante
2.387 Vistas
EBERLAZARE_I_Intel
Empleados
2.371 Vistas
TBaox
Principiante
2.362 Vistas

Sorry,I can't open the second link.

 

 

EBERLAZARE_I_Intel
Empleados
2.346 Vistas

Hi,

 

Unfortunately, the link is no longer available.

 

May I know, how did you setup/configure the prioritization? Did you have the H2f/f2h bridges enabled?

TBaox
Principiante
2.338 Vistas

I use this function and I have enabled H2f bridge and light H2F bridge, unuse f2H bridge. 

//set prioritization

alt_int_dist_priority_set(ALT_INT_INTERRUPT_F2S_FPGA_IRQ0,48);

 

 

EBERLAZARE_I_Intel
Empleados
2.319 Vistas

Hi,

 

The Priority interrupts, ID0-ID15, that can only be triggered by software called Software Generated Interrupts (SGI).

 

Unfortunately, we do not have any official document on how this can be done, thus please refer to below suggestion from other discussion on the SGI configuration:

https://stackoverflow.com/questions/20430733/inter-processor-interrrupts-in-arm-cortex-a9-how-to-write-an-handler-for-softw

https://stackoverflow.com/questions/41851975/enable-and-distribute-irqs-in-linux

 

 

 

TBaox
Principiante
2.305 Vistas
EBERLAZARE_I_Intel
Empleados
2.274 Vistas

Hi,

 

I found the documentation below on the Preemption on section 3.3, could you take a look:

https://developer.arm.com/documentation/ihi0048/bb

 

TBaox
Principiante
2.248 Vistas
Responder