Search:  
Gentoo Wiki

Clevo_D900K


Please improve it in any way that you see fit, and remove this notice {{Cleanup}} from the article. For tips on cleaning and formatting see Cleanup process



Please format this article according to the guidelines and Wikification suggestions, then remove this notice {{Wikify}} from the article


This article is part of the Hardware series.
Laptops TV Tuner Cards Wireless Servers Storage Other Hardware Motherboards Related

Contents

Introduction

This is a collection of information to help get Gentoo AMD64 up and running on a Clevo D900K laptop, possibly one of the most powerfull laptops available [at least this week].

Never heard of Clevo?

That's because they are one of those rare birds in the computer industry known as a 'manufacturer'.

Everyone else simply buys products & puts their badges on them.

You will find this laptop sold under many guises:


Clevo also makes an Intel P4 version of this laptop (Clevo D900T) which is also sold under many different names. So when looking for drivers & hardware info for chassis related items (ie. webcam, bluetooth, and other non-chipset related hardware) don't ignore our P4 brethren.

Note: This is *not* a gentoo installation tutorial. If you need help in that area the best advice I can give is to just follow the steps in the Handbook.

Hardware Specs and Drivers

CPU: AMD Athlon 64 Processor

Supports any socket 939 Athlon64 processor. Has anyone tried sticking an Opteron in one of these? Yes I'm currently running an Opteron 185 with no issues.


Athlon 64 Single Core

ModelFrequency (MHz)L2 Cache
3000+
1800
512kB
3200+
2000
512kB
3400+
2000
512kB
3500+
2200
512kB
3700+
2200
1MB
3800+
2400
512kB
4000+
2400
1MB


Athlon 64 X2 Dual Core

ModelFrequency (MHz)L2 Cache
3800+
2000
512kB x2
4200+
2200
512kB x2
4400+
2200
1MB x2
4600+
2400
512kB x2
4800+
2400
1MB x2


Athlon 64 FX Series

The FX series appears to be the top of the line single & dual core processors.

Model# CoresFrequency (MHz)L2 Cache
FX53
1
2400
1MB
FX57
1
2800
1MB
FX60
2
2600
1MB x2


Drivers

Linux Kernel Configuration: CPU drivers
Processor type and features  --->
        Processor family (AMD-Opteron/Athlon64)  --->
            (X) AMD-Opteron/Athlon64
    [*] Symmetric multi-processing support
    --- Machine check support
    [*]   AMD MCE features

If you are running a dual-core system (SMP), you *need* to install sys-apps/irqbalance, and set it to run on startup via its initscript - it makes a world of difference in system responsiveness.

You'll need to install app-admin/mcelog to take advantage of the MCE features:

Code: mcelog
app-admin/mcelog
      Latest version available: 0.4-r1
      Latest version installed: 0.4-r1
      Size of downloaded files: 8 kB
      Homepage:    ftp://ftp.x86-64.org/pub/linux/tools/mcelog/
      Description: A tool to log and decode Machine Check Exceptions
      License:     GPL-2


Be sure to read the doc and create the /dev/mcelog device if it doesn't exist.

# mknod /dev/mcelog c 10 227


NOTE: If you have questions about the MCE messages, try looking on the AMD Opteron Troubleshooting Forums.

NorthBridge: VIA K8T890CE

Processor Support:AMD Opteron / Athlon FX / Athlon 64 / Sempron (939, 940 & 754 pin)
Front Side Bus:1GHz/16-bit (Upstream & Downstream) HyperTransport Bus Link
PCI Express Graphics:1 PCI Express x16 Graphics
PCI Express Peripheral:4 PCI Express x1
Memory Support:DDR memory controller integrated directly into AMD64 processor
Bus Architecture:Asynchronous


SouthBridge: VIA VT8237R


RAM:

Apacer AP1024CLD900K 2x 1GB

Corsair VS1GSDS400 2x 1GB


Graphics:

nVIDIA GeForce Go 7800GTX


LSPCI

Code: lspci -v snippet
02:00.0 VGA compatible controller: nVidia Corporation GE Force Go 7800 GTX (rev a1) (prog-if 00 [VGA])
	Subsystem: CLEVO/KAPOK Computer Unknown device 0901
       	Flags: fast devsel, IRQ 9
       	Memory at d1000000 (32-bit, non-prefetchable) [size=16M]
       	Memory at c0000000 (64-bit, prefetchable) [size=256M]
       	Memory at d0000000 (64-bit, non-prefetchable) [size=16M]
       	I/O ports at 5000 [size=128]
	Capabilities: [60] Power Management version 2
	Capabilities: [68] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-
	Capabilities: [78] Express Endpoint IRQ 0
	Capabilities: [100] Virtual Channel
	Capabilities: [128] Power Budgeting


