Monday 27 July 2009

Linux on Toshiba Satellite L300-129

Last updated: 31 July 2009

General Hardware Specifications of Toshiba Satellite L300-129

Hardware ComponentsStatus under Linux / Notes
Processor: Intel Pentium dual-core T2390 1.86 GHzWorking
System memory: 2048 MB DDR2 RAM (667 MHz)Working
Hard disk: 160 GB S.M.A.R.T. (5,400 rpm)Working
DVD/CD drive:DVD Super Multi driveWorking
Display: 15.4" TruBrite WXGA TFT High BrightnessWorking
Graphics adapter: Intel GMA X3100 358 MBX11 7.4 and higher
Expansion: Express Card slotNot checked
Wireless card: Realtek 8187B (0bda:8198) 802.11b/gkernel 2.6.29 and higher
Ethernet card: Fast Ethernet LAN 10BASE-T/100BASE-TXWorking
Modem: V.92 modem 56 Kbps data, 14.4 Kbps faxNot checked
Sound system: 24-bit stereoWorking
Pointing device: Touch PadWorking
Battery: Lithium-IonWorking
Web camera: 0.3 MPx VGA with built-in microphoneWorking
USB port3 x USB 2.0Working (since kernel 2.6.30 visible works on autosuspend)
Other ports:

- external monitor port

- external microphone

- headphone (stereo)

Working

lspci returns:

00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub
00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller
00:02.1 Display controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #4
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1
00:1c.4 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge
00:1f.0 ISA bridge: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller
00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller
00:1f.2 SATA controller: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA AHCI Controller
00:1f.3 SMBus: Intel Corporation 82801H (ICH8 Family) SMBus Controller
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller

In conclusion, Toshiba L300-129 hardware is supported by kernel especially 2.6.29 and higher version. I recommend update kernel to the newest one by virtue of intel's hardware, they do much work improving kernel's support, so you often observe that your laptop works better.

Checked GNU/Linux distributions:

  • openSUSE 11.1

Installation, configuration and using are indeed easy. During installation you need only check some basic options like language, desktop environment etc. and next wait until the end of installation. If I am not wrong, version 11.1 has 2.6.27 kernel, so you need update it to 2.6.29 cause drivers in earlier releases not support wireless properly. If everything was done correct you may start using this system.

  • Gentoo

Installation is a bit more difficult than openSUSE, but beside this discomfort you get powerful abilities. To do that you have to follow instructions contained in this manual, but personally I suggest read alternative installation method before, especially point five "Installing Gentoo from an existing Linux distribution".

REMEMBER!!! Use only the newest releases of stage and portage.

When you will have ready basic system, you may start install your favorite packages.

REMEMBER!!! Use primarily stable ebuilds, otherwise your life change into nightmare.

Of course sometimes unstable package may be better as in the case of x11-xorg, so if you have x11-xorg-7.2 installed or it doesn't work properly then update driver for Intel cards (xf86-video-intel) to unstable version (add ~ in ACCEPT_KEYWORDS variable in make.conf file).

Soon I write post dedicated to Gentoo's configuration on Toshiba Satellite L300-129 laptop with every details like kernel and X configuration. Please be patient.


If you have any questions, my email is: kamilzmija@gmail.com 


Wednesday 22 July 2009

Dictionary

  • read-ahead - it is a system that loads data with excess into the RAM, so next time when data is loaded from the following area it is readed from RAM not disc, which is much faster.
  • noatime - mounting option which doesn't update access timestamp when a file is readed
  • DNS - (Domain Name Server) server translating domain names to IP address eg. powerlinxlap.blogspot.com is translated to 66.102.13.132, this operation takes some time

Hard Disc Drive

HDD is next opportunity too get some extra minutes working on battery. Nowadays most of disc drives supports power saving modes especially SATA discs which uses less power than PATA during data transmission. There are many methods to save power, you can reduce transmission, change read-ahead, spin down drive or even turn off motor. Most known program is hdparm which supports all above options and many others. Worth attention is -S time option putting drive into idle mode, and also sets time determining how long to wait (with no disc activity) before turning off the motor. It may save a lot of power but you need use some other tricks which reduces the frequency of using disc drive. Below I listed most important (in my opinion):

  • add option noatime for each mounted partition in /etc/fstab configuration file
  • if you have enough RAM memory, you may disable swap partition by putting # in /etc/fstab file at the beginning of line responsible for mounting swap file system
  • set read-ahead using command hdparm -a [value] /dev/[your disc]  'value' should be large but not too much (I have 24576)
  • stop system message loggers like syslogd syslog-ng rsyslogd

