Notebook Specifications


Model: Compaq EVO N1020v
BIOS: PhoenixBios
CPU: Intel Pentium 4 2.0 Ghz
Video: ATI IGP 340M (Radeon Mobility M7)
Screen: 14" TFT 1024x768
HD: 30GB
NIC: RealTek (RTL-8139) 10/100
Modem: Conexant HSF 56k HSFi
Sound: ACER ALI 5451
DVD: NEC 8x

lspci reveals the following:

00:00.0 Host bridge: ATI Technologies Inc: Unknown device cab2 (rev 02)
00:01.0 PCI bridge: ATI Technologies Inc: Unknown device 7010
00:06.0 Multimedia audio controller: Acer Laboratories Inc. [ALi] M5451 PCI South Bridge Audio (rev 02)
00:07.0 ISA bridge: Acer Laboratories Inc. [ALi] M1533 PCI to ISA Bridge [Aladdin IV]
00:0a.0 CardBus bridge: Texas Instruments PCI4410 PC card Cardbus Controller (rev 02)
00:0a.1 FireWire (IEEE 1394): Texas Instruments: Unknown device 8017 (rev 02)
00:0b.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139 (rev 20)
00:0c.0 Communication controller: Conexant HSF 56k HSFi Modem (rev 01)
00:10.0 IDE interface: Acer Laboratories Inc. [ALi] M5229 IDE (rev c4)
00:11.0 Bridge: Acer Laboratories Inc. [ALi] M7101 PMU
00:13.0 USB Controller: NEC Corporation USB (rev 41)
00:13.1 USB Controller: NEC Corporation USB (rev 41)
00:13.2 USB Controller: NEC Corporation: Unknown device 00e0 (rev 02)
01:05.0 VGA compatible controller: ATI Technologies Inc: Unknown device 4337

If these don't look like your Notebook specs then check out TuxMobil for other models.

General

