THE PROBLEM:
Original Post to thinkpad mailing list
Hi
I am running Ubuntu 7.10 on a Lenovo X61s. very nice I have to say.
When I run suspend (to RAM), when the machine comes back up, everything
else works (usually) except USB. I have tried restarting the dbus
daemon, unloading and reloading uhci_hcd and ehci_hcd.
Note that *all* my USB ports are dead – I have seen posts where the RHS
ones only are dead after resume.
A complete reboot brings everything up as normal.
I have the acpi_sleep=s3_bios in my kernel at boot, as that fixed
problems I was having with the ipw3945 wifi card.
I have also set the PCI IRQ to Auto in the BIOS (made no difference).
THE SOLUTION:
The dead USB problem on my X61s with Ubuntu 7.10 (Gutsy) after resuming
from suspend has been fixed by upgrading the kernel to 2.6.24 (it was previously
the default 2.6.22 shipped with Gutsy).
Thanks to Peter Fruehberger for guiding me through the process and
providing an appropriate .config file for the kernel build.
Since performing the upgrade last night, I have performed 3-4 suspends
and the USB slots are still working! I still have
acpi_sleep=s3_bios
In my kernel options for the backlight problem. Not sure if that is
needed anymore.
This is the procedure I followed, based on Peter’s advice.
Upgrading 2.6.22 to 2.6.24 under Ubuntu 7.10 for X61s
Download and unpack kernel to /usr/src/linux-2.6.24
download thinkpad_acpi patch from
http://sourceforge.net/project/showfiles.php?group_id=117042
to /usr/src/thinkpad-acpi
patch kernel:
cd /usr/src/linux-2.6.24
patch -p1 < ../thinkpad-acpi/thinkpad-acpi-0.19-20080107_v2.6.24-rc7.patch
copy current kernel config
cp /boot/config-2.6.22-14-generic .config
make oldconfig
the next step is to do this:
make menuconfig (add iwlwifi and snd_hda)
for the snd_hda, go to Device drivers/Sound/PCI Devices
and select snd_hda as a module
I found the ‘make oldconfig” step confusing as I was faced with a
bunch of questions about experimental options. I wasn’t sure what to accept so emailed
Peter Frühberger who sent me his config file which you can pick up from here:
http://www.philfam.co.uk/pete/ftp/config-2.6.24-x61s.bz2
I copied this to the main directory as .config and compiled with this:
sudo make-kpkg clean && sudo make-kpkg --append-to-version "-test1" --initrd kernel_image
The .deb package is installed in the parent folder (/usr/src).
Peter said I needed to make sure I had the appropriate firmware files installed
in /lib/firmware/2.6.24-test1/
> Just copy over the whole content of the folder – this should
> work
– if not, the iwl firware can be obtained at: http://
> intellinuxwireless.org/iwlwifi/downloads/iwlwifi-3945-ucode-2.14.1.5.tgz
> just untar it and move it to the firmware directory
I just copied all files from /lib/firmware/2.6.22-14-generic/
to /lib/firmware/2.6.24-test1/
cp /lib/firmware/2.6.22-14-generic/ * /lib/firmware/2.6.24-test1/
Then installed the deb package
dpkg -i /usr/src/linux-image-2.6.24-test1_2.6.24-test1-10.00.Custom_i386.deb
Checked my grub file /boot/grub/menu.lst, and rebooted from the new kernel.
0 Responses to “Fixed problem with dead USB ports under Ubuntu Gutsy on Lenovo X61s”