Samsung X15 xvm 735 under Linux

Antoine Ginies (guibo_at_guibo.com)

2005

Historique des versions
Version 0.628 sept March 2005ag
upgrade to Mandriva Linux 2006 release
Version 0.515 March 2005ag
Add slmodem
Version 0.43 February 2005ag
Add lot of output and links; fix revhistory
Version 0.315 January 2005ag
Add CPU freq section (thx R1 help)
Version 0.24 January 2005ag
Few update (DSDT thx R1)
Version 0.1December 2004ag
First release (based on X30 example)


Figure 1. My laptop:

My laptop:

Doc write in Docbook.

1. Laptop Description

Processor and chipset

  • Processor : Intel Pentium M 735 1,7 Ghz
  • Data bus speed : 400 Mhz
  • cache memory L2 : 2 Mo
  • Mobile technology : Enhanced Intel Speedstep
  • Chipset : Intel 855 GM

Memory

  • Standard : 512 Mo DDR PC2700
  • maximum : 2048 Mo

Display

  • Ecran : 15,1" TFT XGA
  • Resolution : 1024 x 768
  • Graphic card
  • Chipset : Intel 855 GM
  • 64 Mo shared memory

Storage

  • hdd: IDE de 80 Go (FUJITSU MHT2080AT Ultra ATA 100)
  • card reader: Memory Stick (dont work under Linux...)
  • DVD±RW : TEAC DV-W24ES 2Mo

Integrated

  • Sound: AC'97 Audio Controller
  • Modem : 56k V92
  • Network : Intel Corp. 82801BD PRO/100 VE
  • Wireless lan : Intel Corp. PRO/Wireless 2200BG (802.11g)
  • Synaptic Touchpad
  • Firewire IEEE 1394 (Ricoh Co Ltd R5C552 IEEE 1394 Controller)
  • USB UHCI and USB2 EHCI Controller
  • PCMCIA cardbus : 1 x Type I/II

Power

  • Battery Smart Li-ion 6 cellules, 4400mAH: average run time 3-4h
  • Battery Smart Li-ion 9 cellules, 7200mAH: average run time 5-7h

General

  • Dimensions : 327,8 x 277,7 x 26,7 (WxDxH)
  • Weight : 2,3 Kg

2. BIOS

BIOS release 09KV. Please use last Bios release: samsunpc.com web site to avoid problem of bugged BIOS.

3. Installation

I've made a Mandriva Linux 2006 installation, the hardware was well detected.

4. ACPI

BIOS really buggy :/ so ACPI doesn't work. So we have to rebuild a DSDT file and update our initrd.img to get it works well.

4.1. DSDT file

ACPI is bugged, so we need DSDT file, build it and insert into initrd.img file. Here you can find my fixed x15.acpidmp, and the DSDT acpi_dsdt.aml. You can find more information about build your owmn DSDT file : acpi.sourceforge.net.

4.2. Kernel and initrd (no more needed with Mandriva 2006 release)

This is my configuration file for 2.6.10 kernel : 2610-config, builtin ext3 and with framebuffer. I use some patch to get acpi working: acpi-20050114-2.6.10.diff found at: lenb people patche. I use this path acpi-dsdt-initrd-patch to add support of DSDT file in initrd (gaugusch.at).

Here are my kernel files:

Regenerate your initrd.img file with mkinitrd:

mkinitrd -v /boot/initrd-2.6.10.img 2.6.10

Patch your initrd with acpi_dsdt.aml file (use insertinitrd). Add "lapic" option to your boot command line to reenable ACPI. Reload your lilo. You need to do that each time you build a new Kernel.

4.3. ACPI applications

You can find a lot of ACPI applications at freshmeat.net with keyword acpi or battery to find yours.

4.4. some ACPI outputs

[guibo@guibux guibo]$ acpi -V
     Battery 1: charged, 100%
     Thermal 1: ok, 40.0 degrees C
  AC Adapter 1: on-line

[guibo@guibux guibo]$ cat /proc/acpi/battery/BAT1/info 
present:                 yes
design capacity:         4800 mAh
last full capacity:      4600 mAh
battery technology:      rechargeable
design voltage:          11100 mV
design capacity warning: 0 mAh
design capacity low:     138 mAh
capacity granularity 1:  1 mAh
capacity granularity 2:  1 mAh
model number:            
serial number:           
battery type:            LION
OEM info:                SAMSUNG Electronics