I installed Debian 3.0 Woody via the net-install .. over a 56kbps dialup modem (yes I know i'm a sadist). Sit back and grab a few coffees, maybe some sleep if you can control your anticipation. I experienced several problems with the default kernel 2.4.16 if I recall correctly. Don't use it. It doesn't detect much and incorrectly reports a lot of settings like my CPU cache size as 0!

There are probably easier methods to getting this notebook to work but I didn't do it that way. Nor have I found any documentation regarding that. To my knowledge this is the first text dealing with a successful install of Debian 3.0 on N1020v. Oh well, just be thankful it works. I didn't get the battery status working, mainly because I haven't tried yet but it appears that ACPI will work correctly instead of APMD (if you don't understand this then don't worry .. )

Dual boot with XP

I initially installed WinXP PRO but later repartitioned to make space for linux (PartionMagic or fdisk work well for this).

Install

As I said before, upgrade the kernel when you've installed (whichever you method you use) the Linux distribution. Kernel 2.4.16 will not suffice, use 2.4.20. The driver for the Ethernet card alias eth0 is 8319too or 8319cp. Both seem to work but cp is the latest version and therefore recommended. Don't forget to say Y when it asks for ATI Radeon support int the Video section of the kernel config. You'll find sound won't work nor will the X server, and well my DVD drive wasn't detected either. Just as well for that net install. Until now, however, all is not lost.

I compiled the kernel manually and I do recommend doing it this way to avoid unnecessary hassles later. 

A reboot later and the DVD was working, so now only sound and X to go. Make sure you compile sound at least as a module, if not then a core component.

Sound

Sound will be detected in the 2.6 series kernels by default since the ALSA project plans to implement all their drivers into the stock kernel  (About time!). Thankfully it won't be necessary to repeat these arduous tasks in the future. For the time being though we have to be manually do this, alas. ALSA seems to be the only driver modules that detect N1020V's card, but only the 0.9x+ series do. So be warned using the default stable apt-get of ALSA won't work. That installs version 0.4x or so. Let me save you time by mentioning to use the ``unstable`` packages for Woody's eventual successor. To do this you must edit /etc/apt/sources.list and add the following line:

deb http://ftp.debian.org/debian unstable main

Then run: apt-get update 

You may have to do that again if it asks. Now time to install the latest ALSA drivers and packages. Run the following: 

apt-get install alsa-source alsa-base alsa-utils alsaconf libasound

You'll get asked some questions about your configuration there. You'll also end up with alsa-drivers in /usr/src/modules/alsa-driver or maybe /usr/src/modules.

Go to the Linux kernel source directory, should be /usr/src/linux-2.4.20  (latest stable 2.4 series kernel). You should still have the .config from the last compilation. So do: make oldconfig. Then compile the kernel as a Debian package: make-kpkg --revision custom1 kernel_image

That will install all the sound driver modules. Then install it: dpkg -i /usr/src/kernel-image-2.4.20_custom1_i386.deb

Then reboot. Now go to /usr/src/modules/alsa-driver or /usr/src/modules and look for the alsa-drivers.tar.gz. Untar it like so: tar zxvf alsa-drivers.tar.gz   Then go back to the kernel compilation source in /usr/src/linux-2.4.20 and do the following: make-kpkg --revision custom1 modules_image

Then: dpkg -i /usr/src/alsa-modules-2.4.20_0.9.0rc7-2_i386.deb

Now: /etc/init.d/alsa start

Then: alsaconf   (you may have to run updatedb if this binary is not in your $PATH). Select your card and quit. it should be snd-ali5451. Sound should now be working. But you won't hear it because it's on mute by default. To adjust sound type: alsamixer   . Once that is one then run 'alsactl store'   which will save those settings. For a user to hear sound they must be apart of the audio group, so add them like this: adduser username audio.

All done, should be successful if you carried out the above correctly.

My `lsmod` reveals the following:

Module Size Used by Not tainted
snd-seq-oss 23136 0 (unused)
snd-seq-midi-event 2712 0 [snd-seq-oss]
snd-seq 36236 2 [snd-seq-oss snd-seq-midi-event]
snd-seq-device 3812 0 [snd-seq-oss snd-seq]
snd-pcm-oss 36580 1 
snd-mixer-oss 11360 0 [snd-pcm-oss]
snd-ali5451 10692 1 
snd-pcm 53568 0 [snd-pcm-oss snd-ali5451]
snd-timer 13824 0 [snd-seq snd-pcm]
snd-page-alloc 3936 0 [snd-pcm]
snd-ac97-codec 30864 0 [snd-ali5451]
snd 26912 0 [snd-seq-oss snd-seq-midi-event snd-seq snd-seq-device snd-pcm-oss snd-mixer-oss snd-ali5451 snd-pcm snd-timer snd-ac97-codec]

The output of cat /dev/sndstat is:
Sound Driver:3.8.1a-980706 (ALSA v0.9.2 emulation code)
Kernel: Linux blade 2.4.20 #2 Thu Apr 24 00:13:36 EST 2003 i686
Config options: 0

Installed drivers: 
Type 10: ALSA emulation

Card config: 
ALI 5451 at 0x8400, irq 5

Audio devices:
0: ALI 5451 (DUPLEX)

Synth devices: NOT ENABLED IN CONFIG

Midi devices: NOT ENABLED IN CONFIG

Timers:
7: system timer

Mixers:
0: Analog Devices AD1886A

NB: If you get something like "No such device" or "No such file or directory "then sound hasn't been installed as a module or core in the kernel, so configure the kernel again.

Kernel Configuration

I've updated this page with my kernel config due to overwhelming demand. You can access the .config here.

The X server

The laptop came with a ATI IGP which is fairly new to the Linux community. XFree86 3.x setup/libraries didn't detect it. It's important to upgrade this to version 4.3 since it's fully supported there. I used the VESA driver. Once the new libraries are installed do: XFree86 -probe .and XFree86 -configure   for the installation. My /etc/X11/XF86Config is as follows, if you want to skip that part.

############################################
# XF86Config-4 for laptop Compaq EVO N1020V 
#
# Anybody can use or redistribute freely this file. 

# However, I am not responsible for any damage resulting 
# of the use of any information contained in this file. 

# Last modification: dethy 21/04/2003 
#############################################

Section "ServerLayout"
Identifier "XFree86 Configured"
Screen 0 "Screen0" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
RgbPath "/usr/X11R6/lib/X11/rgb"
ModulePath "/usr/X11R6/lib/modules"
FontPath "/usr/X11R6/lib/X11/fonts/misc/"
FontPath "/usr/X11R6/lib/X11/fonts/Speedo/"
FontPath "/usr/X11R6/lib/X11/fonts/Type1/"
FontPath "/usr/X11R6/lib/X11/fonts/CID/"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi/"
EndSection

Section "Module"
Load "extmod"
Load "glx"
Load "dri"
Load "dbe"
Load "record"
Load "xtrap"
Load "speedo"
Load "type1"
Load "synaptics"
EndSection

Section "InputDevice"
Identifier "Keyboard0"
Driver "keyboard"
Option "XkbLayout" "us"
EndSection

# Trackpoint
Section "InputDevice"
Driver "synaptics"
Identifier "Mouse0"
Option "Device" "/dev/psaux"
Option "Edges" "1900 5400 1800 3900"
Option "Finger" "25 30"
Option "MaxTapTime" "20"
Option "MaxTapMove" "220"
Option "VertScrollDelta" "100"
Option "MinSpeed" "0.02"
Option "MaxSpeed" "0.18"
Option "AccelFactor" "0.0010"
EndSection

Section "Monitor"
Identifier "Monitor0"
VendorName "LGP"
ModelName "6e54"
Option "DPMS"
HorizSync 28-49
VertRefresh 43-60
EndSection

# Video card
Section "Device"
### Available Driver options are:-
### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
### [arg]: arg optional

Option "CrtScreen" # [<bool>]
Identifier "Card0"
Driver "ati"
VendorName "ATI"
BoardName "Radeon Mobility M7 LW"
BusID "PCI:1:0:0"
EndSection

# TFT screen
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 1
EndSubSection
SubSection "Display"
Depth 4
EndSubSection
SubSection "Display"
Depth 8
EndSubSection
SubSection "Display"
Depth 15
EndSubSection
SubSection "Display"
Depth 16
EndSubSection
SubSection "Display"
Depth 24
Modes "1024x768"
EndSubSection
SubSection "Display"
Depth 32
Modes "1024x768"
EndSubSection
EndSection


My address is dethy@NOSPAM.synnergy.net
Remove NOSPAM from the above e-mail to contact me. This text is released under GPL. April 2003.