Debian Linux on Dell Inspiron 500m
Of course, everything here I've done by stumbling around the web and
looking at other people's pages, but use this info at your own risk. Some
of the stuff listed here can break your computer in horrible and
nasty ways. If you don't know what something does, don't use it! A lot of
really good info is also available for the 600m model (try linux-on-laptops) which is
pretty close to the 500m. Another brilliant place is the dell forums,
where a lot of up-to-the-minute info is available. Try the software-linux-portable(non dell installed)
board.
UPDATE [CT - 19Feb04]
In yet another stunning display of obstructionism towards linux users on
dells part, they killed off the above-mentioned linux laptop message board,
without any warning. A general linux
board still remains, but the problems of laptop installs can be rather
specialised. Another example of stellar dell tech support - they won't even
facilitate users helping each other!
- 19Feb04 - I've upgraded to 2.6.3. Notes will be interspersed in the
text. Look for the blue update markers.
A nice laptop. My biggest gripe for linux applications is the totally
shithouse Dell attitude towards linux users. The best you'll get from dell
is mindless tech support chanting the dell mantra "We don't support linux".
A prime example of this is the lack of a BIOS update enabling proper
functioning of the graphics chipset, despite this being released by Intel.
Since I've had good experiences with it before, I went for a debian system.
apt-get(8) rocks! And now there is synaptic(8), a GUI
front end to apt-get. I decided that I'd go with an xfs filesystem, because
I've had a bit of experience with SGI stuff before and their software is
usually pretty decent. I wanted a journaling FS that I could trust and the
lure of future ACLs was nice. I used this XFS debian ISO cd
to install. This gives XFS support from install-time.
It also allows emergency booting if you screw up getting the XFS partitions
mounted first time. It's nasty, but it will boot a kernel, you can drop
from the installer into a shell and manually mount things from there. It
save my butt a couple of times!
Intel Pentium M processor at 1.3 GHz
On-die 1 MB L2 cache
32 KB Internal L1 Cache
400 MHz external BUS frequency
Intel 855GM chipset
Some general links for info on centrino and/or linux stuff. This is just a
direct cut from my mozilla bookmarks.
Linux on Centrino Laptops
Intel centrino site
Controlling ACPI Centrino features via software
in Linux
ACPI4Linux
Linux on Laptops
Intel 855GM Chipset
Linux USB
Linux Kernel Notes - Gary J. Murakami
David Dawes
845/855GM Driver Page for XFree86
Christian Zietz's
patch for the 855GM BIOS memory issue.
Make sure to remove port 0x800-0x8ff from include in you /etc/pcmcia/config.opts and to have yenta_socket
module built, installed and used (set in /etc/default/pcmcia) instead of i82365. Thanks to Mark
Holbrook for this info. See here.
The inbuilt 100Mb/s ethernet card worked out of the box. I used the intel
e100 driver. Build it as a module and insert it at boot-time. I used the
debian dhcp3 package to connect to my dhcp network at work. This does NOT
require any downloads from intel. I screwed up and tried to use something
from them at first - WRONG. It's in the kernel sources - choose the intel
e100 module. Works for 2.6.3 too.
wireless: Sort of
Working
The Intel Pro Wireless 2100 works with the
driverloader software from linuxant. It also
(apparently) works with ndiswrapper. I tested the
linuxant stuff and had no dramas, but don't use it enough to pay $USD20 for
it. I haven't used the ndiswrapper, but have heard positive things from
others about it working. Neither of these drivers support all the advanced
features on the Windows driver. Intel has a driver in the works, but they
said that almost 12 months ago too. I won't hold my breath
Internal 56K capable V.92 Fax modem - Intel based. As others have noted,
this modem (see lspci output) works with the pctel module. Find the driver here. Note especially this
comment. Also useful is the sourceforge pctel site.
Aha, herein lies my biggest gripe with Dell. You'll need a couple of
things. For DRI/DRM (hardware accel) support, you MUST have XFree86 4.3.0
or greater and kernel 2.4.19 or greater (I suggest 2.4.21). The i810
modules does the main graphics stuff, with the i830 giving DRI hardware
acceleration. The 855GM has NO graphics memory and uses some of the system
memory instead. Unfortunately, the BIOS only pre-allocates 892KB at
boot-time and has no function for the module to inform the BIOS that more
has been reserved (as of BIOS revision A05). As a result, the best you'll
get out of the box is 800x600@8bpp. A pretty shithouse option.
There is hope though. Christian Zietz wrote patch which screws with
the BIOS and changes the registers which tell the system how much memory is
allocated. Once this is applied, the BIOS will then programme
1280x1024@16/24bpp. With the i830 module, you'll also get DRI support and
hardware rendering (note: this sometimes causes hangs - fixed in the
current XFree86 CVS code).
So, to get things happening, you need to:
Install kernel 2.4.21, compiling the i810, i830 and agpgart modules.
Install XFree86 4.3.0
install the 855patch
Use XFree86 4.3+
If you're like me and you got the 14.1" SXGA+ screen, you will
still not be able to get 1400x1050, because the i810 uses the BIOS
to programme it's video modes. Since that mode isn't listed in the BIOS
(until Dell releases a BIOS that includes the new Intel update), we're
stuck at 1280x1024.
A final note. I and other users have noticed that the screen is
unstable when X exits from 24bit mode. This goes away if you
switch to 16bit mode. Of course, the 855patch code could possibly break
your computer, so use it at your own risk.
My XF86Config might help. Maybe the XFree86.0.log will too.
cthom@wumpus:~$ glxinfo
name of display: :0.0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.2
server glx extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context
client glx vendor string: SGI
client glx version string: 1.2
client glx extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context
GLX extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context
OpenGL vendor string: Tungsten Graphics, Inc
OpenGL renderer string: Mesa DRI Intel(R) 852GM/855GM 20021115
OpenGL version string: 1.2 Mesa 4.0.4
OpenGL extensions:
GL_ARB_imaging, GL_ARB_multitexture, GL_ARB_texture_env_add,
GL_ARB_texture_env_combine, GL_ARB_transpose_matrix, GL_EXT_abgr,
GL_EXT_bgra, GL_EXT_blend_color, GL_EXT_blend_func_separate,
GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_clip_volume_hint,
GL_EXT_convolution, GL_EXT_compiled_vertex_array, GL_EXT_fog_coord,
GL_EXT_histogram, GL_EXT_packed_pixels, GL_EXT_polygon_offset,
GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_texture3D,
GL_EXT_texture_env_add, GL_EXT_texture_env_combine, GL_EXT_texture_object,
GL_EXT_texture_lod_bias, GL_EXT_vertex_array, GL_IBM_rasterpos_clip,
GL_MESA_window_pos, GL_NV_texgen_reflection, GL_SGI_color_matrix,
GL_SGI_color_table
glu version: 1.3
glu extensions:
GLU_EXT_nurbs_tessellator, GLU_EXT_object_space_tess
UPDATE [CT - 19Feb04]
-
2.6. kernels now always use /dev/input for things like mice. So if
you were using /dev/psaux for the touchpad and /dev/input/mice for the USB
mouse, things will suddenly move twice as fast. Just get rid of the psaux
entry and have a single /dev/input/mice entry. Both will still work! This
happens because X gets 2 events for everything instead of one. Details
about 2.6 input drivers is here.
-
Agpgart modules have moved around. Now you'll need intel_agp module
loaded as well, or X will barf.
-
Apparently, recent versions (4.4 release candidates) of Xfree86 will
support dualhead with the 855 chipset - the laptop plus an external
monitor. This is possible in Windows, though I've never seen it done,
but sounds quite exciting. Haven't had a chance to experiment yet
Intel ICH4 82801DB chipset AC'97
The i810_audio module works well. To get esd running, I have a line in
my /etc/modutils which specifies options i810_audio
clocking=48000. Then I start esd with the -r 48000 flag.
There's a note in the kernel src/drivers/sound/i810_audio.c file to this
effect.
The console bell shits me to tears. I've had some success with
aumix turning the volume for this down.
UPDATE [CT - 19Feb04]
-
I have made the dreaded move from OSS to alsa. It wasn't so painful as I
had expected - 2.6.3 has good support for it. Just compile the alsa
modules in the kernel, and don't forget to include the alsa OSS
emulation APIs, so old programmes will still work.
-
You'll need to install the alsa-base alsa-utils alsa-xmms
packages. Despite what I read in this
tutorial I didn't need either the kernel-source or alsa-source
packages. Everything should work fine from a 2.6.3 kernel. Maybe
this page is pitched towards users of older kernels?
-
I just compiled the kernel modules, installed the packages, ran the
MAKEDEV.snd script the kernel README told me to run and it's all
fine.
I pretty much followed exactly the notes on the dell forum here. I'll
reproduce them below. I also recall seeing people with problems with this
drive, depending on the firmware, but since I've never burnt DVDs with it
(only CDs - which have been fine btw), I don't know much about them.
Philips SDVD6004 notes
Hello,
I've spent the last few weeks fighting to get the DVD+RW drive (mentioned
in the subject) to work on my Inspiron 5100. Here are a few notes for you,
to keep you from making as many coasters as I did. I'm running SuSE 8.2,
and won't go over the details of setting up the DVD drive under Linux (SuSE
did this for me, BTW).
This drive is a +R/RW drive, meaning DON'T try to burn DVD-R/RW. They won't
work, and you will have wasted your money.
To burn DVD+R/RWs, go straight to
http://fy.chalmers.se/~appro/linux/DVD+RW
and download the latest dvd+rw-tools. If you have kernel 2.4.20 or earlier,
you have to patch the kernel.
To burn a DVD, you must use Disk At Once (DAO) mode, which I never got
working with dvdrecord. Instead, I'm using the programs from the site above
as follows:
dvd+rw-format -f /dev/sr0
growisofs -Z /dev/sr0=/dvd.iso
Now to read the DVD you just wrote, you have to run
dvd+rw-booktype -dvd-rom-spec -media /dev/sr0
Sound rediculous[sic]? Same here, but that's what Dell decided to ship with it's
notebooks.
Feel free to ask any questions. I hope to save someone some grief, time,
and money.
BTW, a great utility to use to make backups of your video DVDs is
dvd2iso.pl, found at
UPDATE [CT - 19Feb04]
-
Linux 2.6 now deprecates and strongly advises against using ide-scsi. There
should, in theory, be very few reasons to use it. CD-burners are supported
out of the box by ide-cd. So all of these nasty hacks to get cd/dvd
burning working should no longer be necessary.
-
Under 2.6.3, using ide-cd, I have successfully read audio CDs and data
DVDs. I haven't tried CD/DVD burning yet.....
-
Also note that I NO LONGER follow the recipe above - I make life MUCH
easier by using XCDroast which I am VERY happy with. You'll need to
download the dvd add-ons (a new cdrecord binary) and set the key for it.
See the xcdroast and ProDVD homepages.
ProDVD keys for non-commercial use live here. Debian
users just apt-get install xcdroast. DVD and CD burning
both work fine
-
There IS a firmware issue with these drives. Some people can burn
only expensive 4.7GB coasters. Make sure your firmware is at least
v1.03. I didn't have nay problems upgrading, but apparently there
are laser focus issues or some such. If the firmware upgrade doesn't
help, send it back. You should test your new drives!
disk: Untouched
Need to enable DMA, but I just haven't got around to it yet.
usb: Working
Working using usb-uhci (the correct module for the chipset), with the
hid and mousedev modules. Since the 500m doesn't come
with a psaux port for a mouse, I use a wheelie usb optical mouse. Works
like a charm - see the XF86Config file for the
lines to get the wheel working.
UPDATE [CT - 19Feb04]
-
Module names under 2.6 have changed. This is a bit of a pain, but now it's
called uhci_ucd.
ACPI: Working
UPDATE [CT - 19Feb04]
-
ACPI is now working on my laptop. I get correct fan, batter and charger
events in /proc/acpi. I'm still using the i8kutils to set the fan speed,
as it's nice and small and simple. I guess this would work through ACPI.
-
You need to be running acpid for it to work. apt-get install
acpi acpid
-
I have NOT attempted to swsusp or susp-to-disk on my laptop. It is
still WAY too buggy and premature for me to risk my data thank you
very much. But progress is hopeful.
-
I only got this kernel up 2hrs ago, so I haven't done anything useful
with ACPI yet :-)
Use the i8k module and i8kutils package in debian testing. Haven't set up
the buttons yet.
The i8kmon utility and kernel module lets me control certain things about
my laptop. For instance, it lets you send commands to something like aumix using the
dell volume keys. But more importantly, it monitors the CPU temp and
controls the fan speed. I recall reading somewhere that the BIOS does a
crap job of this, and I don't mind a bit of noise, so I like the fan to
kick in at a fairly low temp (say 35degrees). The module does this for
me. Debian users can just apt-get install i8kutils. Everyone else should
get it here.
Last modified: Thu Feb 19 18:11:23 EET 2004