Xorg setup problem with extra display adaptor

Please post any bugs you have found
Post Reply
Message
Author
marksouth2000
Posts: 622
Joined: Wed 05 Apr 2006, 20:43

Xorg setup problem with extra display adaptor

#1 Post by marksouth2000 »

This applies to 1.08r1, but the result is the same with alpha-11-april-2006.

Situation:
Machine has 128Mb Ram, 550MHz PIII, onboard i810 graphics, and a 3dfx PCI graphics card. The onboard graphics are disabled in the BIOS and the monitor is connected to the PCI graphics card.

Behaviour:
On boot from the liveCD, the setup process works normally until the X setup phase. The X.org configure step appears to identify the settings for the onboard adaptor instead of the PCI one, and attempts to switch output to the other display. X then fails with a "stack underflow" error.

Control info:
1. With 1.08r1, Everything works normally if the PCI graphics card is not present and the monitor is connected to the onboard graphics adaptor. The boot fails with alpha-11-april-2006, but that seems to be a driver issue (possibly memory related).

2. The same machine with the PCI graphics adaptor works fine (if appallingly slowly!) with Mepis 3.3, and the display is autoset to 1024x768 with 16-bit colour at 70Hz refresh.

3. Choosing the Xvesa option instead of X.org at the X config step with the PCI adaptor in use results in correct behaviour.

Conclusion:
Either X.org does not identify the correct driver (but does Mepis use Xfree instead?) or Puppy is not checking that it is configuring the correct display.

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#2 Post by BarryK »

You need to examine /etc/X11/xorg.conf to find out if both are being detected.
I'm only guessing, as I have only ever had on-board graphics, but perhaps
xorg.conf will have identified two interfaces and it is just a matter of changing
a line.

marksouth2000
Posts: 622
Joined: Wed 05 Apr 2006, 20:43

...but it hangs....

#3 Post by marksouth2000 »

Barry, thanks for your response.
BarryK wrote:You need to examine /etc/X11/xorg.conf to find out if both are being detected.
Unfortunately, that's easier said than done. The machine hangs hard on the black screen....
BarryK wrote:I'm only guessing, as I have only ever had on-board graphics, but perhaps xorg.conf will have identified two interfaces and it is just a matter of changing a line.
A thought: is there any way that the chosen interfaces could be selected by the user at some stage of the config process?

Anyway, I'd rate this bug as a low priority, it's probably an unusual hardware setup. Shame though, the Voodoo 2000 (picked up at the local charity shop for about an Aussie dollar) was the rolls-royce of graphics cards about a decade ago :)

User avatar
rarsa
Posts: 3053
Joined: Sun 29 May 2005, 20:30
Location: Kitchener, Ontario, Canada
Contact:

Re: ...but it hangs....

#4 Post by rarsa »

marksouth2000 wrote:Unfortunately, that's easier said than done. The machine hangs hard on the black screen....
Here is a way of doing it:
1. Boot puppy from the LiveCD creating a new pup001 file.
2. Go through the setup process in Xorg.
3. When your computer fails reboot to the LiveCD 100% in ram
4. When you get to configuring video select XVesa
5. finish the configuration and then look at the xorg.conf file.
[url]http://rarsa.blogspot.com[/url] Covering my eclectic thoughts
[url]http://www.kwlug.org/blog/48[/url] Covering my Linux How-to

marksouth2000
Posts: 622
Joined: Wed 05 Apr 2006, 20:43

Re: ...but it hangs....

#5 Post by marksouth2000 »

rarsa wrote:
marksouth2000 wrote:Unfortunately, that's easier said than done. The machine hangs hard on the black screen....
Here is a way of doing it:
1. Boot puppy from the LiveCD creating a new pup001 file.
2. Go through the setup process in Xorg.
3. When your computer fails reboot to the LiveCD 100% in ram
4. When you get to configuring video select XVesa
5. finish the configuration and then look at the xorg.conf file.
That's impressively sneaky. I'll try it when the chance appears.