Drivers

Latest NVidia drivers here: http://www.nvidia.com/object/unix.html

Linux AMD64/EM64T ver 1.0-8762-r1

These drivers have already been put into portage. The pre-1.0.8xxx drivers don't recognize the 7800 chip, so you'll probably have to set the ~amd64 keyword on these packages to get the right versions:

Code: NVidia packages
x11-drivers/nvidia-drivers
      Latest version available: 1.0.8762-r1
      Latest version installed: 1.0.8762-r1
      Size of files: 31,677 kB
      Homepage:      http://www.nvidia.com/
      Description:   NVIDIA X11 driver and GLX libraries
      License:       NVIDIA

media-video/nvidia-settings
      Latest version available: 1.0.20060516-r1
      Latest version installed: 1.0.20060516-r1
      Size of files: 1,093 kB
      Homepage:      http://www.nvidia.com/
      Description:   NVIDIA Linux X11 Settings Utility
      License:       GPL-2


These 3rd party drivers conflict with the kernel nvidia drivers, so make sure the kernel drivers are not built, and use the VESA drivers for framebuffer support:

Linux Kernel Configuration: Video drivers
Device Drivers  --->
      Graphics support  --->
              <*>   VESA VGA graphics support
                    VESA driver type (vesafb)  --->
              < > nVidia Framebuffer Support


X config

This is specifically for the XOrg server, but would also work if wanted to run XFree86 (ugh!). However, if you are really cutting-edge you might be interested in XGL, an OpenGL Xserver, which supports this card.

File: /etc/X11/xorg.conf
Section "Module"
        Load            "glx"
        #Load           "dri"
        ...
EndSection

Section "Device"
        Identifier      "GeForce 7800"
        Driver          "nvidia"
        BusID           "PCI:2:0:0"
        Option          "NvAGP"                 "3"
        Option          "NoLogo"                "false"
        Option          "RenderAccel"           "false"
        Option          "NoRenderExtension"     "false"
        #Option         "UBB"                   "boolean"
        Option          "NoFlip"                "false"
        Option          "DigitalVibrance"       "0"
        #Option         "Dac8Bit"               "boolean"
        Option          "Overlay"               "false"
        Option          "CIOverlay"             "false"
        Option          "TransparentIndex"      "0"
        Option          "OverlayDefaultVisual"  "false"
        Option          "SWCursor"              "false"
        Option          "HWCursor"              "true"
        Option          "CursorShadow"          "true"
        Option          "CursorShadowAlpha"     "64"
        Option          "CursorShadowXOffset"   "4"
        Option          "CursorShadowYOffset"   "2"
        Option          "ConnectedMonitor"      "DFP"
        Option          "UseEdidFreqs"          "false"
        Option          "IgnoreEDID"            "false"
        Option          "NoDDC"                 "false"
        Option          "FlatPanelProperties"   "Scaling = centered, Dithering = enabled"
        Option          "UseInt10Module"        "false"
        Option          "TwinView"              "false"
        #Option         "TwinViewOrientation"   "string"
        #Option         "SecondMonitorHorizSync"        "range(s)"
        #Option         "SecondMonitorVertRefresh"      "range(s)"
        #Option         "MetaModes"             "string"
        #Option         "NoTwinViewXineramaInfo"        "boolean"
        #Option         "TVStandard"            "string"
        #Option         "TVOutFormat"           "string"
        #Option         "TVOverScan"            "Decimal value in the range 0.0 to 1.0"
        #Option         "Stereo"                "integer"
        #Option         "AllowDFPStereo"        "boolean"
        #Option         "NoBandWidthTest"       "boolean"
        #Option         "IgnoreDisplayDevices"  "string"
        #Option         "MultisampleCompatibility" "boolean"
        #Option         "NoPowerConnectorCheck" "boolean"
        #Option         "XvmcUsesTextures"      "boolean"
        #Option         "AllowGLXWithComposite" "boolean"
EndSection


3D Accel

When all is said & done you should have a hardware accelerated, 3D display:

Code: glxinfo
# glxinfo | grep direct
direct rendering: Yes
#
# glxgears
51175 frames in 5.0 seconds = 10235.000 FPS
60403 frames in 5.0 seconds = 12080.600 FPS
58235 frames in 5.0 seconds = 11647.000 FPS
57844 frames in 5.0 seconds = 11568.800 FPS


