summaryrefslogtreecommitdiff
path: root/sys/arm/xscale
diff options
context:
space:
mode:
authorSam Leffler <sam@FreeBSD.org>2009-06-22 20:33:59 +0000
committerSam Leffler <sam@FreeBSD.org>2009-06-22 20:33:59 +0000
commit9b3a6692c841b31df0e844733ba592b9a7197b22 (patch)
tree689544aa3d7d19a57aeca7b32bbd62a30353a1a5 /sys/arm/xscale
parenta47a6c96f212aad8f66cd872dd685cb04fa40cdd (diff)
downloadsrc-test2-9b3a6692c841b31df0e844733ba592b9a7197b22.tar.gz
src-test2-9b3a6692c841b31df0e844733ba592b9a7197b22.zip
Notes
Diffstat (limited to 'sys/arm/xscale')
-rw-r--r--sys/arm/xscale/ixp425/ixp425.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/sys/arm/xscale/ixp425/ixp425.c b/sys/arm/xscale/ixp425/ixp425.c
index 42ee81d5bf3b..0a2113131e2b 100644
--- a/sys/arm/xscale/ixp425/ixp425.c
+++ b/sys/arm/xscale/ixp425/ixp425.c
@@ -159,6 +159,14 @@ DB_SHOW_COMMAND(gpio, db_show_gpio)
}
#endif
+static __inline void
+ixp425_gpio_ack(int irq)
+{
+ if (irq < 32 && ((1 << irq) & IXP425_INT_GPIOMASK))
+ IXPREG(IXP425_GPIO_VBASE + IXP425_GPIO_GPISR) =
+ ixp425_irq2gpio_bit(irq);
+}
+
void
arm_mask_irq(uintptr_t nb)
{
@@ -174,9 +182,7 @@ arm_mask_irq(uintptr_t nb)
}
restore_interrupts(i);
/*XXX; If it's a GPIO interrupt, ACK it know. Can it be a problem ?*/
- if (nb < 32 && ((1 << nb) & IXP425_INT_GPIOMASK))
- IXPREG(IXP425_GPIO_VBASE + IXP425_GPIO_GPISR) =
- ixp425_irq2gpio_bit(nb);
+ ixp425_gpio_ack(nb);
}
void