4.5. Acpi suspend

You can put the machine into sleep state S3 (suspend to memory). It works well, and now VGA bring back. To wakeup your laptop, you can use some devices:

[root@guibux acpitool-0.2.6]# acpitool -w
   Device       Sleep state     Status
 ---------------------------------------
 1. PWRB           4            *enabled
 2. LANC           4             enabled
 3. MODM           3            disabled

[root@guibux acpitool-0.2.6]# acpitool -W 2
 Changed status for wakeup device #2 (LANC)
   Device       Sleep state     Status
 ---------------------------------------
 1. PWRB           4            *enabled
 2. LANC           4            disabled
 3. MODM           3            disabled

See the homepage for more information and download link about acpitool

5. Intel Speedstep Control

You can use cpufreqd.

Dont forget to probe your module "acpi_cpufreq" (add it into /etc/modprobe.preload file). I use wmthrottle and a simple script to throttle and adjust freq of CPU. You can use cpu_freq_throttle tools, and add define your user as a sudoers, add in /etc/sudoers file:

your_username ALL = (ALL) NOPASSWD: /usr/sbin/cpu_freq_throttle

You can find more information here: processor.

[guibo@guibux CPU0]$ cat /proc/acpi/processor/CPU0/throttling 
state count:             4
active state:            T0
states:
   *T0:                  00%
    T1:                  25%
    T2:                  50%
    T3:                  75%

[guibo@guibux /]$ ls /sys/devices/system/cpu/cpu0/cpufreq/        
affected_cpus     scaling_available_frequencies  scaling_driver    scaling_min_freq
cpuinfo_max_freq  scaling_available_governors    scaling_governor  scaling_setspeed
cpuinfo_min_freq  scaling_cur_freq               scaling_max_freq

[guibo@guibux guibo]$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies 
1700000 1400000 1200000 1000000 800000 600000 

[guibo@guibux guibo]$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor 
userspace

6. Wireless Network

Go to: ipw2200.sourceforge.net and follow the doc. Works Well. dmesg message:

ipw2200: Intel(R) PRO/Wireless 2200/2915 Network Driver, 0.21
ipw2200: Copyright(c) 2003-2004 Intel Corporation
ACPI: PCI interrupt 0000:02:07.0[A] -> GSI 5 (level, low) -> IRQ 5
ipw2200: Detected Intel PRO/Wireless 2200BG Network Connection
ipw2200: Radio Frequency Kill Switch is On:
Kill switch must be turned off for wireless networking to work.

iwconfig command:

eth1      IEEE 802.11g  ESSID:"hidden"  Nickname:"guibux.guibland.com"
          Mode:Managed  Channel:11  Access Point: 00:C0:02:FF:6F:3E  
          Bit Rate=54Mb/s   Tx-Power=20 dBm   
          RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality:100/100  Signal level:-23 dBm  Noise level:-80 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

My access point is a TRENDnet TEW-431BRP, and it works very well.

7. Synaptics Touchpad

Works well under Mandriva Linux 2006: wheel and all advanced touchpad options (vertical and horizontal scroll). You can find information here: touchpad.

8. Xorg

Max resolution is: 1024x768. My configuration file: xorg.conf. I use Icewm Window Manager with various dockapps: wmthrottle, wmfire, wmforkplop, wmbatteries, wmcpuload, wmnd, wmhdplop, wmclockmon. You can find all these apps here: dockapps.org. My Icewm configuration file: icewmconf. I Use some Ayo's wallpaper: http://www.73lab.com.

Figure 2. My Desktop:

My Desktop:

9. Sound

Sound works well with ASLA. Module: snd-intel8x0

10. Hardrive disk

/dev/hda: FUJITSU MHT2080AT, ATA DISK drive; 156301488 sectors (80026 MB) w/8192KiB Cache, CHS=65535/16/63, UDMA(100).

