Questions about interrupt

From: Alex Feng
Date: Sat Jun 13 2015 - 12:50:21 EST


Hi experts,

I have trouble about interrupt. I need low level trigger the interrupt. My control flow is that when data is less than a threshold, it needs keeping interrupt until data is supplied.

So I use the flag `IRQ_TYPE_LEVEL_LOW `, but it doesnât work. I have also tried `IRQF_TRIGGER_LOW`, it also doesnât work.

I have checked the hardware register, the interrupt GPIO is still `falling edges`, not `low level`.

My board is ARM S3C6410 tiny board.


221 /* inkprinter */
222 #define S3C64XX_PA_INKPRINTER (0x30000000)
223 #define S3C64XX_SZ_INKPRINTER SZ_1M
224 static struct resource inkprinter_resources[] = {
225 [0] = {
226 .start = S3C64XX_PA_INKPRINTER,
227 .end = S3C64XX_PA_INKPRINTER + S3C64XX_SZ_INKPRINTER,
228 .flags = IORESOURCE_MEM,
229 },
230 [1] = {
231 .start = IRQ_EINT(1),
232 .end = IRQ_EINT(1),
233 .flags = IORESOURCE_IRQ | IRQ_TYPE_LEVEL_LOW,
234 }
235 };
236 static struct platform_device s3c_device_inkprinter = {
237 .name = "inkprinter",
238 .num_resources = ARRAY_SIZE(inkprinter_resources),
239 .resource = inkprinter_resources,
240 };
241


My question is :

Is `IRQ_TYPE_LEVEL_LOW ` or `IRQF_TRIGGER_LOW ` for low level trigger? Or some other problem? Any tips?
Your response will be highly appreciated.

Thanks,
/Alex--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/