XOrg + SM-PDSME + nVidia

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • LauPro
  • Registratie: Augustus 2001
  • Laatst online: 22-08 15:57

LauPro

Prof Mierenneuke®

Topicstarter
Bij het upgraden van mijn workstation dacht ik een serverbord te kunnen gebruiken dat ik overhad, het betreft de PDSME van SuperMicro. Ik ben me bewust dat dit een beetje een B-merk is maar heb er op zich goede ervaringen mee als 'serverbord'. In mijn workstation echter heb ik een aantal videokaarten (4 om precies te zijn) voor mijn monitoren. Vol enthousiasme ontmaagde ik de 4 sloten en wilde het booten zonder X - om vervolgens een lange weg in de slaan met proberen de nVidia-driver zo gek te krijgen om het te laten werken.

Het verschil met dit bord tov van de vorige (simpel consumentending) is dat deze meerdere PCI-bussen heeft. Mijn vermoeden is dat dit XOrg een beetje over de zeik maakt, het punt is dat de nVidia-driver wel wordt geladen maar XOrg deze niet aan de device lijkt te kunnen koppelen.

FTR: ik heb er nu maar 1 kaart inzitten, een 32bit PCI-kaart in een 64bit PCI-X slot (133 Mhz). Als X start en faalt dan komt de textmodus niet meer terug, via ssh is de machine wel de bereiken. Ik heb verschillende kaarten geprobeerd, zelfde effect. Het systeem is verder stabiel.

Natuurlijk een kernelupdate gedaan, driverupdate, combinaties, het heeft geen effect. Specs:
Linux 2.6.24-gentoo-r8 #8 SMP PREEMPT Sat Jun 14 01:07:22 CEST 2008 x86_64 Intel(R) Core(TM)2 CPU

• xorg-x11 7.2
• nvidia-drivers 169.09-r1

Op andere fora heb ik wel wat mensen kunnen vinden die ditzelfde 'blackout' probleem hebben maar dat gaat dan om een IRQ-lockup - en die kan ik niet vinden. Is er iets specifieks met deze borden waardoor het niet werkt? Of moet X.org altijd een AGP of PCI-E kaart hebben als 'master'?
(EE) No devices detected.

Fatal server error:
no screens found

Inkoopacties - HENK terug! - Megabit
It is a war here, so be a general!


Acties:
  • 0 Henk 'm!

  • Bergen
  • Registratie: Maart 2001
  • Laatst online: 14-08 08:54

Bergen

Spellingscontroleur

Je kunt in /etc/X11/xorg.conf gewoon de correcte bussen opgeven toch?
BusID "bus-id"
This specifies the bus location of the graphics card. For PCI/AGP cards, the bus-id string has the form PCI:bus:device:function (e.g., "PCI:1:0:0" might be appropriate for an AGP card). This field is usually optional in single-head configurations when using the primary graphics card. In multi-head configurations, or when using a secondary graphics card in a single-head configuration, this entry is mandatory. Its main purpose is to make an unambiguous connection between the device section and the hardware it is representing. This information can usually be found by running the Xorg server with the -scanpci command line option.
Like so:
Section "Device"
	Identifier  "Card1"
	Driver      "nvidia"
	BusID       "PCI:0:1:0"
	Screen      1
EndSection

Section "Device"
	Identifier  "Card2"
	Driver      "nvidia"
	BusID       "PCI:1:1:0"
	Screen      1
EndSection
Et cetera. Hoe vind je de correcte bus:device:function id's? Via dmesg:

dmesg | less

Daar moeten de videokaarten ergens voorbij komen, inclusief de id's.

[edit]
Ja da's waar ook, lspci kan natuurlijk ook gewoon.

[ Voor 90% gewijzigd door Bergen op 14-06-2008 04:18 ]


Acties:
  • 0 Henk 'm!

  • LauPro
  • Registratie: Augustus 2001
  • Laatst online: 22-08 15:57

LauPro

Prof Mierenneuke®

Topicstarter
Ondanks dat herkent hij de kaarten niet:
lspci
02:01.0 VGA compatible controller: nVidia Corporation NV34 [GeForce FX 5200] (rev ff)
12:00.0 Ethernet controller: Intel Corporation 82573E Gigabit Ethernet Controller (Copper) (rev 03)
13:00.0 Ethernet controller: Intel Corporation 82573L Gigabit Ethernet Controller
14:04.0 VGA compatible controller: ATI Technologies Inc ES1000 (rev 02)
En xorg.conf:
Section "Device"
    Identifier     "Videocard0"
    Driver         "nvidia"
    BusID          "PCI:02:01:0"
