www.hollants.com
March 13, 2010
>
You are here: Home - Samsung P30 - SuSE Linux Professional 9.2 installation report Print version (soon)

Home

Notebooks

Hard & Software

Webstuff

Projects

Verschiedenes

This site

Samsung P30

SuSE Linux Professional 9.2 installation report

Compared to the SuSE Linux Professional 9.1 installation, the 9.2 installation went along much smoother. Please still pay attention to Matthias Hentges's similar report for Debian "Sid" and Hanno Böck's report for Gentoo Linux.

Overview

2.6.8 (SuSE 9.2)
Installation Ok
ACPI BIOS Ok (but BIOS has errors)
Special keys With ACPI4Asus driver, untested
ACPI Standby (S1), Suspend-to-RAM (S3), Suspend-to-Disk (S4) S4 works, S3 is reported to work
Speedstepping with cpufreqd Ok (patched DSDT recommended)
IDE (UDMA modes) Ok
XFree86 Ok
DRM Untested
Sound Ok
LAN Ok, 8139too driver
Centrino WLAN Ok
USB Ok
Firewire Untested, but should work
IrDA Ok
PCMCIA Ok
Modem Untested
Card reader Unsupported
Touchpad / External
Intellimouse Optical USB
Work (hand-optimized)

ACPI BIOS

The following applies to all BIOS versions so far, including 05HK and 06HK:

No errors are reported at boot and in /proc/acpi all desired information about the battery status, the CPU's temperature and performance states etc. is available, so that you get a working battery display in KDE.

However, as per the Linux ACPI howto, I've extracted the DSDT (using acpidmp from the "pmtools" package on the SuSE DVD) and Intel's ASL compiler reports 2 errors and 1 warning:

dsdt.dsl   205:           If (LOr (PWRS, Not (CondRefOf (_PSS, Local0))))
Error    1022 -                       Object does not exist ^  (_PSS)

dsdt.dsl  2976:           Method (_Q0D, 0, NotSerialized)
Warning  2019 -                      ^ Not all control paths return a value (_Q0D)

dsdt.dsl  4691:           Notify (\_SB.PCI0.IDEC, 0x00)
Error    1078 -         From ACPI CA Subsystem ^  (AE_BAD_PARAMETER Internalizing new NamePath)

Matthias Hentges fixed the two errors and another bug in the DSDT -- see below at Speedstepping with cpufreqd.

Special keys

The four keys next to the power button (three programmable launch keys and a WLAN enable/disable key) do not work in Windows without a special "ATK driver", which, surprise, surprise, seems identical to Asus's "ATK0100" driver.

Accordingly, Matthias Hentges discovered that the existing Linux driver for Asus notebooks, ACPI4Asus , could be modified to support the P30. v0.28 and later should support the special keys.

While this driver worked on my 9.0 installation, I haven't tried it on 9.2 yet.

ACPI Standby (S1), Suspend-to-RAM (S3), Suspend-to-Disk (S4)

Matthias Henges reports that he has gotten Suspend-to-RAM to work -- I haven't tried that myself yet.

Since SuSE Linux 9.1 suspend-to-disk works but needs to be enabled in the YaST "Power management" module: clicks the "Activate suspend" button. kpowersave's KDE tray icon will then offer you the Suspend-to-Disk option, which reuses the swap partition.

Unlike the 9.1 installation, this time the system files seem to unload all problematic modules automatically.

Speedstepping with cpufreqd

First off, Matthias Hentges has found out that the processor's Cn states are not correctly recognized because of a faulty DSDT. You can find his fixed DSDT and the necessary patch to make the Linux kernel override the BIOS's own DSDT (already included in the SuSE kernel) at his site.

After compiling the patched dsdt.dsl file, copy the generated DSDT.aml file to /etc/acpi/dsdt, specify that path in the ACPI_DSDT variable in the /etc/sysconfig/kernel file and call mk_initrd. The patched DSDT will be integrated into the initrd and become active upon the next reboot.

