Search:  
Gentoo Wiki

Toshiba_Satellite_R20

This article is still a Stub. You can help Gentoo-Wiki by expanding it.

Contents

Introduction

This is a reference/guide for installing Gentoo on a Toshiba Satellite R20/R25 Tablet. The R20 is a customized version of R25 which on the contrary comes in one configuration.

My Configuration

Overall

I have to admit, that this computer is rather sweet, with its wide screen and tablet features. But there is one thing that disappoints me. It is the battery life and the noisy fan that keeps spinning all the time. I don't know if that is a similar problem to what was reported on the Tecra M4, but I certainly think it is unnecessary to have the fan spinning if the CPU's temperature is about 35 Celsius. I just recently helped my friend with Fedora on a Toshiba M100 laptop (also Core Duo (1,66 GHz), 14,1 WXGA etc.) - it is not a tablet but with similar hardware except for the BIOS (this one has a Phoenix BIOS). The M100 doesn't waste energy on the fan, it is quieter and with the same battery capacity it works for around 4 hours, whereas my R20 no more than 2 hours. On top of that on the M100 Suspend2disk and Suspend2ram works perfectly on Fedora Core 6.

Hardware

lscpi -v output:

Code: lscpi
00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS/940GML and 945GT Express Memory Controller Hub (rev 03)
        Subsystem: Toshiba America Info Systems Unknown device 0001
        Flags: bus master, fast devsel, latency 0
        Capabilities: [e0] Vendor Specific Information

00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03) (prog-if 00 [VGA])
        Subsystem: Toshiba America Info Systems Unknown device 0007
        Flags: bus master, fast devsel, latency 0, IRQ 18
        Memory at ffd80000 (32-bit, non-prefetchable) [size=512K]
        I/O ports at cff8 [size=8]
        Memory at e0000000 (32-bit, prefetchable) [size=256M]
        Memory at ffd40000 (32-bit, non-prefetchable) [size=256K]
        Capabilities: [90] Message Signalled Interrupts: 64bit- Queue=0/0 Enable-
        Capabilities: [d0] Power Management version 2

00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)
        Subsystem: Toshiba America Info Systems Unknown device 0007
        Flags: bus master, fast devsel, latency 0
        Memory at ffc80000 (32-bit, non-prefetchable) [size=512K]
        Capabilities: [d0] Power Management version 2

00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)
        Subsystem: Toshiba America Info Systems Unknown device 0001
        Flags: bus master, fast devsel, latency 0, IRQ 23
        Memory at ffd3c000 (64-bit, non-prefetchable) [size=16K]
        Capabilities: [50] Power Management version 2
        Capabilities: [60] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-
        Capabilities: [70] Express Unknown type IRQ 0

00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02) (prog-if 00 [Normal decode])
        Flags: bus master, fast devsel, latency 0
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
        Capabilities: [40] Express Root Port (Slot-) IRQ 0
        Capabilities: [80] Message Signalled Interrupts: 64bit- Queue=0/0 Enable-
        Capabilities: [90] #0d [0000]
        Capabilities: [a0] Power Management version 2

00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02) (prog-if 00 [Normal decode])
        Flags: bus master, fast devsel, latency 0
        Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
        Memory behind bridge: ffa00000-ffafffff
        Capabilities: [40] Express Root Port (Slot-) IRQ 0
        Capabilities: [80] Message Signalled Interrupts: 64bit- Queue=0/0 Enable-
        Capabilities: [90] #0d [0000]
        Capabilities: [a0] Power Management version 2

00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #1 (rev 02) (prog-if 00 [UHCI])
        Subsystem: Toshiba America Info Systems Unknown device 0001
        Flags: bus master, medium devsel, latency 0, IRQ 21
        I/O ports at cf80 [size=32]

00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #2 (rev 02) (prog-if 00 [UHCI])
        Subsystem: Toshiba America Info Systems Unknown device 0001
        Flags: bus master, medium devsel, latency 0, IRQ 20
        I/O ports at cf60 [size=32]

00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #3 (rev 02) (prog-if 00 [UHCI])
        Subsystem: Toshiba America Info Systems Unknown device 0001
        Flags: bus master, medium devsel, latency 0, IRQ 22
        I/O ports at cf40 [size=32]

00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #4 (rev 02) (prog-if 00 [UHCI])
        Subsystem: Toshiba America Info Systems Unknown device 0001
        Flags: bus master, medium devsel, latency 0, IRQ 18
        I/O ports at cf20 [size=32]

