Page 1 of 8 123 ... LastLast
Results 1 to 10 of 71

Thread: Understanding /proc/acpi/wakeup

  1. #1
    Join Date
    Jul 2007
    Location
    Christchurch, New Zealand
    Beans
    29
    Distro
    Ubuntu 9.04 Jaunty Jackalope

    Understanding /proc/acpi/wakeup

    Hi,

    I'm running Ubuntu 8.04 on an AMD (x86_64) platform, have have been able to get suspend working, which is really great.

    However, I've been trying to get my machine to wake up after a suspend, without having to use the computer's power button. From reading http://www.uluga.ubuntuforums.org/sh...70&postcount=4 I know I need to set up my /proc/acpi/wakeup correctly, but I don't understand exactly what I am doing.

    I would like to enable WOL (ethernet "Wake On Lan"), PS2 keyboard and mouse and USB device to wake up the machine after a suspend. The contents of my /proc/acpi/wakeup are:

    Code:
    jon@black:/etc/acpi$ cat /proc/acpi/wakeup
    Device	S-state	  Status   Sysfs node
    HUB0	  S5	 disabled  pci:0000:00:06.0
    XVR0	  S5	 disabled  pci:0000:00:0f.0
    XVR1	  S5	 disabled  pci:0000:00:0e.0
    XVR2	  S5	 disabled  pci:0000:00:0d.0
    XVR3	  S5	 disabled  pci:0000:00:0c.0
    XVR4	  S5	 disabled  pci:0000:00:0b.0
    XVR5	  S5	 disabled  pci:0000:00:0a.0
    UAR1	  S5	 disabled  pnp:00:07
    PS2M	  S4	 disabled  pnp:00:09
    USB0	  S4	 disabled  pci:0000:00:02.0
    USB2	  S4	 disabled  pci:0000:00:02.1
    AZAD	  S5	 disabled  pci:0000:00:06.1
    MMAC	  S5	 disabled  pci:0000:00:08.0
    MAC1	  S5	 disabled  pci:0000:00:09.0
    Obviously I can do the following to enable USB:

    Code:
    root#black> echo UCH1 > /proc/acpi/wakeup
    and this works. But, what are the other devices? Is there a way to work out what, for example, XVR2 actually is? How do you go from the device "code" and the "system node" to knowing exactly what is what? What would be the difference between the USB0 an USB2 devices? And, finally, what would I "activate" in order to enable the ethernet WOL to wake up the machine after a suspend?

    Many thanks for any help you can give.

    Cheers,

    Jon



    (And, just in case anyone asks, yes, I have enabled WOL by using ethtool.)
    Code:
    jon@black:/etc/acpi$ sudo ethtool eth0:
    Settings for eth0::
    	Supported ports: [ MII ]
    	Supported link modes:   10baseT/Half 10baseT/Full 
    	                        100baseT/Half 100baseT/Full 
    	                        1000baseT/Full 
    	Supports auto-negotiation: Yes
    	Advertised link modes:  10baseT/Half 10baseT/Full 
    	                        100baseT/Half 100baseT/Full 
    	                        1000baseT/Full 
    	Advertised auto-negotiation: Yes
    	Speed: 100Mb/s
    	Duplex: Full
    	Port: MII
    	PHYAD: 1
    	Transceiver: external
    	Auto-negotiation: on
    	Supports Wake-on: g
    	Wake-on: g
    	Link detected: yes

  2. #2
    Join Date
    Jan 2007
    Location
    $here ? $here : $there
    Beans
    3,717
    Distro
    Ubuntu 8.04 Hardy Heron

    Re: Understanding /proc/acpi/wakeup

    Wow, that's really interesting. I wasn't even aware of that file but, it seems really interesting. Those look like things that are exported via ACPI and probably very machine dependent. Probably the only way you could figure out what each device is would be to: 1) Enable stuff and figure out what it does by trial and error. 2) Decompile the DSDT and see if you can understand the code (quite hard to do actually) 3) Ask google really, really nicely to tell you what each device is.

    Regardless, I'll look into that file a bit more. I'm really surprised that it can be written to.
    Don't try to make something "fast" until you are able to quantify "slow".

  3. #3
    Join Date
    Jan 2007
    Location
    $here ? $here : $there
    Beans
    3,717
    Distro
    Ubuntu 8.04 Hardy Heron

    Re: Understanding /proc/acpi/wakeup

    I looked at this a bit more and, you might be able to do an "lspci" and correlate the pci device number of your ethernet card to the device numbers displayed in /proc/acpi/wakeup and enable it. No way to try this out though.
    Don't try to make something "fast" until you are able to quantify "slow".

  4. #4
    Join Date
    Jul 2007
    Location
    Christchurch, New Zealand
    Beans
    29
    Distro
    Ubuntu 9.04 Jaunty Jackalope

    Re: Understanding /proc/acpi/wakeup

    Hi vor,

    Bingo! That's what I needed to know:
    Code:
    lspci
    The output from that matched the "System Nodes" reported in /proc/acpi/wakeup, and so I can correctly enable the devices I wanted to be able to wakeup from a suspend.

    Many thanks,

    Jon

  5. #5
    Join Date
    Jan 2007
    Location
    $here ? $here : $there
    Beans
    3,717
    Distro
    Ubuntu 8.04 Hardy Heron

    Re: Understanding /proc/acpi/wakeup

    Glad that helped. Now I'm wondering how many people I've told, "Your laptop won't resume on lid open because your BIOS doesn't support it", when in reality, a simple echo to /proc/acpi/wakeup might do the job... Neat file.
    Don't try to make something "fast" until you are able to quantify "slow".

  6. #6
    Join Date
    Jul 2007
    Location
    Christchurch, New Zealand
    Beans
    29
    Distro
    Ubuntu 9.04 Jaunty Jackalope

    Re: Understanding /proc/acpi/wakeup

    Yep, it certainly is good when you make a discovery like this!

    I thought I had everything fixed, but it looks as though a suspend-and-wakeup cycle only works once for me. If I suspend the machine after it has already been suspended-and-woken-up, it fails to wake up. Sigh. I think I saw something like this in the forums a while ago, so I shall have to search out that solution now...

    Hey, think how many people you can make happy by saying you've found a (potential) fix for their resume-on-lid problems!!

    Cheers,

    Jon

  7. #7
    Join Date
    Jan 2007
    Location
    $here ? $here : $there
    Beans
    3,717
    Distro
    Ubuntu 8.04 Hardy Heron

    Re: Understanding /proc/acpi/wakeup

    How does it fail to resume? If it fails with a completely white screen and you are using nvidia, it probably isn't completely failing. Blindly type in your password to the white screen and the machine will come back up.
    Don't try to make something "fast" until you are able to quantify "slow".

  8. #8
    Join Date
    Jul 2007
    Location
    Christchurch, New Zealand
    Beans
    29
    Distro
    Ubuntu 9.04 Jaunty Jackalope

    Re: Understanding /proc/acpi/wakeup

    Hi vor,

    Thanks for your reply. When I say it fails to resume, what I mean is that once I have suspended the machine for the second time, it will no longer respond to any of:

    - WOL packets
    - PS2 mouse/keyboard
    - USB device
    - power button

    I have to use the reset button (which I think physically breaks the power circuit, whereas the power button sends a signal to the motherboard...?) to restart the machine.

    I shall keep searching... and thanks for your help,

    Jon

  9. #9
    Join Date
    Jan 2007
    Location
    $here ? $here : $there
    Beans
    3,717
    Distro
    Ubuntu 8.04 Hardy Heron

    Re: Understanding /proc/acpi/wakeup

    Unfortunately, suspend/resume failures are very laptop/motherboard specific. About all I can do is point you at the things that may hold a fix for you: /etc/default/acpi-support (which may not be useful in Hardy anymore) and all the stuff in /usr/lib/pm-utils.
    Don't try to make something "fast" until you are able to quantify "slow".

  10. #10
    Join Date
    May 2008
    Beans
    48

    Re: Understanding /proc/acpi/wakeup

    So you were able to see your system nodes for your NIC? It doesn't seem to match up for me. I will post the outputs when I get home today.

    I also remember seeing a solution about fixing WOL if it has been woken up a 2nd time. I'll try to search for it too.

Page 1 of 8 123 ... LastLast

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •