Fix pin-cir.c for use of EXTI.
authorNIIBE Yutaka <gniibe@fsij.org>
Wed, 15 Nov 2017 23:40:49 +0000 (08:40 +0900)
committerNIIBE Yutaka <gniibe@fsij.org>
Wed, 15 Nov 2017 23:40:49 +0000 (08:40 +0900)
src/pin-cir.c

index f92cebf..349535a 100644 (file)
@@ -40,14 +40,14 @@ cir_ext_disable (void)
   int rcvd = (EXTI->PR & EXTI_PR) != 0;
 
   EXTI->IMR &= ~EXTI_IMR;
-  EXTI->PR = EXTI_PR;
+  EXTI->PR |= EXTI_PR;
   return rcvd;
 }
 
 static void
 cir_ext_enable (void)
 {
-  EXTI->PR = EXTI_PR;
+  EXTI->PR |= EXTI_PR;
   EXTI->IMR |= EXTI_IMR;
 }
 
@@ -1033,8 +1033,8 @@ cir_init (void)
 
   /* EXTIx <= Py */
   AFIO->EXTICR[AFIO_EXTICR_INDEX] = AFIO_EXTICR1_EXTIx_Py;
-  EXTI->IMR = 0;
-  EXTI->FTSR = EXTI_FTSR_TR;
+  EXTI->IMR &= ~EXTI_IMR;
+  EXTI->FTSR |= EXTI_FTSR_TR;
 
   /* TIM */
 #ifdef ENABLE_RCC_APB1