00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02) (prog-if 20 [EHCI])
        Subsystem: Toshiba America Info Systems Unknown device 0001
        Flags: bus master, medium devsel, latency 0, IRQ 21
        Memory at ffd3bc00 (32-bit, non-prefetchable) [size=1K]
        Capabilities: [50] Power Management version 2
        Capabilities: [58] Debug port

00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2) (prog-if 01 [Subtractive decode])
        Flags: bus master, fast devsel, latency 0
        Bus: primary=00, secondary=03, subordinate=07, sec-latency=32
        I/O behind bridge: 0000b000-0000bfff
        Memory behind bridge: ff900000-ff9fffff
        Prefetchable memory behind bridge: 0000000050000000-0000000051f00000
        Capabilities: [50] #0d [0000]

00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02)
        Subsystem: Toshiba America Info Systems Unknown device 0001
        Flags: bus master, medium devsel, latency 0
        Capabilities: [e0] Vendor Specific Information

00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controller IDE (rev 02) (prog-if 80 [Master])
        Subsystem: Toshiba America Info Systems Unknown device 0001
        Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 20
        I/O ports at <ignored>
        I/O ports at <ignored>
        I/O ports at <ignored>
        I/O ports at <ignored>
        I/O ports at afa0 [size=16]
        Capabilities: [70] Power Management version 2

02:00.0 Ethernet controller: Atheros Communications, Inc. Unknown device 001c (rev 01)
        Subsystem: Askey Computer Corp. Unknown device 7096
        Flags: bus master, fast devsel, latency 0, IRQ 17
        Memory at ffaf0000 (64-bit, non-prefetchable) [size=64K]
        Capabilities: [40] Power Management version 2
        Capabilities: [50] Message Signalled Interrupts: 64bit- Queue=0/0 Enable-
        Capabilities: [60] Express Legacy Endpoint IRQ 0
        Capabilities: [90] MSI-X: Enable- Mask- TabSize=1

03:08.0 Ethernet controller: Intel Corporation Intel(R) PRO/100 VE Network Connection (rev 02)
        Subsystem: Toshiba America Info Systems Unknown device 0001
        Flags: bus master, medium devsel, latency 64, IRQ 16
        Memory at ff9ff000 (32-bit, non-prefetchable) [size=4K]
        I/O ports at bf40 [size=64]
        Capabilities: [dc] Power Management version 2

03:0b.0 CardBus bridge: Texas Instruments Unknown device 8039
        Subsystem: Toshiba America Info Systems Unknown device 0001
        Flags: bus master, medium devsel, latency 168, IRQ 19
        Memory at ff900000 (32-bit, non-prefetchable) [size=4K]
        Bus: primary=03, secondary=04, subordinate=07, sec-latency=176
        Memory window 0: 50000000-51fff000 (prefetchable)
        Memory window 1: 52000000-53fff000
        I/O window 0: 0000b000-0000b0ff
        I/O window 1: 0000b400-0000b4ff
        16-bit legacy interface ports at 0001

03:0b.1 FireWire (IEEE 1394): Texas Instruments Unknown device 803a (prog-if 10 [OHCI])
        Subsystem: Toshiba America Info Systems Unknown device 0001
        Flags: bus master, medium devsel, latency 64, IRQ 16
        Memory at ff9fe800 (32-bit, non-prefetchable) [size=2K]
        Memory at ff9f8000 (32-bit, non-prefetchable) [size=16K]
        Capabilities: [44] Power Management version 2

03:0b.2 Mass storage controller: Texas Instruments 5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD)
        Subsystem: Toshiba America Info Systems Unknown device 0001
        Flags: bus master, medium devsel, latency 64, IRQ 21
        Memory at ff9fd000 (32-bit, non-prefetchable) [size=4K]
        Capabilities: [44] Power Management version 2

03:0b.3 Class 0805: Texas Instruments Unknown device 803c (prog-if 01)
        Subsystem: Toshiba America Info Systems Unknown device 0001
        Flags: bus master, medium devsel, latency 64, IRQ 21
        Memory at ff9fe700 (32-bit, non-prefetchable) [size=256]
        Capabilities: [80] Power Management version 2

Kernel

