Toshiba Satellite A105-S4094
From Gentoo Linux Wiki
Please format this article according to the guidelines and Wikification suggestions, then remove this notice {{Wikify}} from the article
| Laptops • TV Tuner Cards • Wireless • Servers • Storage • Other Hardware • Motherboards • Related |
Contents |
[edit] Introduction
This article exists to provide detailed instruction on how to install and configure Gentoo Linux for the Toshiba Satellite A105-S4094 Laptop. Much of this article is derived from this article on the Toshiba Satellite M105 Series. Much thanks goes to its respective author(s).
This article assumes that you are not a first time Gentoo user, that is, this isn't your first install, hence you are not a 'newb'.
[edit] Disclaimer
To be honest, I've been toying with Gentoo Linux on a desktop for several years, but I've never even compiled Gentoo on an INTEL platform...don't laugh. Some of the stuff is the same, but some of it's very different. In short, this article will really help those of you coming from a desktop world like myself, and help configure everything that can be configured.
[edit] Hardware / Specs
To be filled in later
[edit] Initial Installation
For basic installation instructions, please refer to the Gentoo Installation Handbook. The text that follows is only supplimental, not step-by-step.
[edit] Initial Setup
Depending on what install method you use/prefer, the network (ethernet) card may be detected but not activated. Since I prefer command line installs (minimal install cd), running net-setup eth0 code> quickly fixed my ethernet connection to active. By the way, for documentation's sake, the driver for the ethernet card is e100
[edit] Disk partitioning
Your partitioning will vary upon your needs. Just keep in mind that the included hard disk is SATA, you will access it via /dev/sda. Also keep that in mind when compiling your kernel.
[edit] /etc/make.conf configurations
Again, your USE variables will depend upon your needs as will specific CFLAGS. That said, what you should know is that for your CFLAG entry, your processor type is prescott code>. Also, there are some very important USE flags you may want to include, as well as specific flags for modular Xorg configuration. Included is my basic /etc/make.conf from which you can adapt to your needs.
| File: /etc/make.conf |
CFLAGS="-O3 -march=prescott -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j3"
CLEAN_DELAY="1"
########## USE and UNUSED #######################
USE=" -arts -ipv6 -apm
bzip2 mmx samba ieee1394 dvdread dvdr cdr a52 aac theora threads
sse sse2 java sndfile 3dnow directfb browserplugin v4l mozilla
mjpeg v4l2 nsplugin audiofile flac ffmpeg cdparanoia cpudetection
dvd real win32codecs firefox wmf cddb acpi avi "
INPUT_DEVICES="evdev keyboard mouse synaptics"
VIDEO_CARDS="i810 i915 i940 intel vesa"
#################################################
GENTOO_MIRRORS="http://gentoo.mirrors.tds.net/gentoo http://gentoo.netnitco.net "
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
|
At this point, now that all appropriate /etc/make.conf entries have been taken care of, we can move on to our first emerge --sync code>
[edit] Sync n Stuff
Nothing special really goes on here, but whilst some of the documentation defers you from doing a
emerge --update --deep system -va code>
I prefer to do one right after the sync. Go for it, and grab a beer. This whole process will take about an hour or so...chances are you'll have to update GCC and glibc.
[edit] Kernel Internals
Now onto the difficult part, including all the right stuff into the kernel. Grab your specific kernel flavor (gentoo-sources for me) and get on to making that menuconfig. Hopefully you have configured and compiled a kernel before, because this isn't the place to learn how. Heres what to make sure you have included in your kernel (2.6.17-gentoo-r4)
| Code: Configuring your kernel |
|
---Processor type and features [*] Symmetric multi-processing support Subarchitecture Type (PC-compatible) ---> Processor family (Pentium M) ---> [*] HPET Timer Support (2) Maximum number of CPUs (2-255) [*] Multi-core scheduler support Preemption Model (Voluntary Kernel Preemption (Desktop)) ---> [*] Preempt T he Big Kernel Lock (I hear pre-empting on desktop systems in a good thing) [*] Support for hot-pluggable CPUs (EXPERIMENTAL) --- Power Management support [*] Software Suspend (/dev/hda3) Default resume partition ***Change this to your swap partition*** Power management options (ACPI, APM) ---> ACPI (Advanced Configuration and Power Interface) Support ---> [*] ACPI Support [*] Sleep States <*> AC Adapter <*> Battery <*> Button <*> Video < > Generic Hotkey (EXPERIMENTAL) <*> Fan <*> Processor <*> Thermal Zone < > ASUS/Medion Laptop Extras < > IBM ThinkPad Laptop Extras < > Toshiba Laptop Extras (0) Disable ACPI for systems before Jan 1st this year [ ] Debug Statements [*] Power Management Timer Support APM (Advanced Power Management) BIOS Support --->
< > APM (Advanced Power Management) BIOS support
CPU Frequency scaling --->
[*] CPU Frequency scaling
[ ] Enable CPUfreq debugging
<*> CPU frequency translation statistics
[*] CPU frequency translation statistics details
Default CPUFreq governor (performance) --->
--- 'performance' governor
<*> 'powersave' governor
<*> 'userspace' governor for userspace frequency scaling
<*> 'ondemand' cpufreq policy governor
<*> 'conservative' cpufreq governor
--- CPUFreq processor drivers
<*> ACPI Processor P-States driver
< > AMD Mobile K6-2/K6-3 PowerNow!
< > AMD Mobile Athlon/Duron PowerNow!
< > AMD Opteron/Athlon64 PowerNow!
< > Cyrix MediaGX/NatSemi Geode Suspend Modulation
<*> Intel Enhanced SpeedStep
[*] Use ACPI tables to decode valid frequency/voltage pairs
[ ] Built-in tables for Banias CPUs
<*> Intel Speedstep on ICH-M chipsets (ioport interface)
< > Intel SpeedStep on 440BX/ZX/MX chipsets (SMI interface)
< > Intel Pentium 4 clock modulation
< > nVidia nForce2 FSB changing
< > Transmeta LongRun
--- PCCARD (PCMCIA/CardBus) support ---> < > PCCard (PCMCIA/CardBus) support (If you have PCMCIA cards to use, enable this) --- Networking Support <*> Bluetooth subsystem support ---> --- Device Drivers Generic Driver Options --->
<*> Userspace firmware loading support (for our wireless drivers later on)
SCSI device support --->
<*> SCSI disk support (???)
<*> SCSI CDROM suppor (for the CD/DVD WRITER)
<*> SCSI generic support (also needed for cd/dvd writer)
SCSI low-level drivers --->
<*> Serial ATA (SATA) support (For the hard drive)
<*> AHCI SATA support (???)
IEEE 1394 (FireWire) support --->
<*> IEEE 1394 (FireWire) support [elaborate]
Network device support --->
[*] Network device support
Ethernet (10 or 100Mbit) --->
[*] Ethernet (10 or 100Mbit)
[*] EISA, VLB, PCI and on board controllers
<*> Intel(R) PRO/100+ support
Wireless LAN (non-hamradio) --->
[*] Wireless LAN drivers (non-hamradio) & Wireless Extensions
(Do not select anything else!!!!)
Input Device Support --->
<*> Event interface
[*] Mouse --->
Graphics support --->
<*> Support for frame buffer device
[*] Enable firmware EDID
<*> VESA VGA graphics support
VESA driver type (vesafb) --->
<M> Intel 830M/845G/852GM/855GM/865G support (EXPERIMENTAL) [haven't got this working yet]
Sound --->
<*> Sound card support
Advanced Linux Sound Architecture ---> (allow the defaults)
PCI devices --->
<*> Intel HD Audio
MMC/SD Card support --->
<M> MMC support (for that 5 in 1 reader if thats your thing)
--- Cryptographic options ---> (these are for the wireless <*> AES cipher algorithms
<*> AES cipher algorithms (i586)
<*> ARC4 cipher algorithm
<*> Michael MIC keyed digest algorithm
|
That should be just about everything to get you started. Go ahead and make and copy over to /boot as necessary.
[edit] Finishing the install
The last thing you will want to do is install all of your specific programs to your laptop. Not necessarily the x server and gnome, but things like slocate, dhcpcd, cron, coldplug....etc. So go for it. Don't forget about a boot loader. Now reboot, and lets make sure everything came up fine...kernel wise.
[edit] Post-Installation Configuration
[edit] Configuring Xorg for your laptop, and screen resolution
Once we have xorg-x11 code> installed, we can start configuring it. As a window manager, I prefer [fluxbox], its a fast easy install, and it's great for initial testing. Anyways, for configurations sake, follow the initial instructions located [ http://www.gentoo.org/doc/en/xorg-config.xml here]. Specifically, run Xorg -configure code> which will give us a basic xorg.conf code> file that we will edit for our own interests. Said command will leave us with an xorg.conf.new file in our working directory. We can test our configuration changes with X -config /root/xorg.conf.new code>. But like I said, refer to the X setup guide for details.
Without any editing, we should have a basic working config file that should get xorg up and running. We can go ahead and copy our test conf file over to /etc/X11/xorg.conf. Our next task, as you may have noticed is to setup our proper screen resolution (1280x800).
Since there is no native support for vesa mode 1280x800, we need to add a mode line to our Monitor section of of /etc/X11/xorg.conf. Detailed instructions of how to do so can be found at Widescreen wiki.
Included here is my basic /etc/X11/xorg.conf which should get you going, in case your stuck or need some guidance.
| File: /etc/X11/xorg.conf |
Section "ServerLayout"
Identifier "X.org Configured"
Screen 0 "Screen0" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
EndSection
Section "Files"
RgbPath "/usr/share/X11/rgb"
ModulePath "/usr/lib/xorg/modules"
FontPath "/usr/share/fonts/misc"
FontPath "/usr/share/fonts/75dpi"
FontPath "/usr/share/fonts/100dpi"
FontPath "/usr/share/fonts/TTF"
FontPath "/usr/share/fonts/Type1"
EndSection
Section "Module"
Load "extmod"
Load "dbe"
Load "record"
Load "xtrap"
Load "dri"
Load "glx"
Load "freetype"
Load "type1"
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"
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
ModeLine "1280x800" 68.9 1280 1296 1344 1408 800 801 804 816
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 "ShadowFB" # [<bool>]
#Option "DefaultRefresh" # [<bool>]
#Option "ModeSetClearScreen" # [<bool>]
Identifier "Card0"
Driver "vesa"
VendorName "Intel Corporation"
BoardName "Mobile Integrated Graphics Controller"
BusID "PCI:0:2:0"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
SubSection "Display"
Depth 24
Modes "1280x800"
EndSubSection
EndSection
|
An x server restart should show you just how good 1280x800 looks.....yay
[edit] Wireless Networking
Yet another tricky part of our configuration sequence. First things first, we need to clean out some of the source before we plop our new drivers on in. Then we're gonna go ahead and install the necessary drivers and tools.
| Code: Wireless magic |
localhost ~ # /bin/bash /usr/portage/net-wireless/ieee80211/files/remove-old /usr/src/linux localhost ~ # emerge ieee80211 ipw3945 ipw3945d wireless-tools |
Now if your missing something in your kernel, one of the emerges will fail with a warning. Thats why we had to add so much stuff to our config.
Also, if you haven't emerged coldplug code> at this time, you might wanna go ahead and do that, or you can edit modules.autoload or however you prefer....As a side note, make sure that your wireless card is enabled (hey it's on the right side of your laptop). If it isn't, your laptop may freeze [well at least for some distros it has...no seriously it happened to me]
Okay, now theres a lot of documentation on how to get your wireless networking up and running, but for a quick and dirty intro I'll show you how to get it going and make sure that it works.
| Code: Quick and Dirty wireless |
|
Step 1: make sure modules are loaded localhost ~ # lsmod Module Size Used by ohci1394 26800 0 ipw3945 102304 1 ieee80211 25992 1 ipw3945 ieee80211_crypt 4608 1 ieee80211 Step 2: make sure your card is detected
localhost ~ # iwconfig
eth0 no wireless extensions.
lo no wireless extensions.
eth1 unassociated ESSID:off/any
Mode:Managed Frequency=nan kHz Access Point: Not-Associated
Bit Rate:0 kb/s Tx-Power:16 dBm
Retry limit:15 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
Link Quality:0 Signal level:0 Noise level:0
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
Step 3: Now that we know our wireless card is eth1, lets go ahead and scan for some networks or aps (addresses removed obviously)
localhost ~ # iwlist eth1 scanning
eth1 Scan completed :
Cell 01 - Address: XX:XX:XX:XX:XX:XX
ESSID:"SR21"
Protocol:IEEE 802.11g
Mode:Master
Channel:6
Encryption key:on
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 6 Mb/s; 9 Mb/s
11 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s
48 Mb/s; 54 Mb/s
Quality=79/100 Signal level=-55 dBm Noise level=-55 dBm
IE: WPA Version 1
Group Cipher : TKIP
Pairwise Ciphers (1) : TKIP
Authentication Suites (1) : PSK
Extra: Last beacon: 230ms ago
Cell 02 - Address: XX:XX:XX:XX:XX:XX
ESSID:"BabyVersusRhino"
Protocol:IEEE 802.11bg
Mode:Master
Channel:11
Encryption key:on
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 9 Mb/s; 11 Mb/s
6 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s
48 Mb/s; 54 Mb/s
Quality=55/100 Signal level=-75 dBm Noise level=-75 dBm
Extra: Last beacon: 50ms ago
Step 4: Gather data about the specific network you would like to connect to and specify flags to iwconfig (private info filtered out.... localhost ~ # iwconfig eth1 essid any mode Managed channel 11 rate auto key XXXXXXXXXX Step 5: Verify settings, bring up wireless interface.
localhost ~ # iwconfig eth1
eth1 IEEE 802.11g ESSID:"BabyVersusRhino"
Mode:Managed Frequency:2.462 GHz Access Point:XX:XX:XX:XX:XX:XX
Bit Rate:24 Mb/s Tx-Power:14 dBm
Retry limit:15 RTS thr:off Fragment thr:off
Encryption key:XXXXXXXXXXXX Security mode:open
Power Management:off
Link Quality=72/100 Signal level=-59 dBm Noise level=-60 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:110 Missed beacon:0
localhost ~ # ifconfig eth1 up && ifconfig eth1
eth1 Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XX
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:102 errors:0 dropped:110 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:43 (43.0 b)
Interrupt:18 Base address:0xc000 Memory:da000000-da000fff
--- the interface is active, but we don't have an ip address or anything so lets grab one via dhcpcd ---
localhost ~ # dhcpcd eth1
localhost ~ # ifconfig
eth1 Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XX
inet addr:192.168.0.12 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1
RX packets:415 errors:0 dropped:110 overruns:0 frame:0
TX packets:7 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:594 (594.0 b) TX bytes:1007 (1007.0 b)
Interrupt:18 Base address:0xc000 Memory:da000000-da000fff
--- okay so now we got an ip address, try pinging a site or opening a browser, it should work. yay us
Now that we have verified that we can connect to a wireless network, we can do the wireless dance. Of course you may want to setup something so that it works right on boot, check out the [gentoo wireless network setup] for more info. |
[edit] Battery, ACPI, and power saving etc
How goes it?
[edit] Firewire
Browse categories > Gentoo Linux Wiki > Wiki maintenance > Cleanup
Browse categories > Gentoo Linux Wiki > Wiki maintenance > Incomplete
Browse categories > Gentoo Linux Wiki > Wiki maintenance > Wikify
Browse categories > Hardware > Laptop
Browse categories > Hardware > Laptop
Browse categories > Hardware > Manufacturer > Toshiba
