From c7f37fc2113e7c753ab7834bef23006ffce4d72f Mon Sep 17 00:00:00 2001 From: Graham Sanderson Date: Wed, 16 Jul 2025 08:17:40 -0500 Subject: [PATCH] make gpio_acknowledge_irq inline (#2562) --- src/rp2_common/hardware_gpio/gpio.c | 5 ----- src/rp2_common/hardware_gpio/include/hardware/gpio.h | 5 ++++- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/rp2_common/hardware_gpio/gpio.c b/src/rp2_common/hardware_gpio/gpio.c index 2c4e91d4..0a7bf90f 100644 --- a/src/rp2_common/hardware_gpio/gpio.c +++ b/src/rp2_common/hardware_gpio/gpio.c @@ -253,11 +253,6 @@ void gpio_set_dormant_irq_enabled(uint gpio, uint32_t events, bool enabled) { _gpio_set_irq_enabled(gpio, events, enabled, irq_ctrl_base); } -void gpio_acknowledge_irq(uint gpio, uint32_t events) { - check_gpio_param(gpio); - io_bank0_hw->intr[gpio / 8] = events << (4 * (gpio % 8)); -} - #define DEBUG_PIN_MASK (((1u << PICO_DEBUG_PIN_COUNT)-1) << PICO_DEBUG_PIN_BASE) void gpio_debug_pins_init(void) { gpio_init_mask(DEBUG_PIN_MASK); diff --git a/src/rp2_common/hardware_gpio/include/hardware/gpio.h b/src/rp2_common/hardware_gpio/include/hardware/gpio.h index f05bc000..3894acaa 100644 --- a/src/rp2_common/hardware_gpio/include/hardware/gpio.h +++ b/src/rp2_common/hardware_gpio/include/hardware/gpio.h @@ -570,7 +570,10 @@ static inline uint32_t gpio_get_irq_event_mask(uint gpio) { * \note For callbacks set with \ref gpio_set_irq_enabled_with_callback, or \ref gpio_set_irq_callback, this function is called automatically. * \param event_mask Bitmask of events to clear. See \ref gpio_irq_level for details. */ -void gpio_acknowledge_irq(uint gpio, uint32_t event_mask); +static inline void gpio_acknowledge_irq(uint gpio, uint32_t event_mask) { + check_gpio_param(gpio); + io_bank0_hw->intr[gpio / 8] = event_mask << (4 * (gpio % 8)); +} /*! \brief Adds a raw GPIO IRQ handler for the specified GPIOs on the current core * \ingroup hardware_gpio