I have recently migrated to the STM32F207 MCU. Everything is going very well except that I am having a big problem with EXTI interrupts. My hardware originally had PC13 and PC15 as interrupt sources and everything worked OK into EXTI13 and EXTI15 (falling edge interrupts - EXTI 10->15 vector). A hardware revision meant that PC15 had to be moved to PG14. Therefore PC13 is still configued for falling edge interrupts on EXTI13 but PG14 is now configured for falling edge interrupts on EXTI14 instead of PC15 on EXTI15. When I run my code it code gets stuck in the EXTI10_15 ISR with an IRQ pending on EXTI14 (PG14) and the interrupt does not clear after writing 0x4000 to the EXTI interrupt pending register. Is there a bug in the silicon? It seems to work OK if EXTI group 10_15 is sourced by the same GPIO (i.e. GPIOC) but when sourcing it from different GPIOs (i.e. GPIOC and GPIOG) then I get the problem. A scope shows that PG14 is constant high so no interrupt should occur, yet I have a pending interrupt on EXTI14 that will not clear. Any ideas?