nVIDIA GeForce Go 7900GTX

nVIDIA GeForce Go 7950GTX

Screen: LG Philips

      WXGAWSXGAWUXGA
Model:LP171WX2LP171W02LP171WU1
LCD Screen:17.1" TFT LCD17.1" TFT LCD17.1" TFT LCD
Active Area [mm]:367.2 x 229.5367.2 x 229.5367.2 x 229.5
Outline Dimension [mm]:382.2 x 244.5382.2 x 244.5382.2 x 244.5
Thickness [mm]:6.26.66.2
Resolution:1,440 x 9001,680 x 1,0501,920 x 1,200
Aspect Ratio:16:1016:1016:10
Pixel Pitch [mm]:0.255 (100)0.219 (116)0.191 (133)
Number of Colors:262,144 (6 bit)262,144 (6 bit)262,144 (6 bit)
Luminance [cd/]:200(5p)170(tpy 5p)190 (typ. 5p)
Color Saturation (%):4545
Weight [g]:700760720
Contrast Ratio:350:1500:1500:1
Interface:LVDS 2 PortLVDS 2 port2ch LVDS
Viewing Angle [°,U/D,L/R]:120/140120/140120/140
Color Temperature [K]:
Response Time [ms]:252525


X config

NOTE: X calculates the vrefresh for the 1920x1200 mode as 61.8 Hz:

(**) NVIDIA(0): Mode "1920x1200": 166.0 MHz, 75.2 kHz, 61.8 Hz

Unfortunately, when reading the panel EDID info it sees that the panel is only capable of 60 Hz, so it falls back to running in 1600x1200 mode. The workaround for this is to manually specify the refresh rates for the display, and force the video driver to ignore the EDID supplied frequencies:

Option "UseEdidFreqs" "false"

This is done in the "Device" section above, where the video driver is specified.

File: /etc/X11/xorg.conf
Section "Monitor"
	Identifier	"LCD"
	HorizSync	29-76
	VertRefresh	0-62
EndSection


File: /var/log/Xorg.0.log
(II) NVIDIA(0): Using ConnectedMonitor string "DFP-0"
(--) NVIDIA(0): DFP-0: maximum pixel clock: 310 MHz
(--) NVIDIA(0): DFP-0: Internal Dual Link LVDS
(**) NVIDIA(0): Digital Vibrance for display 0 set to 0
(II) NVIDIA(0): Frequency information for DFP-0:
(II) NVIDIA(0):   HorizSync   : 29.000-76.000 kHz
(II) NVIDIA(0):   VertRefresh : 0.000-62.000 Hz
(II) NVIDIA(0):      (HorizSync from HorizSync in X Config Monitor section)
(II) NVIDIA(0):      (VertRefresh from VertRefresh in X Config Monitor
(II) NVIDIA(0):      section)
(II) NVIDIA(0): Adding EDID-provided mode "1920x1200" for DFP-0.
(II) NVIDIA(0): LCD: Using hsync range of 29.00-76.00 kHz
(II) NVIDIA(0): LCD: Using vrefresh range of 0.00-62.00 Hz
(II) NVIDIA(0): Clock range:  12.00 to 310.00 MHz
(II) NVIDIA(0): Not using default mode "640x350" (vrefresh out of range)

     ...