I use gentoo sources, 2.6.19-gentoo-r4 at the moment, but I messed up a lot with the configuration. I have also added a patch which you can find here: [1]. This patch allows you to turn the bluetooth on and off, as well as gives access to many extra features, which you may access with the toshset utility.

What works for me is the following kernel config: Kernl config

Things that just work

Things that need configuring

CPU Frequency

Needs the following kernel parameters (could be modules as well)

Code: Kernel parameters
CONFIG_X86_ACPI_CPUFREQ=y
CONFIG_X86_SPEEDSTEP_CENTRINO=y
CONFIG_X86_SPEEDSTEP_CENTRINO_ACPI=y
CONFIG_X86_SPEEDSTEP_ICH=y

Graphics

See this guide.

Wacom Stylus

I followed the instruction at: Toshiba Tecra M4 and [2]

To have on the fly rotation I installed the latest linuxwacom 0.7.6-4.

My screen rotating script looks like that:

File: screen_rotate.sh
#!/bin/sh
orientation=`/usr/bin/xrandr --query | /bin/grep "Current rotation" | /usr/bin/awk '{print $4}'`
if [ "$orientation" == "normal" ]; then
/usr/bin/xrandr --orientation right
/usr/bin/xsetwacom set stylus Rotate CW
/usr/bin/xsetwacom set cursor Rotate CW
/usr/bin/xsetwacom set eraser Rotate CW
/usr/bin/xmodmap -e "keycode 11 = KP_Left"
/usr/bin/xmodmap -e "keycode 13 = KP_Up"
/usr/bin/xmodmap -e "keycode 10 = KP_Right"
/usr/bin/xmodmap -e "keycode 12 = KP_Down"
/usr/bin/xmodmap -e "keycode 14 = KP_Enter"
else
/usr/bin/xrandr --orientation normal
/usr/bin/xsetwacom set stylus Rotate NONE
/usr/bin/xsetwacom set cursor Rotate NONE
/usr/bin/xsetwacom set eraser Rotate NONE
/usr/bin/xmodmap -e "keycode 11 = 2 at at"
/usr/bin/xmodmap -e "keycode 13 = 4 dollar dollar"
/usr/bin/xmodmap -e "keycode 10 = 1 exclam"
/usr/bin/xmodmap -e "keycode 12 = 3 numbersign"
/usr/bin/xmodmap -e "keycode 14 = 5 percent onehalf threeeighths onehalf threeeighths"
fi

and here you have my xorg.conf with Wacom Stylus and ALPS/Glidepoint touchpad.

I still haven't gotten the eraser to work even in Gimp and Inkscape. When I try, it just works the same way as the stylus.

Fn keys