In the mean time, I have established that it's only X.org that fails with the tdfx driver. Xfree using the tdfx driver works. I have successfully run the 3dfx Voodoo PCI card with Mepis 3.3, Knoppix 3.8.1, and Vector Linux 4.3. Vector 5.1 crunches out - they switched to X.org for 5.1.

Sooo, it might be that there's a recently introduced bug in the tdfx driver that comes with X.org. I'll have to check their mailing lists. Somebody remind me why I like Linux again, please.

User avatar
MU
Posts: 13649
Joined: Wed 24 Aug 2005, 16:52
Location: Karlsruhe, Germany
Contact:

#6 Post by MU »

in the xorgwizard, before it starts the testscreen, hit ctrl-alt-F2.
log in in this second console as root (no password).
type
mp /etc/X11/xorg.conf

set the line "driver" from "i810" to "tdfx"
Save with ctrl-a

switch back ctrl-alt-F1 and proceed to the testscreen.

Does that work?
If yes, here a small bonbon for all the trouble:
http://www.murga.org/~puppy/viewtopic.php?p=48277#48277

Mark

marksouth2000
Posts: 622
Joined: Wed 05 Apr 2006, 20:43

Problem diagnosis so far

#7 Post by marksouth2000 »

Mark, thanks for your suggestions. This a.m. I had a few minutes to st with the machine and try fiddling with X.
MU wrote:in the xorgwizard, before it starts the testscreen, hit ctrl-alt-F2.
log in in this second console as root (no password).
type
mp /etc/X11/xorg.conf
Curiously, switching console is what occurred to me too. Except it's just Alt-F2, because X isn't running yet.

So it goes like this: I tell the X video wizard I want to use Xorg. Then I let it build an xorg.cong, then I accept the default choice of 1024x768x16, and tell it to test. The test fails with a buffer underrun as usual.

Now I hit Alt-F2, log in as root, and look at /var/log/Xorg.0.log, which finishes with a remark about "failure: Screen1 in ServerLayout not found" or similar words.

Then, looking at xorg.conf, there is a Screen1 defined as to the right of Screen0. So, using vi, I comment out that line, and save the changes. Then I type Alt-F1 to return to where the xvideowizard is patiently waiting for me to make up my mind. I tell it to go ahead and use Xorg, and, voila!, Xorg runs at 1024x768x16 at 85Hz.
set the line "driver" from "i810" to "tdfx"
The X config correctly identified 2 video cards and set up Card0 as the tdfx and Card1 as the i810, but does not attempt to use Card1 in the ServerLayout, so no problem with that.

I can't be totally precise about the contents of /var/log/Xorg.0.log or of xorg.conf becaue they both change upon restarting Xorg.

The Screen1 line in the initial xorg.conf appears to be written from the xorgwizard script at line 281:

Code: Select all

if [ ! "`echo -n "$HEAD1ST" | grep "Screen1" | grep "Right Of" | grep "Screen0"`" = "" ];then
   HEAD1ST="#${HEAD1ST}"
The next experiment is to find a spare monitor to plug in so there is one connected to each card and see what happens.

Thanks for everyone's input and encouragement so far.

marksouth2000
Posts: 622
Joined: Wed 05 Apr 2006, 20:43

Re: Problem diagnosis so far

#8 Post by marksouth2000 »

marksouth2000 wrote:The next experiment is to find a spare monitor to plug in so there is one connected to each card and see what happens.
Tried that today. No dice, same result as before. Did notice that although xorgwizard adds a "Screen1" line in the ServerLayout section of xorg.conf, there is no corresponding "Screen" section defining "Screen1". I tried adding one by hand but without success.

Has anyone else managed to run Puppy with two cards and possibly two monitors?

Finally, I remarked earlier that this works in Xfree, but not in Xorg: that's because Xfree does not attempt to set up multiple screens by default, whereas Xorg does. Apparently.

Post Reply