diff options
author | Inès Varhol <ines.varhol@telecom-paris.fr> | 2024-06-29 13:07:08 +0200 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2024-07-01 15:40:54 +0100 |
commit | 9c4887e3b68a362f2f5a4e86daab98a51b3b769e (patch) | |
tree | 9914b89f9cf28b726cb077e66640df4808220ec7 /include/hw/misc/stm32l4x5_exti.h | |
parent | 7d9b3c34f30045eb50d1c890be46bfde4100bf65 (diff) | |
download | qemu-9c4887e3b68a362f2f5a4e86daab98a51b3b769e.zip qemu-9c4887e3b68a362f2f5a4e86daab98a51b3b769e.tar.gz qemu-9c4887e3b68a362f2f5a4e86daab98a51b3b769e.tar.bz2 |
hw/misc: In STM32L4x5 EXTI, correct configurable interrupts
The implementation of configurable interrupts (interrupts supporting
edge selection) was incorrectly expecting alternating input levels :
this commits adds a new status field `irq_levels` to actually detect
edges.
Signed-off-by: Inès Varhol <ines.varhol@telecom-paris.fr>
Message-id: 20240629110800.539969-2-ines.varhol@telecom-paris.fr
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'include/hw/misc/stm32l4x5_exti.h')
-rw-r--r-- | include/hw/misc/stm32l4x5_exti.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/hw/misc/stm32l4x5_exti.h b/include/hw/misc/stm32l4x5_exti.h index be961d2..55f763f 100644 --- a/include/hw/misc/stm32l4x5_exti.h +++ b/include/hw/misc/stm32l4x5_exti.h @@ -45,6 +45,8 @@ struct Stm32l4x5ExtiState { uint32_t swier[EXTI_NUM_REGISTER]; uint32_t pr[EXTI_NUM_REGISTER]; + /* used for edge detection */ + uint32_t irq_levels[EXTI_NUM_REGISTER]; qemu_irq irq[EXTI_NUM_INTERRUPT_OUT_LINES]; }; |