Toshiba Satellite A80-154: Gentoo Linux Installation

Author: Thomas Meyer
E-mail: mnemo at gmx.net

Document history

If you have any comments, corrections or questions regarding this guide, feel free to contact me: mnemo at gmx.net.

Contents

  1. Introduction
  2. Hardware Overview
  3. Basic Installation
  4. Kernel Configuration
  5. Network
  6. Sound
  7. USB
  8. X11 / KDE
  9. Document Updates
  10. References, Links, Acknowledgements

1. Introduction

After buying a Toshiba Satellite A80-154 (sorry, there seems to be only a German product page) notebook, I wanted to give Linux a try on the new portable. My first choice was Kubuntu, just to see what all the fuzz is about. Since I wasn't very happy with it, I decided to go the Gentoo-way. I already had some experience running a Gentoo system for about two years on my file server machine at home, so the whole concept was not completely new to me. Maybe this short guide can help others avoid the same quirks I encountered while installing the OS.

2. Hardware Overview

Overview of the hardware:

And this is what it looks like from the Gentoo 2005.0 universal live-cd:

Code Listing 2.1: lspci listing with standard kernel

# lspci
0000:00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 03)
0000:00:01.0 PCI bridge: Intel Corporation Mobile 915GM/PM Express PCI Express Root Port (rev 03)
0000:00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 03)
0000:00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 03)
0000:00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 03)
0000:00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 03)
0000:00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 03)
0000:00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 03)
0000:00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d3)
0000:00:1e.2 Multimedia audio controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (rev 03)
0000:00:1e.3 Modem: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller (rev 03)
0000:00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 03)
0000:00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 03)
0000:00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 03)
0000:01:00.0 VGA compatible controller: nVidia Corporation: Unknown device 0148 (rev a2)
0000:02:00.0 Ethernet controller: Marvell Technology Group Ltd. Fast Ethernet Controller (rev 10)
0000:06:02.0 Network controller: Intel Corporation PRO/Wireless 2200BG (rev 05)
0000:06:04.0 CardBus bridge: Texas Instruments Texas Instruments PCIxx21/x515 Cardbus Controller
0000:06:04.2 FireWire (IEEE 1394): Texas Instruments Texas Instruments OHCI Compliant IEEE 1394 Host Controller
0000:06:04.3 Unknown mass storage controller: Texas Instruments Texas Instruments PCIxx21 Integrated FlashMedia Controller
0000:06:04.4 Class 0805: Texas Instruments Texas Instruments PCI6411, PCI6421, PCI6611, PCI6621, PCI7411, PCI7421, PCI7611, PCI7621 Secure Digital (SD)

The problem is that the Ethernet controller will not work, although it is listed. The driver in the kernel is older than the chip in the notebook.

