mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* Set_up irq problem while using gpio
@ 2008-07-15  6:04 sasa sasa
  2008-07-15 12:32 ` Ben Dooks
  0 siblings, 1 reply; 4+ messages in thread
From: sasa sasa @ 2008-07-15  6:04 UTC (permalink / raw)
  To: linux-kernel

Hi,

I have query that the below patch has to applied on irq/manage.c file or not.
--- kernel_old/irq/manage.c 2008-02-07 22:11:14.000000000 +0530
+++ kernel_new/irq/manage.c 2008-02-07 22:19:14.000000000 +0530
@@ -349,8 +349,14 @@
        /* Setup the type (level, edge polarity) if configured: */
        if (new->flags & IRQF_TRIGGER_MASK) {
            if (desc->chip && desc->chip->set_type)
-               desc->chip->set_type(irq,
-                       new->flags & IRQF_TRIGGER_MASK);
+           {
+               if((desc->chip->set_type(irq,
+                       new->flags & IRQF_TRIGGER_MASK)))
+               {
+                   spin_unlock_irqrestore(&desc->lock, flags);
+                   return -ESPIPE;
+               }
+           }
            else
                /*
                 * IRQF_TRIGGER_* but the PIC does not support

The reason is that in case of gpio pins used as interrupt pin but that
pin has already been ocuupied in other mode (like alternate function
mode or in software mode) by other device. In that case, some error
mechanism must be there, if we are requesting that gpio pin as
interrupt through request_irq function.

Regards
Sasa

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2008-07-17  9:21 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-07-15  6:04 Set_up irq problem while using gpio sasa sasa
2008-07-15 12:32 ` Ben Dooks
2008-07-16  4:08   ` sasa sasa
2008-07-17  9:20     ` [BUG]Set_up " sasa sasa

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®