aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/irq
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2011-02-08 08:34:18 -0500
committerThomas Gleixner <tglx@linutronix.de>2011-02-19 06:58:18 -0500
commit6d2cd17fde1fc3e93302815f049f255bb2b3123e (patch)
tree48995b27264ec657cae21e22a5be1f4c05973bc0 /kernel/irq
parentc531e8361f1968d664e6e97fbd3bfa4cf0e62e42 (diff)
genirq: Move IRQ_WAKEUP to core
No users outside of core. Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'kernel/irq')
-rw-r--r--kernel/irq/internals.h2
-rw-r--r--kernel/irq/manage.c4
-rw-r--r--kernel/irq/pm.c2
-rw-r--r--kernel/irq/settings.h2
4 files changed, 7 insertions, 3 deletions
diff --git a/kernel/irq/internals.h b/kernel/irq/internals.h
index 46889119e6a6..cef0849dcfa5 100644
--- a/kernel/irq/internals.h
+++ b/kernel/irq/internals.h
@@ -49,6 +49,7 @@ enum {
49 * IRQS_PENDING - irq is pending and replayed later 49 * IRQS_PENDING - irq is pending and replayed later
50 * IRQS_MASKED - irq is masked 50 * IRQS_MASKED - irq is masked
51 * IRQS_SUSPENDED - irq is suspended 51 * IRQS_SUSPENDED - irq is suspended
52 * IRQS_WAKEUP - irq triggers system wakeup from suspend
52 */ 53 */
53enum { 54enum {
54 IRQS_AUTODETECT = 0x00000001, 55 IRQS_AUTODETECT = 0x00000001,
@@ -62,6 +63,7 @@ enum {
62 IRQS_PENDING = 0x00000200, 63 IRQS_PENDING = 0x00000200,
63 IRQS_MASKED = 0x00000400, 64 IRQS_MASKED = 0x00000400,
64 IRQS_SUSPENDED = 0x00000800, 65 IRQS_SUSPENDED = 0x00000800,
66 IRQS_WAKEUP = 0x00001000,
65}; 67};
66 68
67#define irq_data_to_desc(data) container_of(data, struct irq_desc, irq_data) 69#define irq_data_to_desc(data) container_of(data, struct irq_desc, irq_data)
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
index b912de4ff4de..ccc9389909ff 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -489,7 +489,7 @@ int irq_set_irq_wake(unsigned int irq, unsigned int on)
489 if (ret) 489 if (ret)
490 desc->wake_depth = 0; 490 desc->wake_depth = 0;
491 else 491 else
492 desc->status |= IRQ_WAKEUP; 492 desc->istate |= IRQS_WAKEUP;
493 } 493 }
494 } else { 494 } else {
495 if (desc->wake_depth == 0) { 495 if (desc->wake_depth == 0) {
@@ -499,7 +499,7 @@ int irq_set_irq_wake(unsigned int irq, unsigned int on)
499 if (ret) 499 if (ret)
500 desc->wake_depth = 1; 500 desc->wake_depth = 1;
501 else 501 else
502 desc->status &= ~IRQ_WAKEUP; 502 desc->istate &= ~IRQS_WAKEUP;
503 } 503 }
504 } 504 }
505 505
diff --git a/kernel/irq/pm.c b/kernel/irq/pm.c
index d81337fc1cff..f39383d8672d 100644
--- a/kernel/irq/pm.c
+++ b/kernel/irq/pm.c
@@ -69,7 +69,7 @@ int check_wakeup_irqs(void)
69 int irq; 69 int irq;
70 70
71 for_each_irq_desc(irq, desc) 71 for_each_irq_desc(irq, desc)
72 if ((desc->status & IRQ_WAKEUP) && 72 if ((desc->istate & IRQS_WAKEUP) &&
73 (desc->istate & IRQS_PENDING)) 73 (desc->istate & IRQS_PENDING))
74 return -EBUSY; 74 return -EBUSY;
75 75
diff --git a/kernel/irq/settings.h b/kernel/irq/settings.h
index 2cd45fd5ec8a..ef09824e4b32 100644
--- a/kernel/irq/settings.h
+++ b/kernel/irq/settings.h
@@ -18,3 +18,5 @@ enum {
18#define IRQ_PENDING GOT_YOU_MORON 18#define IRQ_PENDING GOT_YOU_MORON
19#undef IRQ_MASKED 19#undef IRQ_MASKED
20#define IRQ_MASKED GOT_YOU_MORON 20#define IRQ_MASKED GOT_YOU_MORON
21#undef IRQ_WAKEUP
22#define IRQ_WAKEUP GOT_YOU_MORON