The wireless controller can be brought up by disabling ACPI on the kernel command line (gentoo noacpi), then unloading the module and loading it again (don't ask me why), but since I am running a network with WPA encryption this was of no use to me and I had to commence with a network-less installation from the LiveCD Universal.

Update: The Gentoo Live CD 2006.0 with Linux 2.6.15 supports the Marvell chip! So you can skip all the kernel configuration below and directly install Gentoo.

3. Basic Installation

The Gentoo Linux x86 Quick Install Guide can be followed step-by-step. The partitioning is up to you, you should just note that the Toshiba arrives pre-installed with Windows XP Home Edition and there is an additional partition of unknown file system type containing the Express Media Player that can be run without booting into an operating system. I used QtParted from the SystemRescueCD to resize the XP partition and create a 20 GB partition for Linux.

There is one step during the Gentoo installation that is not in the quick install docs: After setting up the root filesystem and installing the stage3 tarball ("Setting Up The Stage" in the Quick Install Guide), you should copy the entire distfiles directory from the CD to the new root. It's only about 180 megabytes and will allow you to emerge the gentoo-sources directly from the hard drive after the rest of the system has been set up.

Code Listing 3.1: Copying distfiles

# mkdir /mnt/gentoo/usr/portage/distfiles
# cp /mnt/cdrom/distfiles/* /mnt/gentoo/usr/portage/distfiles

You can safely ignore the warning regarding the cvs-src directory inside the distfiles directory not having been copied.

There was a small problem with grub: grub-install complained about not being able to access the hard disk. Using the grub shell, grub could be installed without a problem, though. Following is my grub.conf (residing at /boot/grub/grub.conf). Be sure to verify the partition numbers (and remember that grub's numbering starts at 0!).

Code Listing 3.2: grub.conf example

# Boot automatically after 10 secs.
timeout 10

# By default, boot the first entry.
default 0

# Fallback to the second entry.
fallback 1

# For booting GNU/Linux
title Gentoo 2.6.12
root (hd0,1)
kernel /boot/bzImage-2.6.12 root=/dev/sda2 video=vesafb:ywrap,mtrr,1400x1050-16@60 libata.atapi_enabled=1

# For booting Windows
title Windows XP Home Edition
rootnoverify (hd0,0)
makeactive
chainloader +1

With grub.conf in place we can install it:

Code Listing 3.3: Installing grub

# grub
grub> root (hd0,1)  (modify if your setup is different!)
grub> setup (hd0)
grub> quit

4. Kernel Configuration

Now it is time to emerge the kernel:

Code Listing 4.1: Emerging the Gentoo kernel

# emerge gentoo-sources

Change to /usr/src and verify that the linux symlink points to the kernel directory you just merged.

Let's take a moment and prepare the module loading. Edit /etc/modules.autoload.d/kernel-2.6 and add the following. (This should not be necessary in current kernels since the autoloading works pretty well.)

Code Listing 4.2: Generate kernel patch

sk98lin       (wired LAN driver)
nvidia        (nvidia X11 driver)
ipw2200       (Intel 2200B/G driver)

The biggest problem with the current 2.6.12 kernel is that the built-in Ethernet device is not recognized by the driver that is in the kernel source. Although there is a module called sk98lin, it will not handle the available Gigabit adapter. You will have to download a newer version of the driver and build a new kernel.

Update: The problem still persists with Linux 2.6.14. The Marvell/Yukon drivers (there are two now) both will not work on the Toshiba.

Update: Kernel 2.6.16 finally has a SysKonnect driver working with the built-in NIC. The following is NOT necessary in 2.6.16. See the updates section at the end of this document!

Download the new driver source here: SysKonnect Linux driver download page. Choose product "PCI Express Desktop Adapter: SK-9E21D", Type "Driver", System "Linux", click "Search" and download the driver.

Now extract the archive, creating a DriverInstall directory, cd into the directory and run ./install.sh. You will have the option of installing a module on-the-fly or generating a patch against the current kernel source, which I would recommend. This way, you don't have to compile and install the driver again each time you compile a new kernel.

Code Listing 4.3: Generate kernel patch

# ./install.sh

Installation script for sk98lin driver.
Version 8.23.1.3 (Jun-20-2005)
(C)Copyright 2003-2005 Marvell(R).
====================================================
Add to your trouble-report the logfile install.log
which is located in the  DriverInstall directory.
====================================================


1) installation
2) generate patch
3) exit
Choose your favorite installation method: 2

Kernel source directory (/usr/src/linux) : [RETURN]
Patch name (/root/DriverInstall/sk98lin_v8.23.1.3_2.6.12_patch) : [RETURN]

Kernel version (2.6.12)                                               [OK]
Driver version (8.23.1.3)                                             [OK]
Release date (Jun-20-2005)                                            [OK]
Check kernel functions (Changed: nothing)                             [OK]
Generate driver patches (done)                                        [OK]
Generate readme patch (done)                                          [OK]
Generate Kconfig patch (done)                                         [OK]
Delete temp directories (done)                                        [OK]