[root@guibux proc]# hdparm -tT /dev/hda
/dev/hda:
 Timing buffer-cache reads:   2464 MB in  2.00 seconds = 1231.57 MB/sec
 Timing buffered disk reads:   82 MB in  3.01 seconds =  27.22 MB/sec

11. Hotkeys

I use hotkeys to remap special keyboard key. You need to enable two special keys: one with the "I" and the other one with the "checkbox" icon. To do it as root:

setkeycodes 0x74 122
setkeycodes 0x75 123

Add this two lines in your /etc/rc.d/rc.local

My Samsung X15 definition file: samsungx15.def. Edit this file, adjust it with your need, and copy it in /usr/share/hotkeys, and launch:

hotkeys -t samsungx15

Now you can use all your Special key to launch your favorites applications. Information key to launch "aumix", Mail key to launch "xmms", Ckeckbox key to launch "gqview", and Menu selection to launch an "xterm".

12. USB

Nothing to say, everithing is working fine :) dmesg:

usbcore: registered new driver usbfs
usbcore: registered new driver hub
USB Universal Host Controller Interface driver v2.2
uhci_hcd 0000:00:1d.0: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1
uhci_hcd 0000:00:1d.0: new USB bus registered, assigned bus number 1
hub 1-0:1.0: USB hub found
uhci_hcd 0000:00:1d.1: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2
uhci_hcd 0000:00:1d.1: new USB bus registered, assigned bus number 2
hub 2-0:1.0: USB hub found
uhci_hcd 0000:00:1d.2: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3
uhci_hcd 0000:00:1d.2: new USB bus registered, assigned bus number 3
hub 3-0:1.0: USB hub found
ehci_hcd 0000:00:1d.7: Intel Corp. 82801DB/DBM (ICH4/ICH4-M) USB 2.0 EHCI Controller
ehci_hcd 0000:00:1d.7: new USB bus registered, assigned bus number 4
ehci_hcd 0000:00:1d.7: USB 2.0 initialized, EHCI 1.00, driver 26 Oct 2004
hub 4-0:1.0: USB hub found

13. DVD rw

I use k3b or cdrecord.

14. Firewire

module: ohci1394. Works well to grab video from my Sony-pc120.

[guibo@guibux guibo]$ ls -la /dev/raw1394 
crw-rw----  1 root usb 171, 0 Jan 25 15:19 /dev/raw1394

15. Memory Stick Controller

It's a RICOH card reader. This device identifies itself as a CardBus bridge, which Linux recognizes, but there is no public documentation...

Jan 21 10:08:02 node88 cardmgr[11107]: unsupported card in socket 0
Jan 21 10:08:02 node88 cardmgr[11107]:   product info: "RICOH", "Bay2Controller"
Jan 21 10:08:02 node88 cardmgr[11107]: function: 254 ((null)) 

16. Modem

not yet tested cause i dont need modem. Modem: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (rev 1). Seems to work with slmodem: Smart Link Ltd. Build modules with ALSA (SUPPORT_ALSA:=1) and probe module: snd_intel8x0m.

17. PCMCIA

no problem, works well too. Modules are: pcmcia, pcmcia_core and yenta_socket.

Yenta: CardBus bridge found at 0000:02:03.1 [144d:c009]
Yenta: ISA IRQ mask 0x0018, PCI irq 10
Socket status: 30000410
cs: memory probe 0x0c0000-0x0fffff: excluding 0xc0000-0xcffff 0xd8000-0xdffff 0xe4000-0xfffff
eth3: Compaq: port 0x300, irq 10, hwaddr 00:80:5F:D8:73:E2
eth3: media 10BaseT, silicon revision 4

18. /etc/modprobe.conf

alias eth0 e100
alias sound-slot-0 snd-intel8x0
remove snd-intel8x0 /sbin/modprobe -r snd-pcm-oss; /sbin/modprobe --first-time -r --ignore-remove snd-intel8x0
install snd-intel8x0 /sbin/modprobe --first-time --ignore-install snd-intel8x0  { /sbin/modprobe snd-pcm-oss; /bin/true; }
install usb-interface /sbin/modprobe uhci-hcd; /sbin/modprobe ehci-hcd; /bin/true
alias eth1 ipw2200
alias ieee1394-controller ohci1394

19. lspci output

standard lspci standard output, if you want the verbose one: lspci-v

