Re: suspend/resume issues on ThinkPad T41 under 5.2.1-RELEASE

"Dan Langille" <[email protected]>
Newsgroups gmane.os.freebsd.devel.mobile
Message-ID <40CCC783.21535.68FD573F@localhost>
On 13 Jun 2004 at 17:46, Kevin Oberman wrote:

> > From: "Dan Langille" <[email protected]>
> > Date: Sun, 13 Jun 2004 19:21:00 -0400
> > Sender: [email protected]
> > 
> > I've got 5.2.1 running on my ThinkPad T41.  I have no settings in 
> > /etc/sysctl.conf.
> > 
> > /boot/loader.conf contains:
> > hw.pci.allow_unsupported_io_range="1"
> > hw.cbb.start_memory="0xc0210000"
> > 
> > The first is to get em0 running. The second is to avoid memory 
> > conflicts.
> > 
> > I'm trying ACPI.
> > 
> > $ sysctl hw.acpi.supported_sleep_state sysctl hw.acpi.s4bios
> > hw.acpi.supported_sleep_state: S3 S4 S5
> > hw.acpi.s4bios: 0
> > 
> > S4OS and and S5 both suspend, but I cannot resume (ie. opening the 
> > laptop doesn't power up the box, and I've tried various key pressing 
> > combinations, but nothing happens unless I press the power button).
> > 
> > "acpiconf -s 3" does suspend the box.  When resuming, I get this in 
> > /var/log/messages:
> > 
> > Jun 13 18:48:34 laptop sudo:      dan : TTY=ttyp1 ; PWD=/usr/home/dan 
> > ; USER=root ; COMMAND=/usr/sbin/acpiconf -s S3
> > Jun 13 18:48:43 laptop kernel: pcib0: slot 29 INTA is routed to irq 
> > 11
> > Jun 13 18:48:43 laptop kernel: pcib0: slot 29 INTB is routed to irq 
> > 11
> > Jun 13 18:48:43 laptop kernel: pcib0: slot 29 INTC is routed to irq 
> > 11
> > Jun 13 18:48:43 laptop kernel: pcib0: slot 29 INTD is routed to irq 
> > 11
> > Jun 13 18:48:44 laptop kernel: pcib0: slot 31 INTB is routed to irq 
> > 11
> > Jun 13 18:48:44 laptop last message repeated 2 times
> > Jun 13 18:48:44 laptop kernel: pcib1: slot 0 INTA is routed to irq 11
> > Jun 13 18:48:44 laptop kernel: usb0: cannot start
> > Jun 13 18:48:44 laptop kernel: usb1: cannot start
> > Jun 13 18:48:44 laptop kernel: usb2: cannot start
> > Jun 13 18:48:44 laptop kernel: pcib2: slot 0 INTA is routed to irq 11
> > Jun 13 18:48:44 laptop kernel: pcib2: slot 0 INTB is routed to irq 11
> > Jun 13 18:48:44 laptop kernel: pcib2: slot 1 INTA is routed to irq 11
> > Jun 13 18:48:44 laptop kernel: pcib2: slot 2 INTA is routed to irq 11
> > Jun 13 18:48:44 laptop kernel: wakeup from sleeping state (slept 
> > 00:00:08)
> > Jun 13 18:48:44 laptop kernel: uhub0: illegal enable change, port 1
> > Jun 13 18:48:44 laptop kernel: uhub1: illegal enable change, port 1
> > Jun 13 18:48:44 laptop kernel: uhub2: illegal enable change, port 1
> > Jun 13 18:48:45 laptop kernel: uhub0: port 1 reset failed
> > Jun 13 18:48:45 laptop kernel: uhub0: illegal enable change, port 2
> > Jun 13 18:48:45 laptop kernel: uhub1: port 1 reset failed
> > Jun 13 18:48:45 laptop kernel: uhub1: illegal enable change, port 2
> > Jun 13 18:48:45 laptop kernel: uhub2: port 1 reset failed
> > Jun 13 18:48:45 laptop kernel: uhub2: illegal enable change, port 2
> > Jun 13 18:48:46 laptop kernel: uhub0: port 2 reset failed
> > Jun 13 18:48:46 laptop kernel: uhub0: illegal enable change, port 1
> > repeat....
> > 
> > Plus a blinking cursor top left corner.
> > 
> > Any ideas?  http://www.freebsd.org/cgi/query-pr.cgi?pr=59747 
> > indicates that this is a known problem.  Do I have options other than 
> > removing USB support from the kernel?
> > 
> > Ideas?  Comments?
> 
> First, S5 is a very deep sleep...power off. It only resumes by powering
> up and booting.

Heh, sounds like it's a "shutdown -h now", which is more or less what 
I saw on the screen the last time I tried.  

> S4 is suspend to disk. It requires that you build a hibernation
> partition on the hard drive. Without it, S4 will not work (but you
> noticed that.). This is indicated by the value of hw.acpi.s4bios. 

The lack of a hibernation partition is indicated the value of 
hw.acpi.s4bios?  That's interesting.  I will try a hibernation 
partition. From the sounds of it, it sounds like the best suspend 
strategy.  I now have a clear milestone which will indicate I'm good 
to go with hibernation.

> To get S3 (suspend to RAM) to work, I'd suggest building a kernel
> without SMP or APIC. The messages you are reporting are indicative of
> problems figuring out the interrupt routing for multiple processors,
> but you have only a single CPU. Turning off APIC (and SMP it it's
> enabled) should return to the simpler interrupt delivery.

Thank you for that.  This explains a few things...  I had removed the 
above two devices from my kernel.  Upon rechecking, I see I did a 
make buildkernel KENCONF=LAPTOP.... and KENCONF != KERNCONF....

After compiling the correct kernel (the above worked on GENERIC by 
default), I no longer have the uhub issues.

The existing issues after a resume are:

- blinking cursor at top left (I'll try killing moused in 
/etc/suspend and starting it again in /etc/resume)

- em0 is dead upon resume (I'll try killing dhclient, and starting it 
again, as well as setting).  I keep getting 

laptop kernel: em0: The EEPROM Checksum Is Not Valid
laptop kernel: em0: Unable to initialize the hardware

At boot time, this problem is avoided with the following entry in 
/boot/loader.conf

hw.pci.allow_unsupported_io_range="1"

Any ideas how to set that upon resume?
-- 
Dan Langille : http://www.langille.org/
BSDCan - http://www.bsdcan.org/

_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-mobile
To unsubscribe, send any mail to "[email protected]"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.