All done. Patch successfully generated.
To apply this patch to the system, proceed as follows:
      # cd /usr/src/linux
      # cat /root/DriverInstall/sk98lin_v8.23.1.3_2.6.12_patch | patch -p1

                                          Have fun...

Now do as told:

Code Listing 4.4: Patching the kernel source

# cd /usr/src/linux
# cat /root/DriverInstall/sk98lin_v8.23.1.3_2.6.12_patch | patch -p1

When you now run make menuconfig again, you will be asked if you want to enable the RX polling of the sk98lin driver. Do as you like.

In menuconfig, work your way through the option tree. Be sure to verify the following settings. Not all settings are listed which may be required, only those I think are not necessarily obvious.

Code Listing 4.5: Kernel options

Processor type and features  --->
  Processor family (Pentium M)  --->
  < > Toshiba Laptop support
      (The Satellite has a Phoenix BIOS, so this module will not work)
  High Memory Support (4GB)  --->
  [*] MTRR (Memory Type Range Register) support

Power management options (ACPI, APM)  --->
  [*] Power Management support
  [*] Software Suspend (EXPERIMENTAL)
  ACPI (Advanced Configuration and Power Interface Support)  --->   (ON)
  APM (Advanced Power Management BIOS Support  --->   (OFF)
  CPU Frequency scaling  --->   (ON)
    Default CPUFreq governor (userspace)  --->
    <*>  Intel Speedstep on ICH-M chipsets (ioport interface)

Bus options (PCI, PCMCIA, EISA, MCA, ISA)  --->
  [*] PCI support
  [*]   PCI Express support

Device Drivers  --->
  Generic Driver Options  --->
    <*> Hotplug firmware loading support

  Parallel port support  --->   (OFF)

  (NO basic IDE support is necessary)
  < > ATA/ATAPI/MFM/RLL support  --->

  (SCSI/SATA support is necessary for the HDD)
  SCSI device support  --->
    <*> SCSI device support
    <*> SCSI disk support
    <*> SCSI CDROM support
    SCSI low-level drivers  --->
      [*] Serial ATA (SATA) support
          ...
      <*> Intel PIIX/ICH SATA support

  IEEE 1394 (FireWire) support --->   (ON)

  Networking support  --->
    Networking options  --->
      <M> Packet socket  (for wireless packet access)
      [*]   Packet socket: mmapped IO
      ...  (other options as needed)
    Ethernet (1000 MBit)  --->
      <M> Marvell Yukon Chipset / SysKonnect SK-98xx Support
      [*]   Use Rx polling (NAPI)
    Wireless LAN (non-hamradio)  --->
      [*] Wireless LAN drivers (non-hamradio) & Wireless Extensions

  Input device support  --->
    [*] Provide legacy /dev/psaux device
    [*] Mouse  --->
        <*> PS/2 mouse

  Character devices  --->
    <*> /dev/agpgart (AGP support)
    <M> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)

  I2C support  --->   (ON)
    I2C Hardware Bus support  --->
      <*> Intel 82801 (ICH)

  Graphics support  --->
    <*> Support for frame buffer devices
    <*> VESA VGA graphics support
          VESA driver type (vesafb-tng)  --->
        Console display driver support  --->
          <*> Framebuffer Console support

  Sound  --->
    <M> Sound card support
        Advanced Linux Sound Architecture  --->
          <M> Advanced Linux Sound Architecture
          <M> Sequencer support
          <M> OSS Mixer API
          <M> OSS PCM (digital audio) API
          [*] OSS Sequencer API
          ...
          PCI devices  --->
            <M> Intel/SiS/nVidia/AMD/ALi AC97 Controller
            <M> Intel/SiS/nVidia/AMD MC97 Modem (EXPERIMENTAL)
        Open Sound System  --->   (OFF)

  USB support  --->
    <M> Support for Host-side USB
    [*]   USB device filesystem
    <M>   EHCI HCD (USB 2.0) support
          ...
    <M>   UHCI HCD (most Intel and VIA) support
          ...
    <M>   USB Mass Storage support
    <M>   USB Human Interface Device (full HID) support
    [*]     HID input layer support