EndSection

Inkoopacties - HENK terug! - Megabit
It is a war here, so be a general!


Acties:
  • 0 Henk 'm!

  • Bergen
  • Registratie: Maart 2001
  • Laatst online: 14-08 08:54

Bergen

Spellingscontroleur

Post anders even je hele xorg.conf...
maar verwacht geen instant reply van mij meer, ik ga slapen. ;)

[ Voor 50% gewijzigd door Bergen op 14-06-2008 04:22 ]


Acties:
  • 0 Henk 'm!

  • LauPro
  • Registratie: Augustus 2001
  • Laatst online: 22-08 15:57

LauPro

Prof Mierenneuke®

Topicstarter
Bij deze:
Section "ServerLayout"
    Identifier     "Layout0"
    Screen       "Screen0"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
EndSection

Section "Module"
#    Load           "dbe"
#    Load           "extmod"
    Load           "type1"
    Load           "freetype"
    Load           "glx"
EndSection

Section "ServerFlags"
    Option         "Xinerama" "0"
EndSection

Section "InputDevice"
    # generated from data in "/etc/conf.d/gpm"
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol"
    Option         "Device" "/dev/input/mice"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"
    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor0"
    VendorName     "Unknown"
#    ModelName      "Acer AL2423W"
    HorizSync       31.0 - 84.0
    VertRefresh     56.0 - 86.0
    ModeLine       "1680x1050" 186.7 1680 1728 1920 2248 1050 1054 1058 1093 +hsync +vsync
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Videocard0"
    Driver         "nvidia"
    BusID          "PCI:02:01:0"
EndSection


### primary
Section "Screen"
    Identifier     "Screen0"
    Device         "Videocard0"
    Monitor        "Monitor0"
    DefaultDepth    24
    SubSection     "Display"
        Depth       24
        Modes      "1280x1024"
    EndSubSection
EndSection

Section "Extensions"
    Option "Composite" "Enable"
EndSection
Normaal staan er nog een paar screens en kaarten in, maar nu heb ik de config ingekort tot dit en zelfs dan geen resultaat.