(WW) NVIDIA(0): Not using mode "576x384":
(WW) NVIDIA(0):   horizontal sync start (589) not a multiple of 8
(**) NVIDIA(0): Validated modes for display device DFP-0:
(**) NVIDIA(0):      Mode "1920x1200": 166.0 MHz, 75.2 kHz, 61.8 Hz
(**) NVIDIA(0):      Default mode "1600x1200": 162.0 MHz, 75.0 kHz, 60.0 Hz
(**) NVIDIA(0):      Default mode "1400x1050": 122.0 MHz, 64.9 kHz, 60.0 Hz
(**) NVIDIA(0):      Default mode "1280x1024": 108.0 MHz, 64.0 kHz, 60.0 Hz
(**) NVIDIA(0):      Default mode "1280x960": 108.0 MHz, 60.0 kHz, 60.0 Hz
(**) NVIDIA(0):      Default mode "1024x768": 65.0 MHz, 48.4 kHz, 60.0 Hz
(**) NVIDIA(0):      Default mode "800x600": 40.0 MHz, 37.9 kHz, 60.3 Hz
(**) NVIDIA(0):      Default mode "800x600": 81.0 MHz, 75.0 kHz, 60.0 Hz (D)
(**) NVIDIA(0):      Default mode "800x600": 36.0 MHz, 35.2 kHz, 56.2 Hz
(**) NVIDIA(0):      Default mode "700x525": 61.0 MHz, 64.9 kHz, 60.0 Hz (D)
(**) NVIDIA(0):      Default mode "640x512": 54.0 MHz, 64.0 kHz, 60.0 Hz (D)
(**) NVIDIA(0):      Default mode "640x480": 25.2 MHz, 31.5 kHz, 60.0 Hz
(**) NVIDIA(0):      Default mode "640x480": 54.0 MHz, 60.0 kHz, 60.0 Hz (D)
(**) NVIDIA(0):      Default mode "512x384": 32.5 MHz, 48.4 kHz, 60.0 Hz (D)
(**) NVIDIA(0):      Default mode "400x300": 20.0 MHz, 37.9 kHz, 60.3 Hz (D)
(**) NVIDIA(0):      Default mode "400x300": 18.0 MHz, 35.2 kHz, 56.3 Hz (D)
(**) NVIDIA(0):      Default mode "320x240": 12.6 MHz, 31.5 kHz, 60.1 Hz (D)
(II) NVIDIA(0): Virtual screen size determined to be 1920 x 1200
(--) NVIDIA(0): DPI set to (152, 152); computed from "UseEdidDpi" X config option


HDD:

Hitachi Travelstar 7K100

Hitachi Travelstar 5K100


Optical Drive #1:

Pioneer DVR-K16

TSSTcorp CD/DVDW SN-S082D

Optical Drive #2:

not installed

Audio: RealTek HD Audio


LSPCI

Code: lspci -v snippet
00:11.5 Multimedia audio controller: VIA Technologies, Inc. VT8233/A/8235/8237 AC97 Audio Controller (rev 60)
	Subsystem: CLEVO/KAPOK Computer Unknown device 0901
	Flags: medium devsel, IRQ 11
	I/O ports at 1800 [size=256]
	Capabilities: [c0] Power Management version 2


Drivers

The 2.6.15 kernel includes drivers for this:

Linux Kernel Configuration: Sound Drivers
Device Drivers  --->
      Sound  --->
          <*> Sound card support
              Advanced Linux Sound Architecture  --->
                  PCI devices  --->
                      <*> VIA 82C686A/B, 8233/8235 AC97 Controller


Set your sound card in /etc/make.conf:

File: /etc/make.conf
ALSA_CARDS="via82xx"


You'll need to emerge the utilities to start & control alsa:

Code: Alsa packages
media-sound/alsa-utils
      Latest version available: 1.0.10
      Latest version installed: 1.0.10
      Size of downloaded files: 968 kB
      Homepage:    http://www.alsa-project.org/
      Description: Advanced Linux Sound Architecture Utils (alsactl, alsamixer, etc.)
      License:     GPL-2


Network:

Realtek RTL8110SBL


LSPCI

Code: lspci -v snippet
00:08.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet (rev 10)
	Subsystem: CLEVO/KAPOK Computer Unknown device 0901
	Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 20
	I/O ports at 1000 [size=256]
	Memory at d2206800 (32-bit, non-prefetchable) [size=256]
	[virtual] Expansion ROM at 8c000000 [disabled] [size=128K]
	Capabilities: [dc] Power Management version 2


Drivers

The 2.6.15 kernel includes drivers for this:

Linux Kernel Configuration: Network Drivers
Device Drivers  --->
      Network device support  --->
          [*] Network device support
              Ethernet (1000 Mbit)  --->
                  <*> Realtek 8169 gigabit ethernet support


Wireless:

RaLink RT2500


LSPCI

Code: lspci -v snippet
00:0a.0 Network controller: RaLink RT2500 802.11g Cardbus/mini-PCI (rev 01)
	Subsystem: Micro-Star International Co., Ltd. Unknown device 6833
	Flags: slow devsel, IRQ 11
	Memory at d2204000 (32-bit, non-prefetchable) [size=8K]
	Capabilities: [40] Power Management version 2


Drivers

There are no drivers available for this in the kernel (yet; the open source drive discussed below is expected to be merged in 2.6.24), but RaLink has released their drivers which have been put in portage. These drivers are SMP safe as of 1.1.0_beta4. You may also have problems with PREEMPT. However, these drivers have been confirmed to work. If you are still interested, follow the instructions here. [read the next paragraph for the new open source drivers from serialmonkey]