Cryptographic options  --->  (just select everything)

Library routines  --->
  <*> CRC-CCITT functions
  --- CRC32 functions
  <M> CRC32c (Castagnoli, et al) Cyclic Redundancy-Check

make the kernel, make modules_install, copy bzImage to /boot/bzImage-2.6.12, check /boot/grub/grub.conf, reboot and cross your fingers. The kernel should boot and eth0 should be available when you run ifconfig -a. Then you can check the devices:

Code Listing 4.7: lspci listing with Linux 2.6.12

# lspci
0000:00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 03)
0000:00:01.0 PCI bridge: Intel Corporation Mobile 915GM/PM Express PCI Express Root Port (rev 03)
0000:00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 03)
0000:00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 03)
0000:00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 03)
0000:00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 03)
0000:00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 03)
0000:00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 03)
0000:00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d3)
0000:00:1e.2 Multimedia audio controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (rev 03)
0000:00:1e.3 Modem: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller (rev 03)
0000:00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 03)
0000:00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 03)
0000:00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 03)
0000:01:00.0 VGA compatible controller: nVidia Corporation NV43 [GeForce Go 6600] (rev a2)
0000:02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8036 Fast Ethernet Controller (rev 10)
0000:06:02.0 Network controller: Intel Corporation PRO/Wireless 2200BG (rev 05)
0000:06:04.0 CardBus bridge: Texas Instruments Texas Instruments PCIxx21/x515 Cardbus Controller
0000:06:04.2 FireWire (IEEE 1394): Texas Instruments Texas Instruments OHCI Compliant IEEE 1394 Host Controller
0000:06:04.3 Unknown mass storage controller: Texas Instruments Texas Instruments PCIxx21 Integrated FlashMedia Controller
0000:06:04.4 Class 0805: Texas Instruments Texas Instruments PCI6411, PCI6421, PCI6611, PCI6621, PCI7411, PCI7421, PCI7611, PCI7621 Secure Digital (SD)

5. Network

Since wired LAN is available now you can continue setting up the Gentoo system. There was no need for me to install PPP drivers because of a router. Setting up eth0 to use a router on the local network according to the new baselayout structure in /etc/conf.d/net looks like so:

Code Listing 5.1: /etc/conf.d/net example

config_eth0=( "192.168.1.5 netmask 255.255.255.0" )

routes_eth0=(
  "default via 192.168.1.254"
)

If you want to use DHCP you don't have to configure anything in /etc/conf.d/net.

Now it's time to update portage and install the driver modules for the Intel 2200b/g controller. This will also install the firmware for the controller.

Code Listing 5.1: Installing the wireless modules

# emerge sync
# emerge ieee80211 ipw2200

hotplug is used to initialize the firmware on the Intel 2200b/g controller.

Code Listing 5.2: Adding hotplug

# emerge hotplug
# rc-update add hotplug boot
 * hotplug added to runlevel boot
 * rc-update complete.

6. Sound

We already have built ALSA in the kernel (see above). I don't know why exactly, but you will have to configure and run gpm before configuring ALSA. Edit /etc/conf.d/gpm like so:

Code Listing 6.1: /etc/conf.d/gpm example

MOUSE=ps2
MOUSEDEV=/dev/psaux

Now emerge alsa-utils and run alsaconf. Select the Intel sound driver and let alsaconf update the alsa configuration file.

Do not forget to add ALSA to the boot runlevel:

Code Listing 6.2: Adjust ALSA configuration

# rc-update add alsasound boot
 * alsasound added to runlevel boot
 * rc-update complete.

