From 73a40631636c17dbd655123094ee738336cecc6a Mon Sep 17 00:00:00 2001 From: morris Date: Wed, 16 Sep 2020 22:24:40 +0800 Subject: [PATCH] pcnt: fix bug in clear interrupt status --- components/driver/pcnt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/driver/pcnt.c b/components/driver/pcnt.c index eca10e49d8..b9adfb1ee3 100644 --- a/components/driver/pcnt.c +++ b/components/driver/pcnt.c @@ -286,6 +286,7 @@ static void IRAM_ATTR pcnt_intr_service(void *arg) uint32_t status; pcnt_port_t pcnt_port = (pcnt_port_t)arg; pcnt_hal_get_intr_status(&(p_pcnt_obj[pcnt_port]->hal), &status); + pcnt_hal_clear_intr_status(&(p_pcnt_obj[pcnt_port]->hal), status); while (status) { int unit = __builtin_ffs(status) - 1; @@ -295,7 +296,6 @@ static void IRAM_ATTR pcnt_intr_service(void *arg) (pcnt_isr_func[unit].fn)(pcnt_isr_func[unit].args); } } - pcnt_hal_clear_intr_status(&(p_pcnt_obj[pcnt_port]->hal), status); } static inline esp_err_t _pcnt_isr_service_install(pcnt_port_t pcnt_port, int intr_alloc_flags)