INT CNTLR: Bugfix for more than 32 interrupts

The interrupt controller would not handle properly more
than 32 interrupt lines even though it was suppossed to
work with up to 64.

Fix it.

NOTE: This requires the latest native simulator as of today
(2023/10/11)

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This commit is contained in:
Alberto Escolar Piedras 2023-10-11 10:08:26 +02:00
parent 903f6439d6
commit f7842d717c
1 changed files with 1 additions and 1 deletions

View File

@ -135,7 +135,7 @@ int hw_irq_ctrl_get_highest_prio_irq(unsigned int inst)
int winner_prio = 256;
while (irq_status != 0U) {
int irq_nbr = nsi_find_lsb_set(irq_status) - 1;
int irq_nbr = nsi_find_lsb_set64(irq_status) - 1;
irq_status &= ~((uint64_t) 1 << irq_nbr);
if ((winner_prio > (int)this->irq_prio[irq_nbr])