When ALSA has been configured and loaded, be sure to use the ALSA mixer tool to enable the sound output! Enable the Master, PCM and External devices and select appropriate volume levels (should not be displayed in the red). The External device does not have a volume control, but must be actived to enable the built-in amplifier. Also, be sure to turn up the volume on the volume knob that is located at the front right of the notebook.

Code Listing 6.3: Running the ALSA mixer

# alsamixer

7. USB

Be sure to emerge coldplug and add it to the boot runlevel to let Gentoo recognize USB mice.

Code Listing 7.1: Installing coldplug

# emerge coldplug
# rc-update add coldplug boot
 * coldplug added to runlevel boot
 * rc-update complete.

You can also emerge ivman for auto-mount support. Inserted USB sticks and optical media will be automatically mounted in the /media directory.

Code Listing 7.2: Installing ivman

# emerge ivman
# rc-update add ivman default
 * ivman added to runlevel default
 * rc-update complete.

8. X11 / KDE

Emerge xorg-x11 and KDE as you like. Also emerge synaptics for the touchpad. Then edit /etc/X11/xorg.conf like below. This is a work-in-progress! Double tapping doesn't work yet.

Code Listing 8.1: xorg.conf

Section "ServerLayout"
	Identifier     "X.org"
	Screen      0  "Screen0" 0 0
	InputDevice    "Touchpad" "CorePointer"
	InputDevice    "USBMouse" "SendCoreEvents"
	InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

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

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

Section "Extensions"
	Option "Composite" "true"
EndSection

Section "InputDevice"
	Identifier  "Keyboard0"
	Driver      "kbd"
EndSection

Section "InputDevice"
	Identifier  "Touchpad"
	Driver      "synaptics"
	Option	    "Protocol" "auto-dev"
	Option      "Device" "/dev/psaux"
	Option      "SHMConfig" "on"
	Option      "Emulate3Buttons" "yes"
	Option      "LeftEdge" "120"
	Option      "RightEdge" "830"
	Option      "TopEdge" "120"
	Option      "BottomEdge" "650"
	Option      "FingerLow" "14"
	Option      "FingerHigh" "15"
	Option      "MaxTapTime" "150"
	Option      "MaxTapMove" "90"
	Option      "EmulateMidButtonTime" "75"
	Option      "VertScrollDelta" "20"
	Option      "HorizScrollDelta" "20"
	Option      "MinSpeed" "0.5"
	Option      "MaxSpeed" "1.0"
	Option      "AccelFactor" "0.015"
	Option      "EdgeMotionMinSpeed" "200"
	Option      "EdgeMotionMaxSpeed" "200"
	Option      "UpDownScrolling" "1"
	Option      "CircularScrolling" "1"
	Option      "CircScrollDelta" "0.1"
	Option      "CircScrollTrigger" "2"
	Option      "LockedDrops" "1"
EndSection

Section "InputDevice"
	Identifier  "USBMouse"
	Driver      "mouse"
	Option	    "Protocol" "evdev"
  (modify the following as needed, check 'cat /proc/bus/input/devices')
	Option      "Dev Name" "Microsoft Microsoft 5-Button Mouse with IntelliEye(TM)"
	Option      "Dev Phys" "usb-0000:00:1d.3-2/input0"
	Option	    "Device" "/dev/input/event3"
	Option      "Buttons" "7"
	Option      "ZAxisMapping" "6 7"
EndSection

Section "Monitor"
	Identifier   "Monitor0"
	VendorName   "Monitor Vendor"
	ModelName    "Monitor Model"
	HorizSync    1-99
	VertRefresh  40-99
EndSection

Section "Device"
  Option     "AllowGLXWithComposite" "true"
	Identifier  "Card0"
	Driver      "nvidia"
	VendorName  "nVidia Corporation"
	BoardName   "GeForce Go 6600"
	BusID       "PCI:1:0:0"
	Option      "NoLogo" "1"
	Option      "RenderAccel" "true"
