[PATCH] Beaglebone Black: Fix rtems_gpio_bsp_disable_interrupt disabling all the GPIO interrupts

Martin Galvan martin.galvan at tallertechnologies.com
Tue Dec 15 15:21:03 UTC 2015


Currently, rtems_gpio_bsp_disable_interrupt disables the interrupts for all the
pins, not just the one that actually caused the interrupt. This patch
fixes that issue.

Closes #2497.
---
 c/src/lib/libbsp/arm/beagle/gpio/bbb-gpio.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/c/src/lib/libbsp/arm/beagle/gpio/bbb-gpio.c b/c/src/lib/libbsp/arm/beagle/gpio/bbb-gpio.c
index bd26051..2a3f7e8 100644
--- a/c/src/lib/libbsp/arm/beagle/gpio/bbb-gpio.c
+++ b/c/src/lib/libbsp/arm/beagle/gpio/bbb-gpio.c
@@ -360,7 +360,7 @@ rtems_status_code rtems_gpio_bsp_disable_interrupt(
   rtems_gpio_interrupt interrupt
 ) {
   /* Clear IRQ generation for the specific pin */
-  mmio_set(bbb_reg(bank, AM335X_GPIO_IRQSTATUS_CLR_0), BIT(pin));
+  mmio_write(bbb_reg(bank, AM335X_GPIO_IRQSTATUS_CLR_0), BIT(pin));

   switch ( interrupt ) {
     case FALLING_EDGE:
--
2.6.4



More information about the devel mailing list