Configuring a Dell Inspiron 8500 for dual boot

Hardware Configuration

Windows XP Setup

TrueMobile 1150 Wireless Card

Had to disable 802.1x authentication to get it to stay connected for more than 2.5 minutes at a time.

Fedora Core 1 Setup

Summary

SubsystemStatusInfo
Disk - IDE/(U)DMANo changes needed
EthernetNot supported by boot floppy, but otherwise fine
XFree86Manually set resolution to 1920x1200
AudioSome kernel modules auto-load after login
USBNo changes needed
CDRWNo changes needed
DVDln -s /dev/cdrom /dev/dvd
ModemClosed-source driver with modifications
WirelessNo changes needed
Special KeysUsed LinEAKd
Power ManagementAdd acpi=on and write scripts
Suspend/ResumeI approximate the behavior
PCMCIAUntested
FirewireUntested
InfaredUntested
S-VideoUntested

IDE Driver

Disk gets 31 MB/sec reads without making any changes.

Broadcom BCM4401 100Base-T

Not supported by the FC1 boot floppy, but works from boot CD (for network installs), and works fine overall.

XFree86

Automatically (as of FC1, didn't work in Test3) sees both the internal touchpad/touchstick and an external USB mouse. (Note that gpm can only see one of them; I chose to go without the external mouse when in console mode, since it's less likely to be with me anyway.) You have to manually set the resolution to 1920x1200, though. Finally, GDM makes an annoying beep to let blind people know it's ready for them to log in. To stop that, add the line /usr/X11R6/bin/xset -b to your /etc/X11/xdm/Xsetup_0 file.

Audio

Some kernel modules (soundcore, ac97_codec, and i810_audio) don't get loaded until after you log in, which means you can't put an echo off > /proc/modules in your startup scripts.

USB

No changes needed.

CDRW

No changes needed.

DVD

You can play DVDs using xine or mplayer. RPMs for FC1 are available from http://rpm.livna.org/. I found it necessary to ln -s /dev/cdrom /dev/dvd.

PC-Tel WinModem

The internal modem is identified by lspci as:
00:1f.6 Modem: Intel Corp. 82801DB AC'97 Modem Controller (rev 03)
More specific device info is obtained from lspci -n:
00:1f.6 Class 0703: 8086:24c6 (rev 03)
(Note the 24c6 which will be used later....)

Googling around a bit we find this is PC-Tel Winmodem. Jan Stifter wrote a driver for this modem, which is available from http://linmodems.technion.ac.il/pctel-linux/. Unfortunately, it seems this driver has fallen into disrepair.... the last update to the site (as of this writing) was 2002-11-08, and the author didn't answer my emails. Here are the steps I used to make it work:

  1. Download the driver: pctel-0.9.6.tar.gz
  2. To account for the modem's device ID not being recognized by the driver, change src/ptserial/ptserial-2.4.7.c line 312 from
    #define PCI_DEVICE_ID_I845 0x2486
    to
    #define PCI_DEVICE_ID_I845 0x24c6
  3. To account for a change in the kernel source, change src/ptserial/ptserial-2.4.7.c line 2813 from
            if ((tty->count == 1) && (state->count != 1)) {
    to
            if ((tty->count.counter == 1) && (state->count != 1)) {
  4. ./configure --with-hal=i8xx --with-kernel-includes=/usr/src/linux-2.4/include && make && make install
  5. The drivers can now be loaded as two modules, one of which needs to be force-loaded (since the driver comes with some libraries that were compiled under GCC version 2, and the kernel was compiled using GCC version 3):
    insmod -f pctel && insmod ptserial
  6. To autoload these modules on subsequent boots, add the following lines to your /etc/modules.conf:
    # for pctel modem
    alias char-major-62 ptserial
    below ptserial pctel
    install pctel insmod -f pctel
    and run depmod -a
Note that the module gets compiled for your particular kernel; if you upgrade the kernel, the modem will stop working until you recompile it. Since laptops typically have a single user, I decided to just freeze the kernel at the current version (I'm not worried about local root vulnerabilities).

Wireless

As mentioned above, I bought the TrueMobile 1150 MiniPCI wireless card separetely, since the one they wanted to sell for the laptop doesn't work with linux. They didn't want to sell it to me (it's not "supported" on the i8500) but I convinced them I knew what I was doing, and got it. The "aux" antenna wire in the laptop isn't long enough to connect to the card, but it seems to work anyway (with possibly reduced range). Other than that, it seems to work fine.

Special Keys

Used LinEAK to watch for the keystrokes and execute commands. It works well for volume control (including mute). I had to create my own keyboard entry to get the play/stop/rew/fwd keys to work, but that was a trivial change. (I sent in the change to the developers, and they will incorporate it in their next release.) I'm not quite sure of what to do with those extra keystrokes, though. They don't seem to be working well with xmms (the keys work, it's xmms that's causing the problem).

Power Management

Need to enable ACPI support in the kernel by adding acpi=on to the kernel line in /boot/grub/grub.conf. Then you can see events by catting /proc/acpi/event, and get other system information like battery status, etc from elsewhere in the /proc/acpi tree. Add rules for how to act on certain events to the /etc/acpi tree.

One difficult step was turning off the backlight if the lid is closed. To do that, I had to use a program from http://fdd.com/software/radeon/.

The bios seems to be controlling the fan just fine.

Adding insmod p4-clockmod to my rc.local allows for some additional CPU performance tuning, but I haven't messed with that yet.

Suspend/Resume

I can sleep it with echo 1 > /proc/acpi/sleep. But then the clock loses time. What I'm doing as a compromise is clocking the CPU down to 12% (300MHz). That should use fairly little power, but keep the clock ticking (and even allow remote logins to proceed at reasonable speed).

PCMCIA, Firewire, Infared, S-Video

I haven't tested these yet.


This report is listed on TuxMobil.

Damian Menscher
http://www.uiuc.edu/~menscher/

menscher@uiuc.edu