Code: RaLink Packages
* net-wireless/rt2500
     Available versions:  1.1.0_beta3 1.1.0_beta4
     Installed:           1.1.0_beta4
     Homepage:            http://rt2x00.serialmonkey.com
     Description:         Driver for the RaLink RT2500 wireless chipset


There is also a new open source driver for all RaLink devices which is based on the released RaLink code. These drivers require an external implementation of IEEE802.11 which will need to be installed, and which conflicts with the 802.11 implementation in the kernel. In fact, when installing the 802.11 package, it will require that you remove the kernel source files relating to 802.11.

Warning: This driver is still beta [2006/03/20].

Plan on visiting the web forum for documentation & troubleshooting & sending kudos to the developers. (Some manual install instructions may be found here.)

Code: rt2x00 Open Packages
net-wireless/rt2x00
      Latest version available: 2.0.0_beta3
      Latest version installed: 2.0.0_beta3
      Size of downloaded files: 130 kB
      Homepage:    http://rt2x00.serialmonkey.com
      Description: Driver for the RaLink RT2x00 wireless chipsets
      License:     GPL-2

net-wireless/ieee80211
      Latest version available: 1.1.12-r1
      Latest version installed: 1.1.12-r1
      Size of downloaded files: 64 kB
      Homepage:    http://ieee80211.sourceforge.net
      Description: Generic IEEE 802.11 network subsystem for Linux
      License:     GPL-2

Bluetooth: MSI 6967


This device shows up on usb bus 5.

This list states that the MSI 6967 device is supported under linux.


Modem: AC97 Soft Data Fax Modem with SmartCP


LSPCI

Code: lspci -v snippet
00:11.6 Communication controller: VIA Technologies, Inc. AC'97 Modem Controller (rev 80)
        Subsystem: CLEVO/KAPOK Computer Unknown device 0901
        Flags: medium devsel, IRQ 22
        I/O ports at 1c00 [size=256]
        Capabilities: [d0] Power Management version 2


Drivers

These Linuxant commercial drivers seem to be the only working solution right now. They offer a free version but they are crippled & limited to 14.4k thru-put.


FireWire: Texas Instruments OHCI compliant IEEE 1394 Host


LSPCI

Code: lspci -v snippet
00:06.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link) (prog-if 10 [OHCI])
        Subsystem: CLEVO/KAPOK Computer Unknown device 0901
        Flags: bus master, medium devsel, latency 64, IRQ 20
        Memory at d2206000 (32-bit, non-prefetchable) [size=2K]
        Memory at d2200000 (32-bit, non-prefetchable) [size=16K]
        Capabilities: [44] Power Management version 2


Drivers

The standard OHCI-1394 kernel driver works fine.

Linux Kernel Configuration: Firewire Drivers
Device Drivers  --->
      IEEE 1394 (FireWire) support  --->
          <*> IEEE 1394 (FireWire) support
          <*>   OHCI-1394 support


USB:


LSPCI

Code: lspci -v snippet
00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81) (prog-if 00 [UHCI])
        Subsystem: CLEVO/KAPOK Computer Unknown device 0901
        Flags: bus master, medium devsel, latency 64, IRQ 21
        I/O ports at 2000 [size=32]
        Capabilities: [80] Power Management version 2

00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81) (prog-if 00 [UHCI])
        Subsystem: CLEVO/KAPOK Computer Unknown device 0901
        Flags: bus master, medium devsel, latency 64, IRQ 21
        I/O ports at 2020 [size=32]
        Capabilities: [80] Power Management version 2

00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81) (prog-if 00 [UHCI])
        Subsystem: CLEVO/KAPOK Computer Unknown device 0901
        Flags: bus master, medium devsel, latency 64, IRQ 21
        I/O ports at 2040 [size=32]
        Capabilities: [80] Power Management version 2

00:10.3 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81) (prog-if 00 [UHCI])
        Subsystem: CLEVO/KAPOK Computer Unknown device 0901
        Flags: bus master, medium devsel, latency 64, IRQ 21
        I/O ports at 2060 [size=32]
        Capabilities: [80] Power Management version 2

00:10.4 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 86) (prog-if 20 [EHCI])
        Subsystem: CLEVO/KAPOK Computer Unknown device 0901
        Flags: bus master, medium devsel, latency 64, IRQ 21
        Memory at d2206c00 (32-bit, non-prefetchable) [size=256]
        Capabilities: [80] Power Management version 2