Ik krijg bijna een idee dat het een bug in xorg is en dat hij deze chipset niet ondersteunt. Zie ook bijv.:
# less Xorg.0.log
(II) PCI: PCI scan (all values are in hex)
(II) PCI: 00:00:0: chip 8086,2778 card 15d9,9180 rev c0 class 06,00,00 hdr 00
(II) PCI: 00:01:0: chip 8086,2779 card 0000,0000 rev c0 class 06,04,00 hdr 01
(II) PCI: 00:1c:0: chip 8086,27d0 card 0000,0000 rev 01 class 06,04,00 hdr 81
(II) PCI: 00:1c:4: chip 8086,27e0 card 0000,0000 rev 01 class 06,04,00 hdr 81
(II) PCI: 00:1c:5: chip 8086,27e2 card 0000,0000 rev 01 class 06,04,00 hdr 81
(II) PCI: 00:1d:0: chip 8086,27c8 card 15d9,9180 rev 01 class 0c,03,00 hdr 80
(II) PCI: 00:1d:1: chip 8086,27c9 card 15d9,9180 rev 01 class 0c,03,00 hdr 00
(II) PCI: 00:1d:2: chip 8086,27ca card 15d9,9180 rev 01 class 0c,03,00 hdr 00
(II) PCI: 00:1d:3: chip 8086,27cb card 15d9,9180 rev 01 class 0c,03,00 hdr 00
(II) PCI: 00:1d:7: chip 8086,27cc card 15d9,9180 rev 01 class 0c,03,20 hdr 00
(II) PCI: 00:1e:0: chip 8086,244e card 0000,0000 rev e1 class 06,04,01 hdr 01
(II) PCI: 00:1f:0: chip 8086,27b8 card 15d9,9180 rev 01 class 06,01,00 hdr 80
(II) PCI: 00:1f:1: chip 8086,27df card 15d9,9180 rev 01 class 01,01,8a hdr 00
(II) PCI: 00:1f:2: chip 8086,27c1 card 15d9,9180 rev 01 class 01,06,01 hdr 00
(II) PCI: 00:1f:3: chip 8086,27da card 15d9,9180 rev 01 class 0c,05,00 hdr 00
(WW) pciGenFindNext:  primary bus mismatch on PCI bridge 0x00010000 (0x01, 0x00)
(II) PCI: 01:00:0: chip 8086,0329 card 0000,0000 rev 09 class 06,04,00 hdr 81
(II) PCI: 01:00:1: chip 8086,0326 card 15d9,9180 rev 09 class 08,00,20 hdr 80
(WW) pciGenFindNext:  primary bus mismatch on PCI bridge 0x00010200 (0x01, 0x00)
(II) PCI: 01:00:2: chip 8086,032a card 0000,0000 rev 09 class 06,04,00 hdr 81
(II) PCI: 01:00:3: chip 8086,0327 card 15d9,9180 rev 09 class 08,00,20 hdr 80
(II) PCI: 12:00:0: chip 8086,108c card 15d9,108c rev 03 class 02,00,00 hdr 00
(II) PCI: 13:00:0: chip 8086,109a card 15d9,109a rev 00 class 02,00,00 hdr 00
(II) PCI: 14:04:0: chip 1002,515e card 15d9,9180 rev 02 class 03,00,00 hdr 00
(II) PCI: End of PCI scan
(II) Intel Bridge workaround enabled
(WW) Misconfigured PCI bridge 1:0:0 (1,0)
(WW) Misconfigured PCI bridge 1:0:2 (1,0)
V.s.
# lspci
00:00.0 Host bridge: Intel Corporation E7230/3000/3010 Memory Controller Hub (rev c0)
00:01.0 PCI bridge: Intel Corporation E7230/3000/3010 PCI Express Root Port (rev c0)
00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 01)
00:1c.4 PCI bridge: Intel Corporation 82801GR/GH/GHM (ICH7 Family) PCI Express Port 5 (rev 01)
00:1c.5 PCI bridge: Intel Corporation 82801GR/GH/GHM (ICH7 Family) PCI Express Port 6 (rev 01)
00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #1 (rev 01)
00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #2 (rev 01)
00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #3 (rev 01)
00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #4 (rev 01)
00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 01)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev e1)
00:1f.0 ISA bridge: Intel Corporation 82801GB/GR (ICH7 Family) LPC Interface Bridge (rev 01)
00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller (rev 01)
00:1f.2 SATA controller: Intel Corporation 82801GR/GH (ICH7 Family) SATA AHCI Controller (rev 01)
00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 01)
01:00.0 PCI bridge: Intel Corporation 6700PXH PCI Express-to-PCI Bridge A (rev 09)
01:00.1 PIC: Intel Corporation 6700/6702PXH I/OxAPIC Interrupt Controller A (rev 09)
01:00.2 PCI bridge: Intel Corporation 6700PXH PCI Express-to-PCI Bridge B (rev 09)
01:00.3 PIC: Intel Corporation 6700PXH I/OxAPIC Interrupt Controller B (rev 09)
02:01.0 VGA compatible controller: nVidia Corporation NV34 [GeForce FX 5200] (rev ff)
12:00.0 Ethernet controller: Intel Corporation 82573E Gigabit Ethernet Controller (Copper) (rev 03)
13:00.0 Ethernet controller: Intel Corporation 82573L Gigabit Ethernet Controller
14:04.0 VGA compatible controller: ATI Technologies Inc ES1000 (rev 02)
Zoals je ziet staat 02:02:01 VGA niet in de detectielijst van Xorg :? .

