Rudimentary Linux ACPI support on the Dell Inspiron 1100 Laptop Author: sean horan - sean@emvis.net Version: 1.2, Released 14 June 2003. Copyright: (c) 2003. Distribution: Unlimited as long as this header remains intact. APM seems generally not supported on the Dell Inspiron 1100. Instead, you have to go with ACPI, and configuring it correctly because of Dell's broken BIOS will pose a bit of a problem. Instructions are as follows from what I can remember last night during an all-night hacking session. If anybody needs further assistance beyond what I have provided here, feel free to let me know. I have not been able to get agpgart running with the 2.4 series kernel, and as such I have been running 2.5 which has a revamped agpgart implementation. I had to downgrade from 2.5.70 to 2.5.69, and patched my kernel with the acpi implementations on http://sourceforge.net/project/showfiles.php?group_id=36832 As you can see, they've released two files for 20030522, a path for 2.5.69 and 2.4.21-rc3. Go with 2.5.69. WARNING: If you're going to be upgrading from 2.4 to 2.5, you MUST read and understand this document: http://www.codemonkey.org.uk/post-halloween-2.5.txt Lots of things have changed from 2.4 to 2.5, most notably module installation. 2.4-series module utilities will no longer work in 2.5 and you MUST get module-init-tools. The general format for applying patches is like so: # cd # cat | patch -p1 Also, you need to grap a patch for custom DSDT support. That can be found at: http://gaugusch.at/kernel.shtml Notice that the only kernel version concurrent between acpi.sf.net and gaugusch.at is 2.5.69. I got the 2.5.69 patch and applied it. Now having applied both patches to your kernel, you'll have to recompile it. Describing how to recompile the Linux kernel is explained elsewhere far better than I can, and is thus beyond the scope of this document. Under block devices, build in support (ie, NOT modules) for the following devices: 1. Ram disk support. The default size of 4096 works, and they advise you not to change it anyway 2. Initial ramdisk (initrd) support Under Power Management Options, deselect anything involving APM. ACPI overrides it. Under ACPI support, here's what I have that so far works well for me. I have everything built in. 1. ACPI Support 2. Read DSDT from initrd (if you don't have this option--you need to patch the kernel for custom DSDT support!) 3. Sleep States 4. AC Adapter 5. Battery 6. Button 7. Fan 8. Processor 9. Thermal Zone Build the kernel, and install it (ie, cp /usr/src/linux-2.5.69/arch/i386/boot/bzImage /boot/vmlinuz-2.5.69). Copy the custom DSDT table for your Dell Inspiron 1100 from http://emvis.net/~sean/linux-dell-inspiron-1100/files/initrd.gz Gunzip this file to /boot/initrd. If you have a /boot/initrd already, http://gaugusch.at/kernel.shtml explains how to run both concurrently. Add the following lines to /etc/lilo.conf--if you don't have lilo, I'm not sure what to tell you. Newer versions of lilo work just fine for anything I've asked it to do. image=/boot/vmlinuz-2.5.69 initrd=/boot/initrd label=Linux-2.5.69 Run lilo. Here's what I get: athens:~# lilo Warning: Kernel & BIOS return differing head/sector geometries for device 0x80 Kernel: 38760 cylinders, 16 heads, 63 sectors BIOS: 1023 cylinders, 255 heads, 63 sectors Added Linux-2.2.20 Added Linux-2.4.18 Added Linux-2.4.20 Added Linux-2.4.21 Added Linux-2.5.69 * Added Linux-2.5.70 Added Linux-2.5.70-p Added BIOSpartition Added Doze Do I have too many boot options? :) Rebooot, and select Linux-2.5.69. Install acpi support if you don't have it already. (your distro should have packages for acpi and acpid--if not, get Debian. :) Stuff for ACPI should show up in /proc/acpi--explore this directory to see what you have supported. acpi -Vf reports the following on my laptop currently: Battery 1: unknown, 100% Thermal 1: ok, 132.8 degrees F AC Adapter 1: on-line Thermal 1 is the CPU temperature. Unplugged, here's what I get: Battery 1: discharging, 98%, 02:42:10 remaining Thermal 1: ok, 140.0 degrees F AC Adapter 1: off-line The value reported for the time is a rough approximation based on at-the-moment usage. A full battery in my experience gives three hours runtime. If your laptop is fully charged and plugged in, the status for Battery 1 will read unknown as oppposed to charging or discharging. I have experienced no problems with this with gkrellm's battery monitoring thing. Enjoy.