ASUS M2A-VM

Aus Gentoo Linux Wiki

Wechseln zu: Navigation, Suche
Dieser Teil ist Artikel der Hardware Serie.
Laptops Motherboards Servers Eingabegeräte RAID Controller TV Karten Wireless Andere Hardware Andere Architekturen alphabetischer Hardware Index




Inhaltsverzeichnis

[Bearbeiten] Motherboard

  • Motherboard, ASUS M2A VM mit dem AMD 690G und ATI SB600 Chipsatz.

Hinweis: für Gentooneulinge nicht geeignet (Stand 09/2007)!

[Bearbeiten] Firmwareupdate bzw. Biosupdate

Die BIOS-Version sollte min. 1501 sein. Ältere Versionen verursachen vor allem Probleme mit der Onboard-Grafik. Hier eine Möglichkeit für die Aktualisierung der Biosversion. Die Software kann unter M2A-VM Biosversionen herunterladen werden. Zipdatei entpacken und direkt ins Rootverzeichnis des USB-Sticks kopieren.

Unter Linux sollte es so in etwa aussehen /mnt/usb/1501.bin und unter Windows [USB] F:\1501.bin

Rechner starten und die Entf (Del) Taste Drück um ins Biossetup zugelangen. !! Unbedingt die Hinweise von ASUS für das Update beachten!!! Nicht bei allen Version ist die Verwendung des EZ Flash gestattet. Bei der Version 0701 auf höhere Versionen zum Beispiel nicht. Bei Version 1603 ist der Warnhinweis bezüglich EZ Flash nicht angegeben. Ich habe es getestet und zumindest mit 1603 ist bei mir alles gut gegangen.

Im Setup unter den Menü TOOLS findet man ASUS EZ FLASH2. EZ FLASH 2 starten. Es kann einige Sekunden (ca. 10s) dauern bis alles aktive ist. Es werden die Laufwerksbuchstaben A,B und C angezeigt. Wenn einer dieser Buchstaben Pink hinterlegt ist, kann man zu seiner Datei 1101.bin "browsen" und auf das Board laden.

[Bearbeiten] Installations-CD

Es können einige Probleme mit den Live-CDs von Gentoo 2007.0 auftreten. Generell empfiehlt es sich daher zur Zeit (Oktober 2007) eine möglichst aktuelle Live-CD einer anderen Distribution zur Gentoo-Installation zu verwenden.

[Bearbeiten] Kernel

Mein Gentoosystem läuft mit dem 2.6.22 Kernel. (Stand 15.09.2007) Als Hilfe für die Einstellungen des Kernels 2.6.22 kann ich diese Seite empfehlen. Sie beschreibt zwar die x86 Version aber vieles lässt sich übernehmen und die einzelnen Punkte sind gut und "verständlich" beschrieben. Eine Anleitung für die manuelle Kompilierung des Kernels findet man hier.

[Bearbeiten] ATI Grafikkarte Radeon X1250

ATI (AMD) stellt für diese Karte Treiber zur Verfügung. Für die Installation des Treibers sollte man der Gentooanleitung folgen. Ich habe den ati-drivers-8.39.4 Treiber bei meiner Installation verwendet.

hier noch mein Installationsskript:

#!/bin/sh
emerge x11-drivers/ati-drivers
emerge x11-drivers/xf86-video-ati
eselect opengl set ati
 
env-update
source /etc/profile

Die letzten zwei Zeilen kann man immer verwenden für die Aktuallisierung der Umgebungsvariablen.


Die Herausforderung bei der Installation der ATI Treiber ist immer die xorg.conf für den X-Server.

hier die von mir verwendete xorg.conf. Sie reizt sicher noch nicht alle Möglichkeiten der Karte aus aber sie funktioniert.

Section "ServerLayout"
	Identifier     "X.org Configured"
	Screen      0  "aticonfig-Screen[0]" 0 0
	InputDevice    "Mouse0" "CorePointer"
	InputDevice    "Keyboard0" "CoreKeyboard"
EndSection
 
Section "Files"
	RgbPath      "/usr/share/X11/rgb"
	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"
        SubSection "extmod"	
           Option "omit xfree86-dga"
	EndSubSection    
#	Load  "dri"
#	Load  "extmod"
#	Load  "GLcore"
#	Load  "xtrap"
#	Load  "glx"
#	Load  "record"
#	Load  "type1"
	Load  "freetype"
	Load  "extmod"
EndSection

Section "ServerFlags"
        Option "AllowMouseOpenFail" "true"
 	Option "OffTime" "5"
	Option "AIGLX" "false"
EndSection

Section "InputDevice"
	Identifier  "Keyboard0"
	Driver      "kbd"
       Option      "XkbModel" "pc105"
	Option      "XkbLayout" "de"
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   "aticonfig-Monitor[0]"
	Option       "DPMS" "true"
	DisplaySize  338 270
