stm32h7: increase IRQ count to support stm32h723zg

Increase IRQ count and add irqinfo handling in order to support
the stm32h723zg chip.

Signed-off-by: Pavel Pisa <pisa@fel.cvut.cz>
This commit is contained in:
Pavel Pisa
2025-06-09 13:16:09 +02:00
committed by Alan C. Assis
parent 14cb309e68
commit f2ecb8b6e9
2 changed files with 33 additions and 1 deletions
+1 -1
View File
@@ -206,7 +206,7 @@
#define STM32_IRQ_RESERVED148 (STM32_IRQ_FIRST + 148) /* 148: Reserved */
#define STM32_IRQ_WKUP (STM32_IRQ_FIRST + 149) /* 149: WKUP1 to WKUP6 pins */
#define STM32_IRQ_NEXTINTS 150
#define STM32_IRQ_NEXTINTS 163
#define NR_IRQS (STM32_IRQ_FIRST + STM32_IRQ_NEXTINTS)
#endif /* __ARCH_ARM_INCLUDE_STM32H7_STM32H7X3XX_IRQ_H */
+32
View File
@@ -322,6 +322,38 @@ static int stm32_irqinfo(int irq, uintptr_t *regaddr, uint32_t *bit,
*bit = 1 << (extint - 128);
}
else
#elif STM32_IRQ_NEXTINTS <= 192
if (extint < 32)
{
*regaddr = (NVIC_IRQ0_31_ENABLE + offset);
*bit = 1 << extint;
}
else if (extint < 64)
{
*regaddr = (NVIC_IRQ32_63_ENABLE + offset);
*bit = 1 << (extint - 32);
}
else if (extint < 96)
{
*regaddr = (NVIC_IRQ64_95_ENABLE + offset);
*bit = 1 << (extint - 64);
}
else if (extint < 128)
{
*regaddr = (NVIC_IRQ96_127_ENABLE + offset);
*bit = 1 << (extint - 96);
}
else if (extint < 160)
{
*regaddr = (NVIC_IRQ128_159_ENABLE + offset);
*bit = 1 << (extint - 128);
}
else if (extint < STM32_IRQ_NEXTINTS)
{
*regaddr = (NVIC_IRQ160_191_ENABLE + offset);
*bit = 1 << (extint - 160);
}
else
#else
# warning Missing logic
#endif