[PATCH] IRQ type flags
[safe/jmp/linux-2.6] / include / linux / signal.h
index 0a98f5e..ea9eff1 100644 (file)
 #define SA_PROBE               SA_ONESHOT
 #define SA_SAMPLE_RANDOM       SA_RESTART
 #define SA_SHIRQ               0x04000000
+/*
+ * As above, these correspond to the IORESOURCE_IRQ_* defines in
+ * linux/ioport.h to select the interrupt line behaviour.  When
+ * requesting an interrupt without specifying a SA_TRIGGER, the
+ * setting should be assumed to be "as already configured", which
+ * may be as per machine or firmware initialisation.
+ */
+#define SA_TRIGGER_LOW         0x00000008
+#define SA_TRIGGER_HIGH                0x00000004
+#define SA_TRIGGER_FALLING     0x00000002
+#define SA_TRIGGER_RISING      0x00000001
+#define SA_TRIGGER_MASK        (SA_TRIGGER_HIGH|SA_TRIGGER_LOW|\
+                                SA_TRIGGER_RISING|SA_TRIGGER_FALLING)
 
 /*
  * Real Time signals may be queued.
@@ -25,7 +38,6 @@
 
 struct sigqueue {
        struct list_head list;
-       spinlock_t *lock;
        int flags;
        siginfo_t info;
        struct user_struct *user;
@@ -231,10 +243,8 @@ extern int __group_send_sig_info(int, struct siginfo *, struct task_struct *);
 extern long do_sigpending(void __user *, unsigned long);
 extern int sigprocmask(int, sigset_t *, sigset_t *);
 
-#ifndef HAVE_ARCH_GET_SIGNAL_TO_DELIVER
 struct pt_regs;
 extern int get_signal_to_deliver(siginfo_t *info, struct k_sigaction *return_ka, struct pt_regs *regs, void *cookie);
-#endif
 
 #endif /* __KERNEL__ */