EndSection

Section "Screen"
	Identifier "Screen0"
	Device     "Card0"
	Monitor    "Monitor0"
	DefaultDepth 24
	SubSection "Display"
		Modes "1400x1050" "1024x768"
	EndSubSection
EndSection

The Nvidia X11 drivers should be taken from the ~arch tree in portage because the stable versions are very old (as of this writing), so put the following into /etc/portage/package.keywords.

Code Listing 8.2: /etc/portage/package.keywords

media-video/nvidia-kernel
media-video/nvidia-glx
media-video/nvidia-settings

Install the nVidia X11 driver module using emerge nvidia-kernel, and install the GLX libraries (emerge nvidia-glx) and the nVidia settings manager: emerge nvidia-settings. Set the default window manager in /etc/rc.conf:

Code Listing 8.3: Setting the default window manager

XSESSION="kde-3.5"

Now you can run X11 / KDE.

Code Listing 8.4: Starting X11

# startx -- -dpi 96

And hopefully see this:

Toshiba A80-154 running KDE 3.4.1

9.Document Updates

Update 2005-12-18

Linux 2.6.14 supports SATA optical drives natively, but this support needs to be enabled with a module or kernel option. Since the SATA drivers are compiled into the kernel (see above), the grub config needs to be modified.

Code Listing 9.1: Grub menu.lst entry for SATA support

# For booting GNU/Linux
title Gentoo 2.6.14
root (hd0,1)
kernel /boot/bzImage-2.6.14 root=/dev/sda2 video=vesafb:ywrap,mtrr,1400x1050-16@60 libata.atapi_enabled=1

Linux 2.6.14 supports more devices, the lspci listing looks like so:

Code Listing 9.2: lspci listing with standard kernel

# lspci
00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 03)
00:01.0 PCI bridge: Intel Corporation Mobile 915GM/PM Express PCI Express Root Port (rev 03)
00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 03)
00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 03)
00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 03)
00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 03)
00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 03)
00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 03)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d3)
00:1e.2 Multimedia audio controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (rev 03)
00:1e.3 Modem: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller (rev 03)
00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 03)
00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 03)
00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 03)
01:00.0 VGA compatible controller: nVidia Corporation NV43 [GeForce Go 6600] (rev a2)
02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8036 PCI-E Fast Ethernet Controller (rev 10)
06:02.0 Network controller: Intel Corporation PRO/Wireless 2200BG (rev 05)
06:04.0 CardBus bridge: Texas Instruments PCIxx21/x515 Cardbus Controller
06:04.2 FireWire (IEEE 1394): Texas Instruments OHCI Compliant IEEE 1394 Host Controller
06:04.3 Mass storage controller: Texas Instruments PCIxx21 Integrated FlashMedia Controller
06:04.4 Class 0805: Texas Instruments PCI6411, PCI6421, PCI6611, PCI6621, PCI7411, PCI7421, PCI7611, PCI7621 Secure Digital (SD) Controller

Update 2006-05-28

Gentoo 2006.0 supports the Marvell NIC by use of the sky2 driver, so you don't need to compile the kernel anymore before installing the system! The installation instruction will remain in this document for historical reasons.

Kernel 2.6.16 finally supports the SysKonnect/Marvell NIC directly, so there is no more need to patch the SysKonnect driver. Edit the kernel options like so:

Code Listing 9.3: Network device options kernel for 2.6.16

Device Drivers  --->
  Network device support  --->
    Ethernet (1000 MBit)  --->
      <M> SysKonnect Yukon2 support (EXPERIMENTAL)

If you still have the sk98lin driver in /etc/modules.autoload.d/kernel-2.6, remove it or replace it with sky2.

10.References, Links, Acknowledgements

Layout and color scheme taken from Gentoo.org and fully CSS-ified by me.


Valid XHTML - Valid CSS