aboutsummaryrefslogtreecommitdiff
path: root/arch/arm/mach-s3c2440/gta02-fiq.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-s3c2440/gta02-fiq.c')
-rw-r--r--arch/arm/mach-s3c2440/gta02-fiq.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/arm/mach-s3c2440/gta02-fiq.c b/arch/arm/mach-s3c2440/gta02-fiq.c
index 78a6501d5be..d91c52341d5 100644
--- a/arch/arm/mach-s3c2440/gta02-fiq.c
+++ b/arch/arm/mach-s3c2440/gta02-fiq.c
@@ -7,6 +7,7 @@
#include <linux/io.h>
#include <linux/pwm.h>
#include <linux/err.h>
+#include <linux/hdq.h>
/* -------------------------------------------------------------------------------
* GTA02 FIQ related
@@ -17,6 +18,11 @@
#define DIVISOR_FROM_US(x) ((x) << 3)
+#ifdef CONFIG_HDQ_GPIO_BITBANG
+#define FIQ_DIVISOR_HDQ DIVISOR_FROM_US(HDQ_SAMPLE_PERIOD_US)
+extern int hdq_fiq_handler(void);
+#endif
+
/* Global data related to our fiq source */
static uint32_t gta02_fiq_ack_mask;
static const int gta02_gta02_fiq_timer_id = 2;
@@ -35,6 +41,9 @@ void gta02_fiq_handler(void)
* thankfully and taken care of by the fiq-basis patch
*/
+#ifdef CONFIG_HDQ_GPIO_BITBANG
+ keep_running = hdq_fiq_handler();
+#endif
if (!keep_running) {
/* Disable irq */
intmask = __raw_readl(S3C2410_INTMSK);