Drivers

The standard kernel drivers appear to work fine.

Linux Kernel Configuration: USB Drivers
Device Drivers  --->
      USB support  --->
          <*> Support for Host-side USB
          [*]   USB device filesystem
          <*>   EHCI HCD (USB 2.0) support
          <*>   UHCI HCD (most Intel and VIA) support


LSUSB

The lsusb output shows 5 usb busses. Bus 1 is internal and has the multi-card reader and the webcam on it. Bus 2 - 5 correspond to the 4 external USB ports.

Code: lsusb output
Bus 005 Device 001: ID 0000:0000
Bus 004 Device 001: ID 0000:0000
Bus 003 Device 001: ID 0000:0000
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 004: ID 07c4:3260 Datafab Systems, Inc.
Bus 001 Device 003: ID eb1a:2750 eMPIA Technology, Inc.
Bus 001 Device 001: ID 0000:0000


IR Port: National Semiconductor


Drivers

Linux Kernel Configuration: IRDA Drivers
  Networking  --->
        <*>   IrDA (infrared) subsystem support  --->
              Infrared-port device drivers  --->
                  <*> IrTTY (uses Linux serial driver)
                  <*> NSC PC87108/PC87338


Notes

Edit: Same chip on Acer Aspire 1694LMi was not recognized

modprobe nsc-ircc irq=3 dma=1 io=0x2f8
FATAL: Error inserting nsc_ircc (/lib/modules/2.6.16.19/kernel/drivers/net/irda/nsc-ircc.ko): No such device


Keyboard/Mouse:


Drivers

Linux Kernel Configuration: Event Interface
Device Drivers  --->
    Input device support  --->
        <*>   Event interface 
        ---   Keyboards  --->
              <*>   AT keyboard
        [*]   Mouse  --->
              <*>   PS/2 mouse


And then emerge the 3rd party synaptics drivers:

Code: Synaptics Drivers
x11-drivers/synaptics
      Latest version available: 0.14.4-r2
      Latest version installed: 0.14.4-r2
      Size of downloaded files: 122 kB
      Homepage:    http://w1.894.telia.com/~u89404340/touchpad/
      Description: Driver for Synaptics touchpads
      License:     GPL-2


XOrg

Unanswered questions:

  • functional difference between using the mouse & event handlers
  • difference between using the event / auto-dev / evdev event protocols
  • I see this warning in my Xorg.0.log file:
(WW) Touchpad: TopEdge is bigger than BottomEdge. Fixing.
so I think the TopEdge & BottemEdge values may be reversed.


You will just need to figure out the device & protocol to use. Basically, cat /proc/bus/input/devices to determine the handlers being used:

Code: cat /proc/bus/input/devices
I: Bus=0011 Vendor=0002 Product=0007 Version=0000
N: Name="SynPS/2 Synaptics TouchPad"
P: Phys=isa0060/serio4/input0
S: Sysfs=/class/input/input2
H: Handlers=mouse0 event2 
B: EV=b
B: KEY=6420 70000 0 0 0 0
B: ABS=11000003


In this case, my touchpad is mouse0 and event2. So, I can either use a protocol of "mouse" and a device of /dev/input/mouse0 or a protocol of "event" and device of /dev/input/event2. I chose to use the event handler.

If you want to use something like "ksynaptics" to configure your touchpad, be sure the SHMConfig option is "on".

File: xorg.conf
Section "InputDevice"
        Identifier      "Touchpad"
        Driver          "synaptics"
        Option          "Protocol"              "event"
        Option          "Device"                "/dev/input/event2"
        Option          "LeftEdge"              "1900"
        Option          "RightEdge"             "5400"
        Option          "BottomEdge"            "1800"
        Option          "TopEdge"               "3900"
        Option          "FingerLow"             "25"
        Option          "FingerHigh"            "30"
        Option          "MaxTapTime"            "180"
        Option          "MaxTapMove"            "220"
        Option          "VertScrollDelta"       "100"
        Option          "MinSpeed"              "0.02"
        Option          "MaxSpeed"              "0.18"
        Option          "AccelFactor"           "0.0010"
        Option          "SHMConfig"             "on"
        #Option         "Repeater"              "/dev/ps2mouse"
        Option          "ZAxisMapping"          "4 5 6 7"
EndSection


GPM