#	VendorName   "Monitor Vendor"
#	ModelName    "Monitor Model"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: : 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  "aticonfig-Device[0]"
	Driver      "fglrx"
	Option      "PreferredVRefresh" "60"
	VendorName  "ATI Technologies Inc"
	BoardName   "ATI Radeon Xpress 1200 Series"
	BusID       "PCI:1:5:0"
EndSection

Section "Screen"
	Identifier "aticonfig-Screen[0]"
	Device     "aticonfig-Device[0]"
	Monitor    "aticonfig-Monitor[0]"
	DefaultDepth    24
		SubSection "Display"
		Viewport   0 0
		Depth     24
                EndSubSection
EndSection
Section "Extensions"
        Option      "Composite" "true"
EndSection

[Bearbeiten] Netzwerkkarte

Wie uns lspci (-v) verrät, handelt es sich bei dem Ethernet Chipsatz auf diesem Board um den Realtek 8168 Chipsatz:

02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01)

Im Kernel sollte man PCI Express aktivieren:

Linux Kernel Configuration: kernel 2.6
Bus options (PCI etc.) --->
    [*]  PCI Express support


Der Kernel-Treiber für den Realtek 8169 Chipsatz unterstützt u.a. auch den auf diesem Board verwendeten RTL8111/8168B Chipsatz:

Linux Kernel Configuration: kernel 2.6
Device Drivers -->
  Network device support -->
    Ethernet (1000 Mbit) -->
      <*>   Realtek 8169 gigabit ethernet support
      [*]     Use Rx and Tx Polling (NAPI) (EXPERIMENTAL)


[Bearbeiten] Sound

Der Chipsatz wird im Handbuch als "Realtek ALC833 High Definition Audio 6-Channel audio CODEC" bezeichnet. Es verrät uns auch, dass er voll kompatibel mit dem Intel-High-Definition-Audio-Standard ist. Dies ist wichtig für die Kerneleinstellungen. Über lspci erfährt man das sich um Azalia handelt:

Audio device: ATI Technologies Inc SB600 Azalia
Subsystem: ASUSTeK Computer Inc. Unknown device 8249
Flags: bus master, slow devsel, latency 64, IRQ 16


Linux Kernel Configuration: kernel 2.6
 Device Drivers --->
  Sound--->
   Advanced Linux Sound Architecture --->
    PCI Devices --->
    <M> Intel HD Audio


Damit die Channelzuordnung reibungslos funktioniert, muss bei älteren Kerneln (z.B 2.6.22) beim Laden des Moduls noch das Model gesetzt werden:

modprobe snd-hda-intel model=asus

bzw. folgende Zeile in die /etc/modprobe.conf:

options snd-hda-intel   model=asus

Weitere Informationen zu Realteks ALC833 findet man hier.

[Bearbeiten] Temperatursensoren onboard

Eine Anleitung für die Installation von lm_sensors findet man hier.

Die zu aktivierenden Module:

Linux Kernel Configuration: kernel 2.6
Device Drivers --->
<*> Hardware Monitoring support --->
    <M> AMD Athlon64/F or Opteron temperature sensor
       
    <M> ITE IT87xx and compatibles

Achtung: Unbedingt auch den I2C Support einkompilieren, sonst fehlt die Option IT87xx!

Linux Kernel Configuration: kernel 2.6
Device Drivers --->
<*> I2C support --->
    <*> I2C device interface 
    I2C Hardware Bus support --->
        <M> Intel PIIX4 and compatible (ATI/Serverworks/Broadcom/SMSC)


Der entscheidende Teil der /etc/conf.d/lm_sensors Datei:

# Initialize sensors at startup
INITSENSORS=yes

MODULE_0=k8temp
MODULE_1=it87

Und hier die wesentlichen Einträge in der /etc/sensors.conf:

#### Here begins the real configuration file
...
chip "it8716-*"
# Voltages
   label  in0  "VCore"
   label  in1  "VDDR"
   label  in2  "+3.3V"    # VCC3
   label  in3  "+5V"      # VCC
   label  in4  "+12V"
#   label  in5  "-12V"
#   label  in6  "-5V"
   label  in7  "5VSB"     # VCCH
   label  in8  "VBat"
   ignore in2
   ignore in5
   ignore in6
   compute in3  ((6.8/10)+1)*@ , @/((6.8/10)+1)
   compute in4  ((30/10)+1)*@  , @/((30/10)+1)
#   compute in5  (1+232/56)*@ - 4.096*232/56 , (@ + 4.096*232/56)/(1+232/56)
#   compute in6  (1+120/56)*@ - 4.096*120/56 , (@ + 4.096*120/56)/(1+120/56)
   compute in7  ((6.8/10)+1)*@ , @/((6.8/10)+1)
...
  label  temp1  "CPU Temp"
  label  temp2  "M/B Temp"
#   ignore temp3
#   set temp1_over  60
#   set temp1_low   10
#   set temp2_over  50
#   set temp2_low   10
# Fans
# The CPU fan can be any of fan1, fan2 or fan3 - it's motherboard
# dependent. Same for the case fan.
  label  fan1 "CPU Fan"
  label  fan2 "Case Fan"
  ignore fan3
  ignore fan4
  ignore fan5
  set fan1_min 1000
  set fan2_min 1000
