tensixtyone

Rants of Andrew Williams / Nik_Doof

Archive for the ‘acpi’ tag

EeePC, Suspending, and Debian Lenny

without comments

After initally setting up my EeePC to run Debian Lenny I quickly encountered a issue were the madwifi drivers wouldn’t resume correctly. The card would be unable to operate as it has lost sync with the kernel drivers, removing and reloading the related modules solved the issue.

Some people on the EeeUser forums ripped out the existing script from the default Xandros install, a simple acpi script that jumped through some hoops to disable the modules and clear everything down. The script worked as part of the existing acpi-support package and worked when using the acpi suspend options, now i’ve got GNOME and HAL installed it turns out these are no longer used, therefore still causing the issue.

After a little research it seems that the suspend support within Debian is currently in a state of flux, and a few bug tickets have been raised about the various issues. This provided my first hint of how to resolve it, a quick script in pm-utils, much like the acpi one, will fix this for good.

Simply, place this script into your /usr/lib/pm-utils/sleep.d/ folder, I’ve got it as 45eee-wifi that way if the script fails for some reason at least your video will be resumed.

#!/bin/bash

PWR=$(cat /proc/acpi/asus/wlan)

load_modules() {
   modprobe ath_pci
   modprobe wlan_wep
   modprobe wlan_tkip
   modprobe wlan_ccmp
}

unload_modules() {
   rmmod ath_pci
   rmmod wlan_scan_sta
   rmmod wlan_tkip
   rmmod wlan_wep
   rmmod wlan_ccmp
   rmmod ath_rate_sample
   rmmod wlan_acl
   rmmod wlan
   rmmod ath_hal
}

wifi_on() {

   if [ "$PWR" = "0" ]; then
      modprobe pciehp pciehp_force=1
      sleep 3
      echo 1 > /proc/acpi/asus/wlan
      sleep 2
      load_modules
      sleep 1
   fi
}

wifi_off() {
   if [ "$PWR" = "1" ]; then
      unload_modules

      echo 0 > /proc/acpi/asus/wlan
      sleep 1
      rmmod pciehp
      rmmod pci_hotplug
   fi
}

case "$1" in
        hibernate|suspend)
                wifi_off
                ;;
        thaw|resume)
                wifi_on
                ;;
        *)
                ;;
esac

The scripts in the “Arch acpi-eee” package provided the basis for this script, and it also works alot better than the existing scripts provided on eeeuser.com.

Written by Andrew Williams

March 27th, 2008 at 12:50 am

Posted in General

Tagged with , , , ,

Cheap PSUs, False Economy

without comments

In the last few days I’ve had issues with my temperamental PSU, I’m not sure if its due to high load or just being faulty after a year of using it, but it just sometimes refuses to start up the PC. Yesterday I had to fix it, I went to Alpha Computers and purchased a £16 450 Watt PSU. The PC now boots first time and I’m happy.

Or at least I thought I was…

I wandered into the computer room this morning to find my PC off, I get the PC started again but I’m bemused to what has happened. Checking the logs I see one painful line:

localhost kernel: ACPI: Critical trip point

No mention of any temperatures or overheating processors, everything is running below 30c and high load presents no heat spikes, not even on the GPU. I check lm_sensors to see what else is failing to see a flurry of “ALARM” entries, all on the 3.3v, 5v, and 12v lines. It seems that this cheap PSU can’t even keep up with a load of a Geforce 6 series, 2 HDDs and a Athlon64.

So now i’ll have to invest in a worthwhile PSU, at a higher cost. Really I deserved it for trying to skimp on one of the most critical parts of a PC.

Written by Andrew Williams

April 17th, 2007 at 9:42 am

Posted in Technology

Tagged with , , ,