The touchpad works as a generic PS/2 device for gpm using the following settings. I have not had any problems running gpm & X simultaneously this way. I have not yet tried to configure gpm to recognize it as a synaptics touchpad and enable scrolling & such.

File: /etc/conf.d/gpm
MOUSE=imps2
MOUSEDEV=/dev/input/mice


PC Card

See this guide. The TI PCI1410APGE is yenta-compatable.

Floppy: TEAC FD-05PUW

Date Capacity720KB , 1.25MB , 1.44MB ( formatted )
USB Data Transfer RateFull-Speed / 12Mbps
Data Transfer Rate500Kbit/s ( 720KB ), 1Mbit/s (1.25MB / 1.44MB )
Track Density135tpi
Number of cylinders80
Rotation Speed600min-1 ( rpm ), 720min-1 ( rpm )
InterfaceUSB ( Universal Serial Bus ) Full-Speed / Specification Ver.1.1
Recording MethodMFM
MediaHigh density ( 2HD ) or normal density ( 2DD ) 3.5" micro floppy disks
Power RequirementsDC+5V ±5% ( USB BUS power supply )
Power ConsumptionSuspended : 500µ A ( max. )
Read/Write : 280mA ( typ. )


Drivers

USB floppy support


Video Camera: eMPIA 2750

This device shows up as a usb device.

Driver is under development

http://mcentral.de/wiki/index.php/Em2880

cam module should support 720x576, 320x240 is already supported


Card Reader: Built-in 10-in-1 Card Reader

This device shows up as a usb device.

You should only need USB mass storage & SCSI disk drivers for this.

NOTE: You *HAVE* to enable "Probe all LUNs on each SCSI device" (SCSI_MULTI_LUN) in order for this to work!


TV Tuner: MiniPCI Hybrid TV Tuner (analog or digital)


Serial / Parallel:


This is still kinda confusing right now as the system seems to be detecting all 3 serial ports (serial,modem,irda) and calling them all /dev/ttyS0. Or, more likely, I am misunderstanding the driver output.

Code: Serial Detection
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled
serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
serial8250: ttyS0 at I/O 0x3f8 (irq = 0) is a 16550A
00:09: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A


Drivers

The kernel drivers work fine:

Linux Kernel Configuration: Serial / Parallel Port Drivers
Device Drivers  --->
    Parallel port support  --->
        <*> Parallel port support
        <*>   PC-style hardware
        [*]     Use FIFO/DMA if available (EXPERIMENTAL)
        [*] IEEE 1284 transfer modes 
    Character devices  --->
        Serial drivers  --->
            <*> 8250/16550 and compatible serial support
            [*]   8250/16550 device discovery via ACPI namespace


If you want to use the high speed FIFO/DMA options of the parallel port [ie. ECP/EPP modes] you should read Documentation/parport.txt in your kernel source. With the driver built into the kernel as above, you might need to pass some options on your kernel command line to enable it, otherwise even though it autodetects the IRQ & DMA it won't automatically use them. An example might be something like:

parport=0x378,7
Warning: This might not be a good idea if your system is sharing that IRQ/DMA/FIFO with something else.


You probably want to install setserial to configure your serial ports:

Code: setserial
sys-apps/setserial
      Latest version available: 2.17-r3
      Latest version installed: 2.17-r3
      Size of downloaded files: 51 kB
      Homepage:    http://setserial.sourceforge.net/
      Description: Configure your serial ports with it
      License:     GPL-2


Power: Full Range 220W AC adapter - AC input


ACPI Support

This system has full ACPI support.

Linux Kernel Configuration: ACPI Drivers
Power management options  --->
    ACPI (Advanced Configuration and Power Interface) Support  --->
        [*] ACPI Support
        <*>   AC Adapter
        <*>   Battery
        <*>   Button
        <*>   Video
        <*>   Generic Hotkey (EXPERIMENTAL)
        <*>   Processor
        <*>     Thermal Zone 


Code: dmesg ACPI output
ACPI: AC Adapter [ADP0] (on-line)
ACPI: Battery Slot [BAT0] (battery present)
ACPI: Power Button (CM) [PWRB]
ACPI: Lid Switch [LID]
ACPI: Sleep Button (CM) [SLPB]
ACPI: Video Device [NVD] (multi-head: yes  rom: no  post: no)
Using specific hotkey driver
ACPI: Thermal Zone [THM0] (51 C)

PowerNow!

Enable the drivers & schedulers in the kernel:

