summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien George <damien@micropython.org>2023-04-26 12:57:35 +1000
committerDamien George <damien@micropython.org>2023-04-26 12:57:35 +1000
commita14e79bcfbff83129b2e889332f5f1b8ce5c6c3e (patch)
tree4c545b9a81e4f159e5b50918a142088fe596a1fc
parent41a2415e081afd6d2bff82fa6dbacb7bcfc9e63b (diff)
stm32/cyw43_configport: Provide cyw43_hal_pin_config_irq_falling func.
Signed-off-by: Damien George <damien@micropython.org>
-rw-r--r--ports/stm32/cyw43_configport.h7
-rw-r--r--ports/stm32/extint.h1
2 files changed, 8 insertions, 0 deletions
diff --git a/ports/stm32/cyw43_configport.h b/ports/stm32/cyw43_configport.h
index b7137ef61..4b6dde3c4 100644
--- a/ports/stm32/cyw43_configport.h
+++ b/ports/stm32/cyw43_configport.h
@@ -32,6 +32,7 @@
#include "py/mperrno.h"
#include "py/mphal.h"
#include "extmod/modnetwork.h"
+#include "extint.h"
#include "pendsv.h"
#include "sdio.h"
@@ -115,6 +116,12 @@ static inline void cyw43_delay_ms(uint32_t ms) {
}
}
+static inline void cyw43_hal_pin_config_irq_falling(cyw43_hal_pin_obj_t pin, int enable) {
+ if (enable) {
+ extint_set(pin, GPIO_MODE_IT_FALLING);
+ }
+}
+
static inline void cyw43_sdio_init(void) {
sdio_init(NVIC_EncodePriority(NVIC_PRIORITYGROUP_4, 14, 0));
}
diff --git a/ports/stm32/extint.h b/ports/stm32/extint.h
index fddcc2ae7..84eb876d8 100644
--- a/ports/stm32/extint.h
+++ b/ports/stm32/extint.h
@@ -66,6 +66,7 @@ void extint_init0(void);
uint extint_register(mp_obj_t pin_obj, uint32_t mode, uint32_t pull, mp_obj_t callback_obj, bool override_callback_obj);
void extint_register_pin(const pin_obj_t *pin, uint32_t mode, bool hard_irq, mp_obj_t callback_obj);
+void extint_set(const pin_obj_t *pin, uint32_t mode);
void extint_enable(uint line);
void extint_disable(uint line);