To enable the FN keys you need the toshiba_acpi module loaded (remember to unload the standard toshiba module if using the patch described here Kernel You have to install the fnfxd module ([3]). Fortunately it is in the portage, so just do:

emerge fnfx


Then configure the fnfxd.conf and .fnfxrc files Here you have mine:


File: /etc/fnfx/fnfxd.conf
# FnFX daemon (fnfxd) configuration file
#
# Author: Timo Hoenig <thoenig@nouse.net>
# Copyright (c) 2003 Timo Hoenig <thoenig@nouse.net>
#                    All rights reserved
#
# FnFX project page: http://fnfx.sf.net
#
#

[actions]
#action(key="Fn-Escape";command="mute")
action(key="Fn-F5";command="toggle video")
action(key="Fn-F6";command="brightness down")
action(key="Fn-F7";command="brightness up")
#action(key="Fn-F8";command="toggle bluetooth")
action(key="Fn-F1";command="toggle fan")
#action(key="Fn-1";command="volume down")
#action(key="Fn-2";command="volume up")

action(key="Fn-F2";command="toggle cpu")
#action(key="Fn-F3";command="suspend to ram")
#action(key="Fn-F4";command="suspend to disk")

[mixer]
#mixer(device="/dev/mixer")

[defaults]
defaults(brightness="5")
defaults(fan="off")


File: $HOME/.fnfxrc
# FnFX daemon (fnfxd) configuration file
#
# Author: Timo Hoenig <thoenig@nouse.net>
# Copyright (c) 2003 Timo Hoenig <thoenig@nouse.net>
#                    All rights reserved
#
# FnFX project page: http://fnfx.sf.net
#
# Modify and copy this example file to your home directory.
#
# !! Don't forget to rename it to ".fnfxrc" !!
#
# Something like that: /home/user/.fnfxrc
#
# All available Fn-Keys can be obtained in the Documentation and/or from /etc/fnfx/keymap
#

[actions]

action(key="Fn-F3";command="sudo konsole")
action(key="Fn-F4";command="konsole")
action(key="Fn-q";command="krusader")
action(key="Fn-F6";command="brightness down")
action(key="Fn-F7";command="brightness up")
action(key="Fn-F8";command="/home/pol/bin/bluetooth.sh")

action(key="Hotbutton (E-Button)";command="evolution")
action(key="Hotbutton (I-Button)";command="firefox")


action(key="Hotbutton (Media)";command="/usr/bin/amarok")
action(key="Hotbutton (Stop)";command="dcop amarok player stop")
action(key="Hotbutton (Skip Track Back)";command="dcop amarok player prev")
action(key="Hotbutton (Skip Track Forward)";command="dcop amarok player next")
action(key="Hotbutton (Play/Pause)";command="dcop amarok player playPause")
action(key="Hotbutton (TV-Button)";command="konsole")

As you may have noticed I use the media keys to control Amarok, unfortunately the email and webbrowser buttons don't work at the moment, although they have at some point worked


Fingerprint Reader

See this guide.

Suspend 2 disk

It works. I've tried 3 different implementations. At the moment I'am using the regular suspend. It sometimes hangs but it is ok. The suspend2 from suspend2-sources has sometimes problems with resuming the tablet features. After resuming for instance, I wasn't able to rotate my screen anymore. Today I played around with the s2disk utility from [4]. I noticed that OpenSuSE uses that and it works stable there. The latest genkernel has a patch to enable the resume utility in the initrd. But in Gentoo my system hangs just after resuming.

No matter what implementation you would use, remember to start the 915resolution utility before returning to Xorg after resume, otherwise you won't get the right resolution.

Since I'am using the hibernate-script

emerge hibernate-script

I put that into my /etc/hibernate/commons.conf file:

File: $HOME/.fnfxrc
# Configuration options common for suspending to disk or RAM.
# Options are not case sensitive.
#
# See hibernate.conf(5) for help on the configuration items.

##############################################################################
### Some global settings
##############################################################################

Verbosity 1
LogFile /var/log/hibernate.log
LogVerbosity 5
# LogTimestamp yes
AlwaysForce yes
# AlwaysKill yes
HibernateVT 9
Distribution gentoo
### clock
SaveClock restore-only

### devices
# IncompatibleDevices /dev/dsp /dev/video*

### diskcache
# DisableWriteCacheOn /dev/hda

### grub
ChangeGrubMenu yes
# GrubMenuFile /boot/grub/menu.lst
# AlternateGrubMenuFile /boot/grub/menu-suspended.lst
# BackupGrubMenuFile /boot/grub/menu.lst.hibernate.bak

### hardware_tweaks
# IbmAcpi yes
# Runi855resolution yes
FullSpeedCPU yes


### modules
#UnloadModules tifm_7xx1 tifm_core sdhci mmc_core ath_cpi ath_rate_sample ath_hal wlan_scan_sta wlan toshiba
UnloadModules sdhci mmc_core
#UnloadAllModules yes
UnloadBlacklistedModules yes
LoadModules auto
# LoadModulesFromFile /etc/modules

### modules-gentoo
#GentooModulesAutoload yes

### network
DownInterfaces eth0
UpInterfaces auto

### services
RestartServices 915resolution
#net.eth1
# StopServices alsasound
# StartServices aumix

### xhacks
SwitchToTextMode yes


Things that don't work

Suspend 2 RAM

This is a great disappointment for me. I've spent many many hours without any success. It would be very useful, especially since this machine isn't very economic as far as the battery is concerned. I tried the hibernate-ram script, I tried s2ram. I experimented with these boot parameters:

acpi_sleep=s3_bios,s3_mode

I tried various setting on different kernels in Gentoo, OpenSuse 10.2 and Fedora Core 6. It never even suspends. The screen goes black and the laptop just hangs, the Caps Lock doesn't work, nor can you work via SSH and the CPU Fan and all the blue control LEDs keep working. I'd be very happy to know if someone succeeded with Suspend 2 RAM on this or similar machine.

Retrieved from "http://www.gentoo-wiki.info/Toshiba_Satellite_R20"

Last modified: Wed, 10 Sep 2008 04:39:00 +0000 Hits: 9,424