Linux Kernel Configuration: PowerNow! drivers & schedulers
Power management options  --->
    CPU Frequency scaling  --->
        [*] CPU Frequency scaling
        <*>   'powersave' governor
        <*>   'userspace' governor for userspace frequency scaling
        <*>   'ondemand' cpufreq policy governor
        <*>   'conservative' cpufreq governor
        ---   CPUFreq processor drivers 
        <*>   AMD Opteron/Athlon64 PowerNow!
        <*>   ACPI Processor P-States driver


Dmesg output shows that this processor supports 2 states: 2600 MHz & 1200 MHz. Some AMD procs seem to be able to power down to 800 MHz.

Code: PowerNow! detection
powernow-k8: Found 2 AMD Athlon 64 / Opteron processors (version 1.50.4)
powernow-k8:    0 : fid 0x12 (2600 MHz), vid 0xa (1300 mV)
powernow-k8:    1 : fid 0x4 (1200 MHz), vid 0x12 (1100 mV)
cpu_init done, current fid 0x2, vid 0x12


Sleeping / Hibernation

Has anyone done this yet?

Normally sys-power/acpid is needed for this:

Code: sys-power/acpid
sys-power/acpid
      Latest version available: 1.0.4-r3
      Latest version installed: [ Not Installed ]
      Size of downloaded files: 22 kB
      Homepage:    http://acpid.sourceforge.net
      Description: Daemon for Advanced Configuration and Power Interface
      License:     GPL-2


But I read that it is not needed with a 2.6 kernel. I'm looking for confirmation & configuration info.

Improving Battery Runtime

  1. Turn off the extras. The radios are power-hogs. And the camera's not necessary 100% of the time.
    • <Fn><F10> will disable the camera.
    • <Fn><F11> will disable the 802.11 radio.
    • <Fn><F12> will disable the Bluetooth radio.
  2. Don't start swap at boot. Having swap enabled causes repeated disk use, keeping the disks from spinning down. Put 'noauto' in the options column of your fstab and the system will not start it at boot, but you can still start it anytime you want by running 'swapon -a'.
    /dev/sda2               none        swap        noauto,sw,pri=0         0 0
  3. Use one of the power-saving schedulers for CPU frequency scaling. See PowerNow! above.
    • # echo conservative > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
    • # echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor


References

Full 'lspci -v' Output

Can be found here.

Kernel config

A 2.6.15-gentoo-r7 .config can be found here.

Boot Messages

The full dmesg output using the given kernel .config can be seen here.

XOrg Config

This is my working xorg.conf file. It does not yet address using the s-video out or dual monitors using the DVI output.

Xorg.0.log

The complete X output can be found here.

glxinfo

The complete glxinfo can be found here.


OS Install & Config

Gentoo AMD64

Just random notes right now.

  • When booting the install CDs, the onboard NIC drivers are hotplugged after the firewire ethernet drivers. So the onboard NIC is eth1, not eth0 like we all expect. Why the firewire ethernet drivers are hotplugged is beyond me. Someone seems to think that everyone who has firewire wants to use it as a NIC. Even after the OS is loaded, you will find that hotplug/coldplug is loading this driver. Need to find out where to disable this. Until then, wireless & such will start at eth2.
  • Has anyone tried the new 2006 gui installer?
  • amd64 vs ~amd64 : I ended up keywording so many packages that I finally changed my whole system to ~amd64.
  • My Modular X upgrade went smooth, but afterwards I had several depencency related issues crop up during my next world upgrade (even after running revdep-rebuild.) I did an empty-tree world rebuild and everything is fixed now.
  • If you are running one of the dual-core cpus, and you are getting *very* sluggish response from the system when under moderate to high load - try emerging irqbalance and running it (rc-update add irqbalance default; /etc/init.d/irqbalance start) - this shares the irq load between the two cores, and *dramatically* improves system responsiveness. Anyone running a SMP system *needs* irqbalance.

Apps not 64-bit ready

These apps only come in 32-bit versions, so you'll need to run multilib support if you want these.

  • Adobe Acrobat 7 - It's way too bloated/slow anyway - just use evince or kpdf
  • macromedia flash player - use gnash for partial flash support, or use nspluginwrapper to use 32-bit browser plugins on a 64-bit browser
  • win32 codecs for mplayer - ffmpeg now can decode the win32 type codecs, so you should be able to watch avi & etc. type files now


Gentoo

Anyone have any notes for 32-bit Gentoo?


XEN install

See the Xen guide.

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

Last modified: Fri, 05 Sep 2008 02:18:00 +0000 Hits: 24,758