Re: [PATCH] PM: suspend_device_irqs(): don't disable wakeup IRQs

From: Kim Kyuwon
Date: Wed May 06 2009 - 22:04:39 EST


2009/5/7 Arve Hjønnevåg <arve@xxxxxxxxxxx>:
> 2009/5/6 Kim Kyuwon <chammoru@xxxxxxxxx>:
>> 2009/5/7 Arve Hjønnevåg <arve@xxxxxxxxxxx>:
>>> On Wed, May 6, 2009 at 5:16 PM, Kevin Hilman
>>> <khilman@xxxxxxxxxxxxxxxxxxx> wrote:
>>>> "Rafael J. Wysocki" <rjw@xxxxxxx> writes:
>>>>
>>>>> On Wednesday 06 May 2009, Kevin Hilman wrote:
>>>>>> Kevin Hilman <khilman@xxxxxxxxxxxxxxxxxxx> writes:
>>>
>>>> There is at least one problem with that which is why Kyuwon Kim added
>>>> the ->disable hook to OMAP's irq_chip. The problem is with drivers
>>>> that call disable_irq() in their suspend hook, usually done to prevent
>>>> the device from waking the system since on OMAP, any IRQ can be
>>>> configured to wake the system.
>>>>
>>>
>>> This does not sound correct. disable_irq_wake should be used for this.
>>> A driver may need to mask its interrupt before suspending but this
>>> should not also disable it as a wakeup source.
>>
>> I wish I could use disable_irq_wake(), but it doesn't work in OMAP.
>
> This does not sound like a hardware problem.

We may need advices of TI engineers.
However, as far as I know, It is impossible to disable 'interrupt
wake-up' with interrupt enabled. Because an interrupt itself generate
a system wake-up event in OMAP3430 (Hardware level).
--
Kyuwon

> --
> Arve Hjønnevåg
--
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/