HARDWARE Toshiba Satellite M40X
From Gentoo Linux Wiki
| Laptops • TV Tuner Cards • Wireless • Servers • Storage • Other Hardware • Motherboards • Related |
Contents |
[edit] First install
[edit] Hardware description
To begin, let's see lspci output (after complete installation and configuration) :
| Code: Output of lspci |
0000:00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 03) 0000:00:01.0 PCI bridge: Intel Corporation Mobile 915GM/PM Express PCI Express Root Port (rev 03) 0000:00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 04) 0000:00:1c.1 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 2 (rev 04) 0000:00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 04) 0000:00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 04) 0000:00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 04) 0000:00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 04) 0000:00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 04) 0000:00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d4) 0000:00:1e.2 Multimedia audio controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (rev 04) 0000:00:1e.3 Modem: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller (rev 04) 0000:00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 04) 0000:00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 04) 0000:01:00.0 VGA compatible controller: ATI Technologies Inc: Unknown device 5462 0000:02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8036 Fast Ethernet Controller (rev 10) 0000:06:04.0 Network controller: Intel Corporation PRO/Wireless 2200BG (rev 05) 0000:06:06.0 CardBus bridge: Texas Instruments PCIxx21/x515 Cardbus Controller 0000:06:06.2 FireWire (IEEE 1394): Texas Instruments OHCI Compliant IEEE 1394 Host Controller 0000:06:06.3 Mass storage controller: Texas Instruments PCIxx21 Integrated FlashMedia Controller |
I installed with Gentoo LiveCD 2005.1 and kernel 2.6.12; for reasons explained later (ACPI section), boot CD with acpi=off (or noacpi option), if you want network working during installation. If you're using packages from packages CD, you don't need to do that.
[edit] Compiling kernel
Important things: Do not compile with IEEE1394 built-in support (or only modules).
Interesting options are:
| Linux Kernel Configuration: IEEE 1394 (FireWire) |
Device Drivers --->
IEEE 1394 (FireWire) support --->
<M> IEEE 1394 (FireWire) support
<M> OHCI-1394 support
|
It would prevent you from having ACPI working (it's a choice).
If you want SCSI (SATA support) for your HD, do not chose IDE support but SATA (in kernel 2.6.12, the new libata has SCSI built-in) :
| Linux Kernel Configuration: SATA |
Device Drivers --->
ATA/ATAPI/MFM/RLL support --->
<M> Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support
<M> Include IDE/ATA-2 DISK support
<M> Include IDE/ATAPI CDROM support
SCSI device support --->
<*> SCSI device support
[*] legacy /proc/scsi/ support
<*> SCSI disk support
<*> SCSI generic support
SCSI low-level drivers --->
[*] Serial ATA (SATA) support
<*> Intel PIIX/ICH SATA support
|
(for DVD-RAM/CD please refer to the SATA DVD/CD section)
To benefit from 1024 Mo RAM and Pentium-M arch :
| Linux Kernel Configuration: High Memory Support |
Processor type and features --->
High Memory Support (4GB) --->
(X) 4GB
Processor family (Pentium M) --->
|
[edit] ACPI
There are a lot of ACPI troubles on new Toshiba laptops. In my mind, ACPI on a laptop is one of the things I care. For the moment, I only succeded in having a partial support, as shown below :
| Linux Kernel Configuration: ACPI |
[*] Power Management support
ACPI (Advanced Configuration and Power Interface) Support --->
[*] ACPI Support
<*> AC Adapter
<*> Battery
< > Button
<*> Fan
<*> Processor
<*> Thermal Zone
|
ACPI-0272: *** Error: Thread 1F7C cannot release Mutex [MUT1] acquired by thread 19D0 ACPI-1138: *** Error: Method execution failed [\_SB_.RDEC] (Node c1849ca0), AE_AML_NOT_OWNER ACPI-1138: *** Error: Method execution failed [\_SB_.BAT1._BST] (Node c1841ba0), AE_AML_NOT_OWNER
I didn't get further in ACPI troubles resolution, but kernel is now pretty stable.
irqpoll pci=usepirqmaskor simply:
acpi=off
[edit] Network
[edit] ipw2200B/G
Once you have ACPI stable (or no ACPI at all), it is easy to have networking support;
emerge -av ieee80211 ipw2200
If your WLAN wouldn't work:
linux ~ # dmesg |grep ipw2200 ipw2200: Intel(R) PRO/Wireless 2200/2915 Network Driver, 1.1.3mprq ipw2200: Copyright(c) 2003-2006 Intel Corporation ipw2200: Detected Intel PRO/Wireless 2200BG Network Connection ipw2200: Radio Frequency Kill Switch is On: ipw2200: Detected geography ZZM (11 802.11bg channels, 0 802.11a channels) ipw2200: Failed to send TX_POWER: Command timed out. ipw2200: Failed to send TX_POWER: Command timed out. ipw2200: Failed to send TX_POWER: Command timed out. ipw2200: Failed to send TX_POWER: Command timed out. ipw2200: Failed to send TX_POWER: Command timed out. ipw2200: Failed to register device after 5 attempts
try booting with irqpoll option
Refer to one of the numerous howto's on this topic.
[edit] Marvel Yukon Ethernet Gigabit
See: HARDWARE sk98lin
[edit] Xorg
ATI X600 drivers are not yet available with ati-drivers ebuild from portage. You have to download the newest at https://support.ati.com/ics/support/default.asp?deptID=894&task=knowledge&folderID=27 It is the 8.16.20 version; as you will see in RELEASE NOTES, X600 is now supported. Once downloaded,
chmod +x ati-driver-installer-8.16.20-i386.run ./ati-driver-installer-8.16.20-i386.run
Follow instructions, then
fglrxconfig
will try to generate xorg.conf file. Follow instructions. In my case, it didn't worked: at the end of the configuration, fglrxconfig complained it couldn't find any suitable card. When I started X, no devices found error. You have to manually give the chip number of the ATI X600 card as shown bellow:
| File: xorg.conf |
Section "Device"
Identifier "ATI Graphics Adapter"
Driver "fglrx"
'''ChipID 0x3150'''
Option "BusType" "PCIE"
Option "no_accel" "no"
Option "no_dri" "no"
Option "mtrr" "off"
Option "DesktopSetup" "(null)"
Option "ScreenOverlap" "0"
Option "GammaCorrectionI" "0x06419064"
Option "GammaCorrectionII" "0x06419064"
Option "Capabilities" "0x00000000"
Option "CapabilitiesEx" "0x00000000"
Option "VideoOverlay" "on"
Option "OpenGLOverlay" "off"
Option "CenterMode" "off"
Option "PseudoColorVisuals" "off"
Option "Stereo" "off"
Option "StereoSyncEnable" "1"
Option "FSAAEnable" "no"
Option "FSAAScale" "1"
Option "FSAADisableGamma" "no"
Option "FSAACustomizeMSPos" "no"
Option "FSAAMSPosX0" "0.000000"
Option "FSAAMSPosY0" "0.000000"
Option "FSAAMSPosX1" "0.000000"
Option "FSAAMSPosY1" "0.000000"
Option "FSAAMSPosX2" "0.000000"
Option "FSAAMSPosY2" "0.000000"
Option "FSAAMSPosX3" "0.000000"
Option "FSAAMSPosY3" "0.000000"
Option "FSAAMSPosX4" "0.000000"
Option "FSAAMSPosY4" "0.000000"
Option "FSAAMSPosX5" "0.000000"
Option "FSAAMSPosY5" "0.000000"
Option "UseFastTLS" "0"
Option "BlockSignalsOnLock" "on"
Option "UseInternalAGPGART" "yes"
Option "ForceGenericCPU" "no"
'''Option "MonitorLayout" "LVDS,AUTO"'''
Screen 0
EndSection
Section "Screen"
Identifier "Screen0"
Device "ATI Graphics Adapter"
Monitor "Monitor0"
DefaultDepth 24
Subsection "Display"
Depth 24
Modes "1280x800" "1024x768" "800x600" "640x480"
ViewPort 0 0
EndSubsection
EndSection
|
The option MonitorLayout is valid if you get a blank screen when starting X.
[edit] SATA DVD/CD
It's obviously pretty dangerous to do this. Please see if kernel >= 2.6.13 have this support, and try it first.
modify drivers/scsi/ata_piix.c in /usr/src/linux (current kernel version) Change :
PIIX_COMB_PATA_P0 = (1 << 1) PIIX_COMB = (1 << 2), /* combined mode enabled? */
to
PIIX_COMB_PATA_P0 = (1 << 0) PIIX_COMB = (1 << 1), /* combined mode enabled? *
modify include/linux/libata.h
Change :
#undef ATA_ENABLE_ATAPI /* define to enable ATAPI support */ #undef ATA_ENABLE_PATA /* define to enable PATA support in some
to
#define ATA_ENABLE_ATAPI 1 /* define to enable ATAPI support */ #define ATA_ENABLE_PATA 1 /* define to enable PATA support in some
Do not forget to disable IDE support as shown in First Install section. If everything goes well, you will have a /dev/sr0 device.
With gentoo-sources-2.6.14 you can use the kernel option libata.atapi_enabled=1 to enable the cd/dvd on /dev/sr0. Remove all suport ATA/ATAPI/MFM/RLL support in kernel and modify include/linux/libata.h
Change :
#undef ATA_ENABLE_PATA /* define to enable PATA support in some
to
#define ATA_ENABLE_PATA /* define to enable PATA support in some
On boot, is necessary remove /dev/sg0 and linking /dev/sr0 to /dev/sg0. Example:
rm -rf /dev/sg0 ln -sf /dev/sr0 /dev/sg0
