Gentoo Wiki


This article is part of the Hardware series.
Laptops TV Tuner Cards Wireless Servers Storage Other Hardware Motherboards Related



This guide is about how to install Linux on the Asus S5N laptop. The Asus M5N is very similar, so it will probably work for it too. (note: make sure you use xorg, not xfree. at least on the m5n, xfree seems to lock up the laptop completely.)

For decent hardware support on this laptop, using a 2.6.xx kernel is recommended. Using a 2.4.xx kernel requires a lot of patches and will even then limit the support. Even the earliest 2.6 kernels do not support all the hardware correctly.

This machine is very similar technically to the Dell Latitude X300, so this page is a useful reference for most of the features of that computer.

Hardware overview

CPUIntel Pentium-M / Pentium-LV / Celeron-M 1.1-2.2 Ghz.
MotherboardIntel Corp. 82852/82855 GM/GME/PM/GMV
Hard diskIDE UDMA-100 40-100 Gb.
Cd-romUSB, DVD 8x & CD-RW 24/12/24 combo
VideoIntel(R) Extreme Graphics 2 with external monitor port
Display12" TFT XGA with 1024 x 768 px resolution
PC Card1x Type II/I
CardreaderRicoh Cardreader (MMC, SD, Memory Stick , MS PRO flash card slot)
LANRealtek Semiconductor Co., Ltd. RTL-8139
WIFIIntel Corp. PRO/Wireless LAN 2100 or 2200 Mini PCI Adapter
ModemIntel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller
USB3 ports, USB 1.1 and 2.0
FireWire1 port
Audio1 Line Out, 1 Microphone, AC'97
Hotkeys4 programmable buttons, FN-keys


You may reach the AMI-BIOS with F2. When hitting ESC you can choose between HD, DVD/CD-ROM, and a removable device to boot.


See this HowTo.


See this HowTo.


Relevant hardware:

The built-in sound card is an AC'97 card. This is supported by the Intel i8x0 driver.

Linux Kernel Configuration: Audio
Device Drivers  --->
   Sound  --->
      <*> Sound card support
          Advanced Linux Sound Architecture  --->
             <*> Advanced Linux Sound Architecture
                 PCI devices  --->
                    <*> Intel i8x0


The AC'97 soundcard does not support hardware mixing, therefore we want dmixer support. ALSA 1.0.9 has dmixer support on by default. Therefor emerge >=alsa-driver-1.0.9 and it should work automagically.

For setting up ALSA < 1.0.9 correctly, read the following: ALSA/Install

This is my working asound.conf file for ALSA < 1.0.9:

File: /etc/asound.conf
pcm.!default {
  type plug
  slave.pcm "dmixer"

pcm.dsp0 {
  type plug
  slave.pcm "dmixer"

pcm.dmixer {
  type dmix
  ipc_key 1024
    slave {
      pcm "hw:0,0"
#  period_time 0
#  period_size 1024
#  buffer_size 8192
      rate 44100
 bindings {
  0 0
  1 1

ctl.dmixer {
  type hw
  card 0

Network controller

Relevant hardware:

This card works with the 8139too driver.

Linux Kernel Configuration: Network controller
Device Drivers  --->
   Networking support  --->
      [*] Networking support
          Ethernet (10 or 100Mbit)  --->
            <M>   Generic Media Independent Interface device support
            [*] EISA, VLB, PCI and on board controllers
            <M>   RealTek RTL-8139 PCI Fast Ethernet Adapter support
            [*]     Use PIO instead of MMIO


Relevant hardware:

See the ipw2100 guide or the ipw2200 guide.

Hard disk and DVD

Relevant hardware:

IDE Controller

The IDE controller is a Intel chipset.

Linux Kernel Configuration: IDE Controller
Device Drivers  --->
   ATA/ATAPI/MFM/RLL support  --->
      <*> ATA/ATAPI/MFM/RLL support
      <*>   Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support
      <*>     Include IDE/ATA-2 DISK support
      [*]       Use multi-mode by default
      <*>     Include IDE/ATAPI CDROM support
      [*]     PCI IDE chipset support
      [*]       Sharing PCI IDE interrupts support
      [*]       Generic PCI bus-master DMA support
      [*]         Use PCI DMA by default when available
      [*]           Enable DMA only for disks
      <*>         Intel PIIXn chipsets support


If you have compiled USB support in the kernel, the DVD/CDROM drive will be detected as /dev/sr0

The optimal hdparm settings to improve data transfer speeds are:

hda_args="-c1 -d1 -u1 -m16"


Relevant hardware:

The three USB ports on the laptop support USB 1.0 and 2.0.

Linux Kernel Configuration: USB
Device Drivers  --->
   USB support  --->
      <*> Support for Host-side USB
      [*]   USB device filesystem
      <M>   EHCI HCD (USB 2.0) support
      <M>   UHCI HCD support (most Intel and VIA) support


Relevant hardware:

Linux Kernel Configuration: FireWire
Device Drivers  --->
   IEEE 1394 (FireWire) support  --->
       <*> IEEE 1394 (FireWire) support
       <*>   OHCI-1394 support


Relevant hardware:

The modem should work with the driver for the Smart Link modem (slmodem). The slmodem driver also depends on working soudcard support through ALSA. See the Audio section for more information on configuring it.

To install this driver in Gentoo, use the following command:

emerge net-dialup/slmodem

PC Card

See this guide. The RL5c476 II is yenta-compatable.

Note: The card won't be found until you append pci=assign-busses to you kernel boot parameters.


It is a Synaptics touchpad and the scroll buttons work.

For Xorg the synaptics drivers need to be installed.

In gentoo this can be done with the following command:

emerge x11-drivers/synaptics

make sure you enabled the "evdev" module in your kernel ("Device drivers" -> "Input device support" -> "Event interface"). see Synaptics Touchpad for detailed instructions.

(2005-12-15 - 2.6.14-gentoo-r4 synaptics-0.14.4 xorg-x11-6.8.2-r6: synaptics module not loading into xorg, use without if necessary. edit: x11-drivers/synaptics-0.14.4-r2 now funtional 2005-12-17)

Memory Card Reader

Relevant hardware:

This device identifies itself as a CardBus bridge, which Linux recognizes, but when inserted a memory stick, the PCMCIA driver logs two messages:

 cardmgr[355]: unsupported card in socket 0
 cardmgr[355]:   product info: "RICOH", "Bay2Controller"

This reader is apparently undocumented hardware. One Samsung Q20 (aka Dell X300) user contacted Ricoh and was told that there was no public documentation. Although drivers are supposedly included as of kernel 2.6.17. There is an experemental driver.


The Asus S5N does not use any APM stuff. It only uses ACPI.

For setting up ACPI support select the following in the kernel:

Linux Kernel Configuration: ACPI and CPU Frequency scaling
Power management options (ACPI, APM)  --->
   [*] Power Management support
       ACPI (Advanced Configuration and Power Interface) Support  --->
          [*] ACPI Support
          <*>   AC Adapter
          <*>   Battery
          <*>   Button
          <*>   Fan
          <*>   Processor
          <*>     Thermal Zone
          <*>   ASUS/Medion Laptop Extras
          [*] Power Management Timer Support
       CPU Frequency scaling  --->
          [*] CPU Frequency scaling
          <*>   'performance' governor
          <*>   'powersave' governor
          <*>   CPU frequency table helpers
          <*> Intel Enhanced SpeedStep
          [*]   Use ACPI tables to decode valid frequency/voltage pairs
          [*]   Built-in tables for Banias CPUs

CPU Frequency scaling

Consult the Power Management Guide:

Stand-by / Software Suspend / Suspend to disk

Official Asus documents say the laptop supports Stand-by, Suspend to Disk and Suspend to RAM.

Software Suspend 2 works (depending on kernel).

For setting up Software Suspend, read the following:

Suspend to RAM works with kernel >= 2.6.8 and then patches from Len Brown which can be downloaded at Maybe in newer kernels it even works without this patch.

You will have to unload some modules before supending and load them when resuming. I'm using this little script:

File: /etc/acpi/
rmmod snd_intel8x0 snd_ac97_codec snd_mpu401_uart snd_rawmidi
rmmod ehci_hcd


echo "mem" > /sys/power/state

modprobe snd_intel8x0 snd_ac97_codec snd_mpu401_uart snd_rawmidi
modprobe ehci_hcd


The following setting will give you about 5% more battery time:

echo "1" > /proc/sys/vm/laptop_mode

Use only when running on the battery because this will reduce performance.

LED's and buttons

The LCD brightness setting keys (Fn-F5, Fn-F6) and the LCD turning on/off (Fn-F7) works without any modifications, however the volume keys (Fn-F10, Fn-F11, Fn-F12) need some more to work.

There are two ways of setting this up;


To use the function keys use the acpi4asus tool.

(This project is included in the Linux kernel since 2.4.22 and 2.5.73.)

echo "app-laptop/acpi4asus ~x86" >> /etc/portage/package.keywords && emerge app-laptop/acpi4asus

Don't forget to create your ~/.asus_acpi and read the documentation for details!

ACPID scripts

Here you have to be root and create some files.

File: /etc/acpi/events/volume-up
# /etc/acpid/events/volume-up
# This is called when the user presses the volume up button (Fn-F12)

event=hotkey ATKD 00000030
action=/usr/bin/aumix -v+2
File: /etc/acpi/events/volume-down
# /etc/acpid/events/volume-down
# This is called when the user presses the volume down button (Fn-F11)

event=hotkey ATKD 00000031
action=/usr/bin/aumix -v-2
File: /etc/acpi/events/mute
# /etc/acpid/events/mute
# This is called when the user presses the mute button (Fn-F10)

event=hotkey ATKD 00000032

Here's the script that does the actual mute:

File: /etc/acpi/actions/

o=`aumix -q | egrep 'vol 0, ?0'`
if [ -z "$o" ]; then
        aumix -S
        aumix -v0
        aumix -L

After creating these files remember to make the file executable (chmod u+x and then restart acpid.

Other powermanagement

Check out these documents:

Appendix A: lspci

Code: lspci
0000:00:00.0 Host bridge: Intel Corp. 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)
0000:00:00.1 System peripheral: Intel Corp. 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)
0000:00:00.3 System peripheral: Intel Corp. 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)
0000:00:02.0 VGA compatible controller: Intel Corp. 82852/855GM Integrated Graphics Device (rev 02)
0000:00:02.1 Display controller: Intel Corp. 82852/855GM Integrated Graphics Device (rev 02)
0000:00:1d.0 USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (rev 03)
0000:00:1d.1 USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (rev 03)
0000:00:1d.2 USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (rev 03)
0000:00:1d.7 USB Controller: Intel Corp. 82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (rev 03)
0000:00:1e.0 PCI bridge: Intel Corp. 82801 Mobile PCI Bridge (rev 83)
0000:00:1f.0 ISA bridge: Intel Corp. 82801DBM (ICH4-M) LPC Interface Bridge (rev 03)
0000:00:1f.1 IDE interface: Intel Corp. 82801DBM (ICH4-M) IDE Controller (rev 03)
0000:00:1f.5 Multimedia audio controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 03)
0000:00:1f.6 Modem: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (rev 03)
0000:01:03.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev ac)
0000:01:03.1 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev ac)
0000:01:03.2 FireWire (IEEE 1394): Ricoh Co Ltd R5C552 IEEE 1394 Controller (rev 04)
0000:01:04.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
0000:01:05.0 Network controller: Intel Corp. PRO/Wireless LAN 2100 3B Mini PCI Adapter (rev 04)

Appendix B: kernel configuration

Click here (externalised in sub-article to reduce size)

Appendix C: links

Retrieved from ""

Last modified: Tue, 26 Aug 2008 21:44:00 +0000 Hits: 36,158