All these things do laptop_mode, but this is subject for other post.

If you want to find out which process get access to your disc use following commands (as root)


kamil@lap ~ $ su
Password: 
lap kamil # echo 1 > /proc/sys/vm/block_dump
lap kamil # dmesg | tail
[ 9956.024000] pdflush(31): WRITE block 17040472 on sda1
[ 9956.024009] pdflush(31): WRITE block 17125584 on sda1
[ 9956.024043] pdflush(31): WRITE block 17170536 on sda1
[ 9956.024062] pdflush(31): WRITE block 0 on sda1
[ 9956.024073] pdflush(31): WRITE block 8 on sda1
[ 9956.030421] kjournald(46): WRITE block 11191960 on sda8
[ 9956.030692] kjournald(46): WRITE block 18694768 on sda8
[ 9956.030709] kjournald(46): WRITE block 18694776 on sda8
[ 9956.031003] kjournald(46): WRITE block 18694784 on sda8
[ 9958.427068] foobar2000.exe(5863): READ block 102237108 on sda5


Research:

   Hardware: 160GB 5400 rpm 2,5" SATA

   Notice: Graph isn't ideal, cause influence other section of laptop like fan, cpu etc.

hard disc drive power consumption
Most important options of hdparm:

COMMAND

     hdparm  [option]  [device]

OPTIONS

     -a  Get/set amount of sectors for filesystem read-ahead

     -B  Query/set Advanced Power Management feature, if it is supported. A low value means aggressive power management and higher means better performance. Possible values range from 1 to 127 (permit spin-down) and values from 128 to 254 (do not permit spin-down). A value of 255 disables  Advanced Power Management.

     -I  Returns detailed info directly from the drive.

     -S  Put drive into idle mode, and also sets time determining how long to wait (with no disc activity) before turning off the motor

WARRNING

     Be careful using hdparm, some of options are very dangerous and may damage your hardware!

Friday 17 July 2009

Backlight

The easiest way to save power is decrease brightness of your screen. Difference between the highest and the lowest level is a couple of watts but it also depends on screen's diagonal. Worth of recommendation is simple but useful program called xbacklight using RandR extension. It has text interface but you can use it in applets, other programs or commonly assign to keyboard shortcut.


Research:
Hardware: 15.4'' TFT WXGA Toshiba TruBrite
 
Below you can see comparison of power consumption when backlight brightness is set to 100% and 0%.
backlight brightness power consumption

Short description of using xbacklight:
COMMAND
       xbacklight [option]
OPTIONS
       -get   Returns the current backlight brightness
       -set [percent]   Sets backlight brightness 
       -dec [percent]   Decrease backlight brightness
       -inc [percent]   Increase backlight brightness
EXAMPLES
       xbacklight -set 75
       xbacklight -inc 10
       xbacklight -dec 5

About

One year ago I bought laptop (which I'm using now to write this post), but unfortunately it had installed Vista. After five days I was on the edge of mental stability, this OS uses huge amount of my laptop's resources without reason (Linux achieve better effects on worse hardware). Next I tried XP, of course it doesn't support my SATA disc drive and additional drivers also did not work, so at last I installed GNU/Linux openSUSE 11.0 and that was it. Before I had been using GNU/Linux on my PC, but in case of laptop I afraid about hardware (it's new, so there is possibility of damage it). Luckily Linux supported hardware (except wifi card), was stable and most important I could adjust OS to my own needs. Nevertheless there was still a lot of work. Initially GNU/Linux was targeted to servers and embeded systems, next desktops and now mobile PC and gadgets like laptops, notebooks, smartphones etc., but last one group is quite new for Linux, therefore some things didn't satisfy me, I wanted improve mobility my laptop especially power consumption.

I have been interesting power management for one year and now I want share my knowledge with free software community.Probably you say that there are many sites about power management and you have right but most of them are incomplete, outdated or contain ideas which nothing improve. I give you methods checked by myself and when I finish, this site will became complete manual which helps you reduce power consumption and get some additional time working on battery.

P.S. On my laptop I profit 1 hour