00:00.0 Host bridge: Intel Corp. 82852/855GM Host Bridge (rev 02)
00:00.1 System peripheral: Intel Corp. 855GM/GME GMCH Memory I/O Control Registers (rev 02)
00:00.3 System peripheral: Intel Corp. 855GM/GME GMCH Configuration Process Registers (rev 02)
00:02.0 VGA compatible controller: Intel Corp. 82852/855GM Integrated Graphics Device (rev 02)
00:02.1 Display controller: Intel Corp. 82852/855GM Integrated Graphics Device (rev 02)
00:1d.0 USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (rev 01)
00:1d.1 USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (rev 01)
00:1d.2 USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (rev 01)
00:1d.7 USB Controller: Intel Corp. 82801DB/DBM (ICH4/ICH4-M) USB 2.0 EHCI Controller (rev 01)
00:1e.0 PCI bridge: Intel Corp. 82801 PCI Bridge (rev 81)
00:1f.0 ISA bridge: Intel Corp. 82801DBM LPC Interface Controller (rev 01)
00:1f.1 IDE interface: Intel Corp. 82801DBM (ICH4) Ultra ATA Storage Controller (rev 01)
00:1f.3 SMBus: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev 01)
00:1f.5 Multimedia audio controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 01)
00:1f.6 Modem: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (rev 01)
02:03.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev ac)
02:03.1 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev ac)
02:03.2 FireWire (IEEE 1394): Ricoh Co Ltd R5C552 IEEE 1394 Controller (rev 04)
02:07.0 Network controller: Intel Corp. PRO/Wireless 2200BG (rev 05)
02:08.0 Ethernet controller: Intel Corp. 82801BD PRO/100 VE (MOB) Ethernet Controller (rev 81)

20. List of modules:

isofs                  36280  1 
zlib_inflate           18688  1 isofs
sg                     35488  0 
st                     41244  0 
sr_mod                 18468  0 
sd_mod                 15760  0 
scsi_mod               87776  4 sg,st,sr_mod,sd_mod
snd_seq_oss            34560  0 
snd_seq_midi_event      7680  1 snd_seq_oss
snd_seq                52752  4 snd_seq_oss,snd_seq_midi_event
snd_seq_device          8716  2 snd_seq_oss,snd_seq
snd_pcm_oss            55460  0 
snd_mixer_oss          20480  1 snd_pcm_oss
snd_intel8x0           33184  0 
snd_ac97_codec         77408  1 snd_intel8x0
snd_pcm                96776  3 snd_pcm_oss,snd_intel8x0,snd_ac97_codec
snd_timer              25092  2 snd_seq,snd_pcm
snd_page_alloc         10116  2 snd_intel8x0,snd_pcm
snd                    54116  9 snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_intel8x0,snd_ac97_codec,snd_pcm,snd_timer
soundcore               9952  1 snd
af_packet              22152  2 
eth1394                20616  0 
ipw2200               129772  0 
firmware_class         10240  1 ipw2200
ieee80211              35524  1 ipw2200
ieee80211_crypt         5764  1 ieee80211
e100                   29196  0 
mii                     5376  1 e100
ide_cd                 41604  1 
cdrom                  41500  2 sr_mod,ide_cd
ohci1394               34436  0 
ieee1394              309816  2 eth1394,ohci1394
loop                   15880  0 
nls_iso8859_15          4736  1 
nls_cp850               4992  1 
vfat                   14336  1 
fat                    41888  1 vfat
acpi_cpufreq            6276  1 
freq_table              4356  1 acpi_cpufreq
nvram                   8584  0 
joydev                 10304  0 
evdev                   9856  1 
psmouse                22024  0 
ehci_hcd               31748  0 
uhci_hcd               33168  0 
usbcore               119416  3 ehci_hcd,uhci_hcd
video                  16004  0 
thermal                13192  0 
processor              22196  2 acpi_cpufreq,thermal
fan                     4612  0 
button                  6672  0 
battery                 9604  0 
ac                      4868  0 
rtc                    11960  0 

21. All files

files directory:http://antoine.ginies.free.fr/samsungX15/data/

Valid XHTML 1.0! Valid CSS!