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-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html