edit: het is definitief, X herkent de bus niet :( :
# X -scanpci
Probing for PCI devices (Bus:Device:Function)

(0:0:0) unknown card (0x15d9/0x9180) using a Intel Corporation E7230/3000/3010 Memory Controller Hub
(0:1:0) Intel Corporation E7230/3000/3010 PCI Express Root Port
(0:28:0) Intel Corporation 82801G (ICH7 Family) PCI Express Port 1
(0:28:4) Intel Corporation 82801GR/GH/GHM (ICH7 Family) PCI Express Port 5
(0:28:5) Intel Corporation 82801GR/GH/GHM (ICH7 Family) PCI Express Port 6
(0:29:0) unknown card (0x15d9/0x9180) using a Intel Corporation 82801G (ICH7 Family) USB UHCI #1
(0:29:1) unknown card (0x15d9/0x9180) using a Intel Corporation 82801G (ICH7 Family) USB UHCI #2
(0:29:2) unknown card (0x15d9/0x9180) using a Intel Corporation 82801G (ICH7 Family) USB UHCI #3
(0:29:3) unknown card (0x15d9/0x9180) using a Intel Corporation 82801G (ICH7 Family) USB UHCI #4
(0:29:7) unknown card (0x15d9/0x9180) using a Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller
(0:30:0) Intel Corporation 82801 PCI Bridge
(0:31:0) unknown card (0x15d9/0x9180) using a Intel Corporation 82801GB/GR (ICH7 Family) LPC Interface Bridge
(0:31:1) unknown card (0x15d9/0x9180) using a Intel Corporation 82801G (ICH7 Family) IDE Controller
(0:31:2) unknown card (0x15d9/0x9180) using a Intel Corporation 82801GR/GH (ICH7 Family) Serial ATA Storage Controller AHCI
(0:31:3) unknown card (0x15d9/0x9180) using a Intel Corporation 82801G (ICH7 Family) SMBus Controller
(1:0:0) Intel Corporation 6700PXH PCI Express-to-PCI Bridge A
(1:0:1) unknown card (0x15d9/0x9180) using a Intel Corporation 6700/6702PXH I/OxAPIC Interrupt Controller A
(1:0:2) Intel Corporation 6700PXH PCI Express-to-PCI Bridge B
(1:0:3) unknown card (0x15d9/0x9180) using a Intel Corporation 6700PXH I/OxAPIC Interrupt Controller B
(18:0:0) unknown card (0x15d9/0x108c) using a Intel Corporation 82573E Gigabit Ethernet Controller (Copper)
(19:0:0) unknown card (0x15d9/0x109a) using a Intel Corporation 82573L Gigabit Ethernet Controller
(20:4:0) unknown card (0x15d9/0x9180) using a ATI Technologies Inc ES1000


edit2, zie ook de output van lspci -t:
# lspci -t
-[0000:00]-+-00.0
           +-01.0-[0000:01-03]--+-[0000:02]---01.0
           |                    \-[0000:01]-+-00.0-[0000:00]--
           |                                +-00.1
           |                                +-00.2-[0000:00]--
           |                                \-00.3
Daar zie je dus dat onder de niet herkende '(WW) pciGenFindNext: primary bus mismatch on PCI bridge 0x00010200 (0x01, 0x00)' de 02:01:01-device zit.

[ Voor 17% gewijzigd door LauPro op 14-06-2008 14:44 ]

Inkoopacties - HENK terug! - Megabit
It is a war here, so be a general!


Acties:
  • 0 Henk 'm!

  • LauPro
  • Registratie: Augustus 2001
  • Laatst online: 22-08 15:57

LauPro

Prof Mierenneuke®

Topicstarter
Inmiddels heb ik het opgegeven, want er is geen stable beschikbaar (alleen GIT). Het probleem heb ik wel in kaart kunnen brengen.

XOrg (of eigenlijk XFree86) was gemaakt in een tijdperk dat er nauwelijks een goede API beschikbaar was ter inventarisatie van de PCI-bus. Dit is van belang om de juiste drivers aan de juiste devices te koppelen. Men heeft toen een hele premature implementatie gemaakt die tot op heden min of meer ongewijzigd de tand des tijds heeft doorstaan. Bij deze implementatie is men er vanuit gegaan dat er 1 'PCI domain' is (en voor de BTW: AGP is ook een PCI-bus).

Tegenwoordig (zoals ook op dit bord) kunnen er wel 2 of 3 PCI domains zijn. Dit doet men omdat er zo meer bandbreedte beschikbaar is tussen de devices (dus bijv. een RAID-controller heeft een dedicated bus met het chipset en de cpu, de keerzijde is wel dat de software dit moet snappen. Gelukkig gaat de driverafhandeling van RAID-controllers onder linux geheel in de kernel (en die is al enige tijd prima op orde).

Nu is er binnen XOrg een hele ranzige soort van wrappingfunctie die in sommige gevallen uitkomst biedt. De echte oplossing is een rewrite van de PCI-adresseringsfuncties binnen drivers en de xorg-server. Men is er nog niet uit of ze de functies omtrend de PCI bus van de kernel/platform willen gebruiken.

Al met al moet XOrg dus nog een grote slag slaan, want multi domain PCI busses worden steeds meer mainstream. En ook als je 'maar' 1 kaart hebt kan je die nu dus nog niet aansturen in sommige gevallen.

Zie ook:
http://www.x.org/wiki/PciReworkProposal
http://www.x.org/wiki/PciReworkHowto

Inkoopacties - HENK terug! - Megabit
It is a war here, so be a general!


Acties:
  • 0 Henk 'm!

  • LauPro
  • Registratie: Augustus 2001
  • Laatst online: 22-08 15:57

LauPro

Prof Mierenneuke®

Topicstarter
Een update: Inmiddels is dit opgelost in xorg-server-1.5 en hoger.

Inkoopacties - HENK terug! - Megabit
It is a war here, so be a general!

Pagina: 1