|
|
@@ -27,22 +27,8 @@
|
|
|
|
|
|
int pxa910_set_wake(struct irq_data *data, unsigned int on)
|
|
|
{
|
|
|
- int irq = data->irq;
|
|
|
- struct irq_desc *desc = irq_to_desc(data->irq);
|
|
|
uint32_t awucrm = 0, apcr = 0;
|
|
|
-
|
|
|
- if (unlikely(irq >= nr_irqs)) {
|
|
|
- pr_err("IRQ nubmers are out of boundary!\n");
|
|
|
- return -EINVAL;
|
|
|
- }
|
|
|
-
|
|
|
- if (on) {
|
|
|
- if (desc->action)
|
|
|
- desc->action->flags |= IRQF_NO_SUSPEND;
|
|
|
- } else {
|
|
|
- if (desc->action)
|
|
|
- desc->action->flags &= ~IRQF_NO_SUSPEND;
|
|
|
- }
|
|
|
+ int irq = data->irq;
|
|
|
|
|
|
/* setting wakeup sources */
|
|
|
switch (irq) {
|
|
|
@@ -115,9 +101,11 @@ int pxa910_set_wake(struct irq_data *data, unsigned int on)
|
|
|
if (irq >= IRQ_GPIO_START && irq < IRQ_BOARD_START) {
|
|
|
awucrm = MPMU_AWUCRM_WAKEUP(2);
|
|
|
apcr |= MPMU_APCR_SLPWP2;
|
|
|
- } else
|
|
|
+ } else {
|
|
|
+ /* FIXME: This should return a proper error code ! */
|
|
|
printk(KERN_ERR "Error: no defined wake up source irq: %d\n",
|
|
|
irq);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
if (on) {
|