Toshiba Satellite L300-214
This page covers a specific configuration needed to run Gentoo on your Toshiba Satellite L300-214, Model No.: PSLB8E. In this guide, we will be using the latest stable kernel release 2.6.29-r4 from gentoo-sources. All stable kernel releases from 2.6.29 and above have an issue with Unloading ALSA Modules on rebooting or halting (turning off) the system. However, this issue has been fixed. Please check the ALSA section of this guide to see how.
Contents |
[edit] Hardware Specifications
- Intel® Pentium® Processor T3400,2,16 GHz.
- Intel® GL40/GM45 Chipset.
- Mobile Intel® GMA 4500M Graphic Card.
- Intel HD Audio 24-bit Stereo.
- WLAN 802.11b/g.
- V.90 modem 56k.
- Fast Ethernet LAN 10/100.
[edit] Configuration
[edit] Kernel
We will add Framebuffer support to our Graphics Adapter.
| Linux Kernel Configuration: Custom Kernel Configuration Sample |
Processor type and features --->
Processor family (Core 2/newer Xeon) --->
(X) Core 2/newer Xeon
Power management and ACPI options --->
[*] ACPI (Advanced Configuration and Power Interface) Support --->
[*] Deprecated /proc/acpi files
[*] Deprecated power /proc/acpi directories
[*] Future power /sys interface
[*] Deprecated /proc/acpi/event support
<*> AC Adapter
<*> Battery
<*> Button
<*> Fan
-*- Dock
<*> Processor
<*> Thermal Zone
CPU Frequency scaling --->
Default CPUFreq governor (performance) --->
(X) performance
-*- 'performance' governor
<*> 'userspace' governor for userspace frequency scaling
<*> 'ondemand' cpufreq policy governor
<*> 'conservative' cpufreq governor
*** CPUFreq processor drivers ***
<*> ACPI Processor P-States driver
*** shared options ***
[*] Hibernation (aka 'suspend to disk')
(/dev/sda[x]) Default resume partition // Please change /dev/sda[x] to your correct SWAP partition.
Device Drivers --->
SCSI device support --->
-*- SCSI device support
[*] legacy /proc/scsi/ support
*** SCSI support type (disk, tape, CD-ROM) ***
<*> SCSI disk support
<*> SCSI CDROM support
[*] Enable vendor-specific extensions (for SCSI CDROM)
<*> SCSI generic support
[*] Verbose SCSI error reporting (kernel size +=12K)
<*> Serial ATA (prod) and Parallel ATA (experimental) drivers --->
[*] ATA ACPI Support
[*] SATA Port Multiplier support
<*> AHCI SATA support
[*] ATA SFF support
<*> ACPI firmware driver for PATA
<*> Generic ATA support
[*] Fusion MPT device support --->
<*> I2O device support --->
[*] Enable LCT notification (NEW)
[*] Enable Adaptec extensions (NEW)
[*] Enable 64-bit DMA (NEW)
<*> I2O Configuration support
[*] Enable ioctls (OBSOLETE) (NEW)
<*> I2O Bus Adapter OSM
<*> I2O Block OSM
<*> I2O SCSI OSM
<*> I2O /proc support
[*] Network device support --->
[*] Ethernet (1000 Mbit) --->
<*> Realtek 8169 gigabit ethernet support
Wireless LAN --->
[*] Wireless LAN (IEEE 802.11)
<*> Atheros 5xxx wireless cards support
-*- I2C support --->
[*] Autoselect pertinent helper modules
I2C Hardware Bus support --->
<*> Intel 82801 (ICH)
Multimedia devices --->
[*] Video capture adapters --->
[*] V4L USB devices --->
<M> USB Video Class (UVC)
[*] UVC input events device support
Graphics support --->
<*> Support for frame buffer devices --->
[*] Enable firmware EDID
<*> Userspace VESA VGA graphics support
[*] VESA VGA graphics support
<*> Intel 830M/845G/852GM/855GM/865G/915G/945G/945GM/965G/965GM
[*] DDC/I2C for Intel framebuffer support
Console display driver support --->
-*- VGA text console
[*] Enable Scrollback Buffer in System RAM
(64) Scrollback Buffer Size (in KB)
<*> Framebuffer Console support
[*] Map the console to the primary display device
[*] Framebuffer Console Rotation
<*> Sound card support --->
<M> Advanced Linux Sound Architecture --->
<M> Sequencer support
< > Sequencer dummy client
<M> OSS Mixer API
<M> OSS PCM (digital audio) API
[*] OSS PCM (digital audio) API - Include plugin system
[*] OSS Sequencer API
[ ] Dynamic device file minor numbers
[*] Support old ALSA API
[*] Generic sound devices --->
<M> Generic MPU-401 UART driver
[*] PCI sound devices --->
<M> Intel HD Audio
[*] Build hwdep interface for HD-audio driver
[ ] Support digital beep via input layer
[*] Build Realtek HD-audio codec support
[*] Build Analog Device HD-audio codec support
[*] Build IDT/Sigmatel HD-audio codec support
[*] Build VIA HD-audio codec support
[*] Build ATI HDMI HD-audio codec support
[*] Build NVIDIA HDMI HD-audio codec support
[*] Build Conexant HD-audio codec support
[*] Build C-Media HD-audio codec support
[*] Build Silicon Labs 3054 HD-modem codec support
[*] Enable generic HD-audio codec parser
[*] Aggressive power-saving on HD-audio
(0) Default time-out for HD-audio power-save mode
<*> MMC/SD/SDIO card support --->
File systems --->
<*> Second extended fs support
[*] Ext2 extended attributes
[*] Ext2 POSIX Access Control Lists
[*] Ext2 Security Labels
<*> Ext3 journalling file system support
[*] Ext3 extended attributes
[*] Ext3 POSIX Access Control Lists
[*] Ext3 Security Labels
<*> The Extended 4 (ext4) filesystem
[*] Enable ext4dev compatibility
[*] Ext4 extended attributes
<M> FUSE (Filesystem in Userspace) support
DOS/FAT/NT Filesystems --->
<*> MSDOS fs support
<*> VFAT (Windows-95) fs support
(437) Default codepage for FAT
(iso8859-1) Default iocharset for FAT
<*> NTFS file system support
[*] NTFS write support
[*] Network File Systems --->
<*> NFS client support
[*] NFS client support for NFS version 3
[*] NFS client support for the NFSv3 ACL protocol extension
[*] NFS client support for NFS version 4 (EXPERIMENTAL)
[*] Root file system on NFS
<M> NFS server support
[*] NFS server support for NFS version 3
-*- Secure RPC: Kerberos V mechanism (EXPERIMENTAL)
<M> CIFS support (advanced network filesystem, SMBFS successor)
[*] CIFS extended attributes
[*] CIFS POSIX Extensions
|
[edit] Grub
If you are building a customized kernel manually, you can use the same configuration as here:
| Code: /boot/grub/grub.conf |
# This is a sample grub.conf for use with Genkernel, per the Gentoo handbook # http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=1&chap=10#doc_chap2 # If you are not using Genkernel and you need help creating this file, you # should consult the handbook. Alternatively, consult the grub.conf.sample that # is included with the Grub documentation. default 0 timeout 30 splashimage=(hd0,0)/boot/grub/splash.xpm.gz title Gentoo Linux 2.6.29-r4 root (hd0,0) kernel /boot/kernel-2.6.29-gentoo-r4 root=/dev/sdaX vga=0x315 video=vesafb:mtrr:3,ywrap acpi_osi="Linux" title Gentoo Linux 2.6.29-r4 (rescue) root (hd0,0) kernel /boot/kernel-2.6.29-gentoo-r4 root=/dev/sdaX init=/bin/bb # vim:ft=conf: |
Note: acpi_osi="Linux" is very important, you need this kernel option in order to make your fan function properly. Even if you are building through genkernel you still have to add it.
[edit] make.conf
| Code: /etc/make.conf |
# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /etc/make.conf.example for a more detailed example.
CFLAGS="-march=nocona -O2 -pipe"
CXXFLAGS="${CFLAGS}"
LINGUAS="en"
# WARNING: Changing your CHOST is not something that should be done lightly.
# Please consult http://www.gentoo.org/doc/en/change-chost.xml before changing.
CHOST="x86_64-pc-linux-gnu"
# These are the USE flags that were used in addition to what is provided by the
# profile used for building.
INPUT_DEVICES="keyboard mouse synaptics"
VIDEO_CARDS="intel"
USE="X acpi alsa dbus hal avahi"
MAKEOPTS="-j3"
GENTOO_MIRRORS="http://your_preferred_mirror_here.com"
SYNC="rsync://your_preferred_mirror_here.com"
PORTAGE_RSYNC_RETRIES="3"
|
[edit] Graphics Card
00:02.0 VGA compatible controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07)
Install this driver x11-drivers/xf86-video-intel for your VGA.
[edit] Xorg.conf
Your xorg.conf configuration can look like this:
| Code: /etc/X11/xorg.conf |
Section "ServerLayout"
Identifier "X.org Configured"
Screen 0 "Screen0" 0 0
# InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
EndSection
Section "Files"
ModulePath "/usr/lib64/xorg/modules"
FontPath "/usr/share/fonts/misc/"
FontPath "/usr/share/fonts/TTF/"
FontPath "/usr/share/fonts/OTF"
FontPath "/usr/share/fonts/Type1/"
FontPath "/usr/share/fonts/100dpi/"
FontPath "/usr/share/fonts/75dpi/"
EndSection
Section "Module"
Load "dbe"
Load "dri"
Load "glx"
Load "extmod"
Load "record"
Load "xtrap"
EndSection
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
EndSection
#Section "InputDevice"
# Identifier "Mouse0"
# Driver "mouse"
# Option "Protocol" "auto"
# Option "Device" "/dev/input/mice"
# Option "ZAxisMapping" "4 5 6 7"
#EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
EndSection
Section "Device"
### Available Driver options are:-
### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
### [arg]: arg optional
#Option "NoAccel" # [<bool>]
#Option "SWcursor" # [<bool>]
#Option "ColorKey" # <i>
#Option "CacheLines" # <i>
#Option "Dac6Bit" # [<bool>]
#Option "DRI" # [<bool>]
#Option "NoDDC" # [<bool>]
#Option "ShowCache" # [<bool>]
#Option "XvMCSurfaces" # <i>
#Option "PageFlip" # [<bool>]
Identifier "Card0"
Driver "intel"
VendorName "Intel Corporation"
BoardName "Mobile 4 Series Chipset Integrated Graphics Controller"
BusID "PCI:0:2:0"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
SubSection "Display"
Viewport 0 0
Depth 1
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 4
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 8
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 15
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 16
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection
|
[edit] Touchpad
This is how we configure our Touchpad with HAL in /etc/hal/fdi/policy/11-x11-synaptics.fdi
| Code: HAL |
<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="info.product" contains="Synaptics TouchPad">
<merge key="input.x11_driver" type="string">synaptics</merge>
<merge key="input.x11_options.AlwaysCore" type="string">true</merge>
<merge key="input.x11_options.VertEdgeScroll" type="string">true</merge>
<merge key="input.x11_options.HorizEdgeScroll" type="string">true</merge>
<merge key="input.x11_options.TapButton1" type="string">1</merge>
<merge key="input.x11_options.TapButton2" type="string">2</merge>
<merge key="input.x11_options.TapButton3" type="string">3</merge>
</match>
</device>
</deviceinfo>
|
[edit] ALSA Driver
00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 03)
You need to install here the following packages:
Then configure your sound levels:
The only current known issue with the new kernel releases after 2.6.29 , is that forcing ALSA modules unload is not necessary anymore, so forcing unload will create issues with the kernel. To fix the issue, we need to set UNLOAD_ON_STOP variable to 'no' in ALSA's configuration.
| Code: alsasound |
vim /etc/conf.d/alsasound UNLOAD_ON_STOP="no" |
[edit] Wireless Lan
03:00.0 Ethernet controller: Atheros Communications Inc. AR242x 802.11abg Wireless PCI Express Adapter (rev 01)
Please refer to the Atheros 5xxx article.
[edit] Webcam
Bus 001 Device 002: ID 04f2:b070 Chicony Electronics Co., Ltd
We have installed the correct driver in our kernel, now it's time to add the v4l2 gstreamer to make our webcam working. All you need to do is to install media-plugins/gst-plugins-v4l2