Re: [PATCH] input: add suspend wakeup support to sh_keysc

From: Trilok Soni
Date: Tue Mar 10 2009 - 07:11:03 EST


Hi Magnus,

On Tue, Mar 10, 2009 at 4:22 PM, Magnus Damm <magnus.damm@xxxxxxxxx> wrote:
> On Tue, Mar 10, 2009 at 7:43 PM, Trilok Soni <soni.trilok@xxxxxxxxx> wrote:
>>>> Please add device_init_wakeup(&pdev->dev, 0) in sh_keysc_remove.
>>>
>>> Isn't this just flagging the device as wakeup capable? My first guess
>>> would be that the the wakeup state of a removed device is irrelevant
>>> since it won't be suspended anyway. Or am I misunderstanding? Please
>>> explain in more detail.
>>
>> I may not have complete answer, but I am thinking of someone depending/reading
>> on wakeup file state to determine the state of your device in userspace will get
>> confused, so better to disable to wakeup capability on remove.
>
> I think the per device wakeup file will disappear from sysfs when the
> device gets removed, so resetting the flag in the remove() callback
> just makes the driver code more confusing in my opinion. =)

Yes, I thought the same but then I am surprised to find my drivers
doing device_init_wakeup(...., 0)
on driver removal.

#grep "device_init_wakeup(&pdev->dev, 0)" -d recurse ./ | more
./usb/musb/musb_core.c: device_init_wakeup(&pdev->dev, 0);
./usb/gadget/at91_udc.c: device_init_wakeup(&pdev->dev, 0);
./usb/host/ohci-at91.c: device_init_wakeup(&pdev->dev, 0);
./serial/atmel_serial.c: device_init_wakeup(&pdev->dev, 0);
./input/keyboard/gpio_keys.c: device_init_wakeup(&pdev->dev, 0);
./rtc/rtc-at32ap700x.c: device_init_wakeup(&pdev->dev, 0);
./rtc/rtc-omap.c: device_init_wakeup(&pdev->dev, 0);
./rtc/rtc-omap.c: device_init_wakeup(&pdev->dev, 0);
./pcmcia/at91_cf.c: device_init_wakeup(&pdev->dev, 0);
./pcmcia/at91_cf.c: device_init_wakeup(&pdev->dev, 0);
./mfd/htc-egpio.c: device_init_wakeup(&pdev->dev, 0);
./mmc/host/at91_mci.c: device_init_wakeup(&pdev->dev, 0);


--
---Trilok Soni
http://triloksoni.wordpress.com
http://www.linkedin.com/in/triloksoni
--
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/