...
chip "k8temp-*"
  label temp1 "Core0 Temp"
  #label temp2 "Core0 Temp"
  ignore temp2
  label temp3 "Core1 Temp"
  #label temp4 "Core1 Temp"
  ignore temp4

Die Resultate können aber ja nach CPU sehr ungenau sein. Bei Brisbane CPUs (z.b. BE-2350) hilft es die k8temp.c zu patchen. Den Patch gibt es hier.

Achtung: Bisher nur für die Kernel-Sourcen Version 2.6.22-gentoo-r8 getestet!

Zuerst einmal den Patch attachment-0001.bin herunterladen. Anschließend mit folgender Kommandokette den Patch anwenden:

cd /usr/src/linux/drivers/hwmon
cp <download directory>/attachment-001.bin ./
patch k8temp.c attachment-0001.bin patch
cd /usr/src/linux
make && make modules_install
modprobe -r k8temp
modprobe k8temp

Jetzt sollten die Temperaturen korrekt angezeigt werden.

k8temp-pci-00c3
Adapter: PCI adapter
Core0 Temp:
            +15 C
Core1 Temp:
            +20 C

it8716-i2c-9191-228
 ERROR: Can't get adapter or algorithm?!?
VCore:     +1.12 V  (min =  +0.00 V, max =  +4.08 V)   
VDDR:      +3.41 V  (min =  +0.00 V, max =  +4.08 V)   
+5V:       +4.97 V  (min =  +0.00 V, max =  +6.85 V)   
+12V:     +12.10 V  (min =  +0.00 V, max = +16.32 V)   
5VSB:      +4.92 V  (min =  +0.00 V, max =  +6.85 V)   
VBat:      +3.23 V
CPU Fan:  1496 RPM  (min = 3245 RPM)                   ALARM
CPU Temp:    +14 C  (low  =    -1 C, high =  +127 C)   sensor = diode   
M/B Temp:    +27 C  (low  =    -1 C, high =  +127 C)   sensor = thermistor   
temp3:       +25 C  (low  =    -1 C, high =  +127 C)   sensor = thermistor   
vid:      +1.550 V

[Bearbeiten] AMD 64 Cool'n'Quiet

Dazu soll auf den entsprechenden Abschnitt des AMD64-Artikels in diesem Wiki verwiesen werden.

[Bearbeiten] PATA DMA

Im Kernel ATI IXP (CONFIG_BLK_DEV_ATIIXP) aktivieren: Device Drivers ---> ATA/ATAPI/MFM/RLL support ---> ATI IXP chipset IDE support.

Leider steht in der Beschreibung nicht dabei, dass der Treiber auch mit dem SB600 funktioniert, bei Zweifeln empfehle ich Quelltextlektüre ;)

[Bearbeiten] SATA

Das Board hat insgesamt 4 SATA Anschlüsse, die mit dem AHCI-Treiber funktionieren. ncq wird unterstützt, bei mir laufen die Platten aber nur im UDMA/133 Modus (mit ncq):

Linux Kernel Configuration: kernel 2.6
Device Drivers --->
  <*> Serial ATA (prod) and Parallel ATA (experimental) drivers  --->
    <*>   AHCI SATA support


Anmerkung: Sollte der erste Start des Kernels, I/O Fehler in Verbindung mit einiger ATi/AMD S-ATA Konstellationen hervorrufen (bei mir war es der Fall, in Verbindung mit einer SB600 auf einem K9A Platinum im AHCI sowie IDE Modus), denn mal versuchen den Kernel mit den Optionen "pci=nomsi" zu starten und bei erfolg ggf. den MSI Flag in den Kerneloptionen heraus zu nehmen.

[Bearbeiten] Probleme mit Onboard-Grafik (BIOS-Version <1501)

Falls man die Onboard-Grafik benutzt und der Bildschirm unmittelbar nach dem Start des X.Org/X11-Servers schwarz bleibt, hängt dies höchstwahrscheinlich mit dem DRI-Modus zusammen. Zur Lösung gibt es dann zwei Möglichkeiten: Entweder man verzichtet auf den Einsatz des fglrx in dem man in der Datei /etc/X11/xorg.conf in der Section "Device"

Driver "vesa"

einträgt oder ergänzt diese Sektion durch die Option

Option "nodri"

Verwendet man den vesa-Treiber leidet jedoch die Qualität der Videoausgabe ein wenig.

[Bearbeiten] Offene Fragen

  • Funktioniert bei der HDMI-Variante des Mainboards der HDMI-Ausgang?
    • Falls ja: lässt sich der HDMI-Ausgang gemeinsam mit dem DVI-Ausgang im Dualhead-Modus nutzen? (d.h. 2 Bildschirme, digital, evtl. xorg.conf-Beispiel ergänzen)
  • Hat jemand den TVout bei der HDMI Variante ans laufen gebracht?
'Persönliche Werkzeuge
Andere Sprachen