Note that his fix is necessary with all current BIOS versions, 01NK, 05NK and 06NK, available from the samsungpc.com Website.

DRM

Works out of the box, according to the X-Server's logfile, but I haven't tried any 3D games yet.

Wireless LAN

Seems to work out of the box, but the shipped version of the ipw2200 driver is 0.8 while at the time of this writing 0.15 is current. Versions below 0.11 had problems connecting to my access point, but I have to reverify with the 9.2 installation.

IrDA

Works, but you need to make sure that the serial module is not active on the appropriate /dev device.

Card reader

The P30 features a card reader for Multimedia cards (MMC) and their "secure" variant SD cards. It is built into the PCMCIA controller, a R5C590 (specsheet).

It's also strange in that its Windows XP driver does not appear in the device manager (and the Windows Explorer) until you insert a MMC or SD media. Then, if you switch the device manager to view devices by bus connection, a device "RICOH SD/MMC controller" appears below the Ricoh R/RL/5C476(II) card bus controller, so it seems as if it is somehow internally attached like a PC card. The driver reports a mapping into memory area F6BF8000 - F6BF8FFF, but I don't know whether that mapping stays permanent.

Under Linux, if you insert a card, PCMCIA's cardmgr will report an "unsupported card in socket 0" with "product info: 'RICOH', 'Bay1Controller'". cardctl ident in addition reports "manfid: 0x0000, 0x0000", "function: 254 ((null))". So in other words, no support, although a driver should be theoretically possible by means of reverse-engineering or such...

Touchpad / External Intellimouse Optical USB

SuSE 9.2 gives you a working configuration in which both the touchpad and an external Microsoft Intellimouse Optical USB work, but it's not perfect. I use the following XF86Config excerpt:

Section "InputDevice"
  Driver      "mouse"
  Identifier  "Mouse[0]"
  Option      "Device" "/dev/input/mice"
  Option      "Emulate3Buttons" "off"
  Option      "Protocol" "ExplorerPS/2"
  Option      "Buttons" "7"
  Option      "ZAxisMapping" "6 7"
EndSection

Section "InputDevice"
  Driver      "mouse"
  Identifier  "Mouse[1]"
  Option      "Device" "/dev/psaux"
  Option      "Emulate3Buttons" "on"
  Option      "Protocol" "ps/2"
EndSection

Section "ServerLayout"
  [...]
  InputDevice "Mouse[0]" "CorePointer"
  InputDevice "Mouse[1]" "SendCoreEvents"
EndSection

Normally, you would probably use a Option "ZAxisMapping" "4" "5" line, but in that case XFree86 (or should I now say Xorg?) won't recognize the thumb buttons inspite of being told that there are 7 buttons.

In my configuration however, the mouse movement arrives as buttons 6 and 7 which differs from what most applications including most KDE apps expect. Therefore I also use the common xmodmap trick to swap buttons 4 & 5 and 6 & 7, thereby causing the mouse movement to arrive as buttons 4 and 5 again. Note that for me to get xmodmap to work, I had to make the Intellimouse the CorePointer.

I chose a system-wide approach and placed the following in /usr/X11/lib/X11/Xmodmap:

pointer = 1 2 3 6 7 4 5

Now buttons 6 and 7 could be used by applications, but in fact, they don't. So far I haven't looked deeper into this issue, newer imwheel versions might help to map buttons 6 and 7 to the Back / Forward functionality in Mozilla, for instance.

Last not least, getting both Touchpad and external USB mouse to work on the console is no biggy: just run gpm with the parameters -m /dev/psaux -t ps2 -M -m /dev/input/mice -t imps2 and voila. Since XFree86 uses its own mouse handling, I disabled gpm in runlevel 5.

This page last changed:
November 29, 2004

Copyright © 1998-2004 by Pieter Hollants - All rights reserved - Legal terms