[mythtv-users] remote does not work after resume (mythbuntu karmic AMD 64 with 0.22)

Jarod Wilson jarod at wilsonet.com
Sun Feb 7 06:08:27 UTC 2010


On Sun, Feb 7, 2010 at 1:02 AM, Justin Smith <justin at smithpolglase.com> wrote:
> Hi,
>
> My remote does not work after suspend/resume (using power button on box, not
> remote - getting the remote power button to do suspend/resume is next
> step!). Mythfrontend is otherwise running fine (frontend-only box). From
> some google searches, I see that some people have had problems with lirc
> starting correctly after resume. For me, it is definitely running after
> resume, but perhaps not correctly...
>
> Restarting lirc and then mythfrontend does not fix the problem (after
> resume).
>
> irw does not work after resume.
>
> I think the relevant module is usbhid (not sure if other modules are also
> relevant). This module is still present after resume. Doing a rmmod usbhid
> then modprobe usbhid, then restarting lirc, then the frontend didn't fix it
> either.
>
> The dvico USB IR receiver device is still present after resume
> (/dev/usb/hiddev0).
>
>
> Some details:
>
> OS/distro: Mythbuntu Karmic AMD 64 running daily builds of 0.22 (now up to
> svn 23473).
>
> IR receiver: Dvico USB.
>
> Output of ps -ef | grep lirc (same before and after suspend/resume):
>
> root      1058     1  0 12:34 ?        00:00:00 /usr/sbin/lircd
> --output=/var/run/lirc/lircd --driver=dvico --device=/dev/usb/hiddev0
>
> Output of lsmod | grep usb (same before and after suspend/resume):
> usbhid                 43968  1
>
>
> One thing *did* work though - removing the USB IR receiver then plugging it
> in again (both actions done after resume). I'd rather just leave the
> frontend powered up... :)
>
>
> Does anyone have any debugging ideas?

Best guess offhand, the device needs a .reset_resume function wired
up. Here's what fixed up mceusb devices:

commit 1ad74b6503092097e8eaf014769e6ec9aba29eee
Author: Jarod Wilson <jarod at redhat.com>
Date:   Sun Jul 5 18:08:22 2009 -0400

    lirc_mceusb: wire up .reset_resume

    makes driver functional after suspend/resume when woken up via a
    button press on the remote. From Eloy Paris on the lirc list.

    Signed-off-by: Jarod Wilson <jarod at redhat.com>

diff --git a/drivers/input/lirc/lirc_mceusb.c b/drivers/input/lirc/lirc_mceusb.c
index bc55488..840d0e1 100644
--- a/drivers/input/lirc/lirc_mceusb.c
+++ b/drivers/input/lirc/lirc_mceusb.c
@@ -1183,6 +1183,7 @@ static struct usb_driver mceusb_dev_driver = {
        .disconnect =   mceusb_dev_disconnect,
        .suspend =      mceusb_dev_suspend,
        .resume =       mceusb_dev_resume,
+       .reset_resume = mceusb_dev_resume,
        .id_table =     mceusb_dev_table
 };

Worth looking to see if your device needs similar.

-- 
Jarod Wilson
jarod at wilsonet.com


More information about the mythtv-users mailing list