Re: [Xpert]Re: SiS630 - the neverending story
Just tried the latest CVS (17 dec 2001) on a SiS630 connected to a normal CRT. X doesn't start at all :-) Attached there is the log I found in /var/log. Do you have any hints? Bye, Giuseppe This is a pre-release version of XFree86, and is not supported in any way. Bugs may be reported to [EMAIL PROTECTED] and patches submitted to [EMAIL PROTECTED] Before reporting bugs in pre-release versions, please check the latest version in the XFree86 CVS repository (http://www.XFree86.Org/cvs) XFree86 Version 4.1.99.2 / X Window System (protocol Version 11, revision 0, vendor release 6510) Release Date: xx December 2001 If the server is older than 6-12 months, or if your card is newer than the above date, look for a newer version before reporting problems. (See http://www.XFree86.Org/) Build Operating System: Linux 2.4.16 i686 [ELF] Module Loader present (==) Log file: /var/log/XFree86.0.log, Time: Wed Dec 19 14:47:34 2001 (==) Using config file: /etc/X11/XF86Config-4 Markers: (--) probed, (**) from config file, (==) default setting, (++) from command line, (!!) notice, (II) informational, (WW) warning, (EE) error, (NI) not implemented, (??) unknown. (==) ServerLayout Default Layout (**) |--Screen Monitor (0) (**) | |--Monitor SyncMaster (**) | |--Device SiS 630 (**) |--Input Device Generic Keyboard (**) Option XkbSymbols en_US(pc104)+it (**) XKB: symbols: en_US(pc104)+it (**) Option XkbRules xfree86 (**) XKB: rules: xfree86 (**) Option XkbModel pc104 (**) XKB: model: pc104 (**) Option XkbLayout us (**) XKB: layout: us (==) Keyboard: CustomKeycode disabled (**) |--Input Device Mouse USB (**) |--Input Device TouchPad (WW) The directory /usr/lib/X11/fonts/misc does not exist. Entry deleted from font path. (WW) The directory /usr/lib/X11/fonts/cyrillic does not exist. Entry deleted from font path. (WW) The directory /usr/lib/X11/fonts/100dpi/ does not exist. Entry deleted from font path. (WW) The directory /usr/lib/X11/fonts/75dpi/ does not exist. Entry deleted from font path. (WW) The directory /usr/lib/X11/fonts/Type1 does not exist. Entry deleted from font path. (WW) The directory /usr/lib/X11/fonts/Speedo does not exist. Entry deleted from font path. (WW) The directory /usr/lib/X11/fonts/100dpi does not exist. Entry deleted from font path. (WW) The directory /usr/lib/X11/fonts/75dpi does not exist. Entry deleted from font path. (**) FontPath set to unix/:7100 (==) RgbPath set to /usr/X11R6/lib/X11/rgb (==) ModulePath set to /usr/X11R6/lib/modules (**) Option Xinerama true (**) Xinerama: enabled (--) using VT number 7 (II) Open APM successful Couldn't open RGB_DB '/usr/X11R6/lib/X11/rgb' (II) Module ABI versions: XFree86 ANSI C Emulation: 0.1 XFree86 Video Driver: 0.5 XFree86 XInput driver : 0.3 XFree86 Server Extension : 0.1 XFree86 Font Renderer : 0.3 (II) Loader running on linux (II) LoadModule: bitmap (II) Loading /usr/X11R6/lib/modules/fonts/libbitmap.a (II) Module bitmap: vendor=The XFree86 Project compiled for 4.1.99.2, module version = 1.0.0 Module class: XFree86 Font Renderer ABI class: XFree86 Font Renderer, version 0.3 (II) Loading font Bitmap (II) LoadModule: pcidata (II) Loading /usr/X11R6/lib/modules/libpcidata.a (II) Module pcidata: vendor=The XFree86 Project compiled for 4.1.99.2, module version = 0.1.0 ABI class: XFree86 Video Driver, version 0.5 (II) PCI: Probing config type using method 1 (II) PCI: Config type is 1 (II) PCI: stages = 0x03, oldVal1 = 0x, mode1Res1 = 0x8000 (II) PCI: PCI scan (all values are in hex) (II) PCI: 00:00:0: chip 1039,0630 card , rev 11 class 06,00,00 hdr 80 (II) PCI: 00:00:1: chip 1039,5513 card 1039,5513 rev d0 class 01,01,80 hdr 80 (II) PCI: 00:01:0: chip 1039,0008 card , rev 00 class 06,01,00 hdr 80 (II) PCI: 00:01:1: chip 1039,0900 card 1043,1455 rev 80 class 02,00,00 hdr 00 (II) PCI: 00:01:2: chip 1039,7001 card 1039,7001 rev 07 class 0c,03,10 hdr 00 (II) PCI: 00:01:3: chip 1039,7001 card 1039,7000 rev 07 class 0c,03,10 hdr 00 (II) PCI: 00:01:4: chip 1039,7018 card 1043,1453 rev 01 class 04,01,00 hdr 00 (II) PCI: 00:01:6: chip 1039,7013 card 1043,1456 rev a0 class 07,03,00 hdr 00 (II) PCI: 00:02:0: chip 1039,0001 card , rev 00 class 06,04,00 hdr 01 (II) PCI: 00:0a:0: chip 1180,0476 card 4000, rev 80 class 06,07,00 hdr 82 (II) PCI: 00:0a:1: chip 1180,0476 card 4800, rev 80 class 06,07,00 hdr 82 (II) PCI: 01:00:0: chip 1039,6300 card 1043,1452 rev 11 class 03,00,00 hdr 00 (II) PCI: End of PCI scan (II) LoadModule: scanpci (II) Loading /usr/X11R6/lib/modules/libscanpci.a (II) Module scanpci: vendor=The XFree86 Project compiled for 4.1.99.2, module version = 0.1.0 ABI class: XFree86 Video Driver, version 0.5 (II) UnloadModule: scanpci (II) Unloading /usr/X11R6/lib/modules/libscanpci.a (II) Host-to-PCI bridge:
Re: [Xpert]Re: SiS630 - the neverending story
This seems to be very strange since X 4.1.0 works perfectly with this XF86Config-4. I have an ASUS A1000 laptop. I will restart it using 16bpp later (now I cannot) and I'll try to look for a newer BIOS. I will let you know, thanks. Bye, Giuseppe Il Wed, Dec 19, 2001 at 05:36:31PM +0100, Egbert Eich ha scritto: Your BIOS doesn't support 1024x768 with 24bpp. Egbert. Giuseppe Sacco writes: Just tried the latest CVS (17 dec 2001) on a SiS630 connected to a normal CRT. X doesn't start at all :-) Attached there is the log I found in /var/log. Do you have any hints? Bye, Giuseppe [...] ___ Xpert mailing list [EMAIL PROTECTED] http://XFree86.Org/mailman/listinfo/xpert
Re: [Xpert]Re: SiS630 - the neverending story
Ok, I just had a look to starting it with 16bpp. It works on CRT, it doesn't on the internal LCD. I also found a BIOS upgrade. I will install it and I will let you know. Bye and thanks, Giuseppe Il Wed, Dec 19, 2001 at 05:08:29PM +0100, Giuseppe Sacco ha scritto: This seems to be very strange since X 4.1.0 works perfectly with this XF86Config-4. I have an ASUS A1000 laptop. I will restart it using 16bpp later (now I cannot) and I'll try to look for a newer BIOS. I will let you know, thanks. Bye, Giuseppe Il Wed, Dec 19, 2001 at 05:36:31PM +0100, Egbert Eich ha scritto: Your BIOS doesn't support 1024x768 with 24bpp. Egbert. ___ Xpert mailing list [EMAIL PROTECTED] http://XFree86.Org/mailman/listinfo/xpert
Re: [Xpert]Re: SiS630 - the neverending story
GOT IT! Every LCD problem was related to some BIOS issue! After upgrading to the BIOS version 1.10a XFree 4.1.0 and 4.1.99.2 are working perfectly with the SiS driver. Thanks Egbert. Giuseppe Il Wed, Dec 19, 2001 at 06:17:02PM +0100, Giuseppe Sacco ha scritto: Ok, I just had a look to starting it with 16bpp. It works on CRT, it doesn't on the internal LCD. I also found a BIOS upgrade. I will install it and I will let you know. Bye and thanks, Giuseppe Il Wed, Dec 19, 2001 at 05:08:29PM +0100, Giuseppe Sacco ha scritto: This seems to be very strange since X 4.1.0 works perfectly with this XF86Config-4. I have an ASUS A1000 laptop. I will restart it using 16bpp later (now I cannot) and I'll try to look for a newer BIOS. I will let you know, thanks. Bye, Giuseppe Il Wed, Dec 19, 2001 at 05:36:31PM +0100, Egbert Eich ha scritto: Your BIOS doesn't support 1024x768 with 24bpp. Egbert. ___ Xpert mailing list [EMAIL PROTECTED] http://XFree86.Org/mailman/listinfo/xpert
[Xpert]Re: SiS630 - the neverending story
Hi I thought I'd give it a try and help you out, and mine has a LVDS bridge too Rune Petersen Date: Mon, 17 Dec 2001 06:58:01 +0100 From: Thomas Winischhofer [EMAIL PROTECTED] To: [EMAIL PROTECTED] Subject: [Xpert]Re: SiS630 - the neverending story Now that it's Monday and you all read list mail again: I fixed the sisfb driver for use with LVDS video (LCD) bridges including the CHROMTEL 7005 TV converter. A lot of laptops using the SiS630 do not use the SiS301 but this one instead. The driver has only one problem: It doesn't know about timings, refresh rates and other data specific for various LCD panels and TV connectors. Instead, the current code contains empty tables for this. I inserted data read out from the BIOS to make it run on my machine. This is, of course, no solution. (I have only one machine with one 1024x768 LCD panel, so I can't ever find out all combinations for other, larger or smaller panels.) I will release a (quite huge) patch on the kernel list within the next few days where I will also change the driver to use the BIOS data (like the X driver does). Otherwise it will never work with bidges other than the SiS301. By the way: I had to implement about 200 changes into the code because somebody tried to implement support for SiS301B and 302 bridges, and broke LVDS instead. This code that this somebody wrote could by no means ever have worked on _any_ machine with a bridge other than SiS301 because of major programming glitches (using pointers and arrays doesn't seem to be that simple :) ). Have patience, Thomas PS: In the meantime I kindly ask you to test the driver published yesterday (available on my homepage, link below, follow link Linux on Gericom... and scroll down). Please check the log for what video bridge the driver detects and report your results. I am waiting impatiently. On my machine (SiS630 rev 31, LVDS+CHROMTEL bridge) the driver works perfectly, as long as I keep the TurboQueue disabled. I used it the last two days (day = 18 hours) and stress-tested it. Absolutely no problems here. -- Thomas Winischhofer Vienna/Austria mailto:[EMAIL PROTECTED] *** http://www.webit.com/tw XFree86.0.log Description: Binary data
[Xpert]Re: SiS630 - the neverending story
Now that it's Monday and you all read list mail again: I fixed the sisfb driver for use with LVDS video (LCD) bridges including the CHROMTEL 7005 TV converter. A lot of laptops using the SiS630 do not use the SiS301 but this one instead. The driver has only one problem: It doesn't know about timings, refresh rates and other data specific for various LCD panels and TV connectors. Instead, the current code contains empty tables for this. I inserted data read out from the BIOS to make it run on my machine. This is, of course, no solution. (I have only one machine with one 1024x768 LCD panel, so I can't ever find out all combinations for other, larger or smaller panels.) I will release a (quite huge) patch on the kernel list within the next few days where I will also change the driver to use the BIOS data (like the X driver does). Otherwise it will never work with bidges other than the SiS301. By the way: I had to implement about 200 changes into the code because somebody tried to implement support for SiS301B and 302 bridges, and broke LVDS instead. This code that this somebody wrote could by no means ever have worked on _any_ machine with a bridge other than SiS301 because of major programming glitches (using pointers and arrays doesn't seem to be that simple :) ). Have patience, Thomas PS: In the meantime I kindly ask you to test the driver published yesterday (available on my homepage, link below, follow link Linux on Gericom... and scroll down). Please check the log for what video bridge the driver detects and report your results. I am waiting impatiently. On my machine (SiS630 rev 31, LVDS+CHROMTEL bridge) the driver works perfectly, as long as I keep the TurboQueue disabled. I used it the last two days (day = 18 hours) and stress-tested it. Absolutely no problems here. -- Thomas Winischhofer Vienna/Austria mailto:[EMAIL PROTECTED] *** http://www.webit.com/tw ___ Xpert mailing list [EMAIL PROTECTED] http://XFree86.Org/mailman/listinfo/xpert
[Xpert]Re: SiS630 - the neverending story
Addendum: Egbert seems to be right with his assumption that X is spinning in a waiting loop within the 2D engine when switching back to X from another VT. How do I know this? Simply set the option NoAccel in XF86Config-4 - and it will work! I think we will have to reset the accelleration engine either when switching away from the server or when switching back. I am currently trying to find a awy to do this (yet unsuccessfully...) Thomas -- Thomas Winischhofer Vienna/Austria Check it out: mailto:[EMAIL PROTECTED] *** http://www.webit.com/tw ___ Xpert mailing list [EMAIL PROTECTED] http://XFree86.Org/mailman/listinfo/xpert
[Xpert]Re: SiS630 - the neverending story
Is everybody on vacation? :) I wrote: Addendum: Egbert seems to be right with his assumption that X is spinning in a waiting loop within the 2D engine when switching back to X from another VT. How do I know this? Simply set the option NoAccel in XF86Config-4 - and it will work! Even better and easier: Set Option TurboQueue to false (and leave NoAccel out) - this gives you acceleration and does not freeze X on switching VTs. In case the driver does not work, try removing all ModeLine statements from your XF86Config-4 file. I have been running the driver the entire day, with a lot of switching VTs and APM events, it never crashed or distorted the display. Thomas PS: I am currently debugging the sisfb driver - this piece of sh*t is pure chaos. In init.c are three (!) different (!) procedures to detect the video bridge - two of which work, one is completely out of date. The driver oopses and melts the screen on my machine because it detects a SiS302B video bridge (which is obviously wrong, since my machine has a LVDS bridge, which is correctly detected by the X driver) and tries to initialize the CRT1 (!) group - which I believe is meant for 310 and 315 chipsets only. Because of this, the driver (correctly) skips initializing the pointers to its 310-refreshtables - but later (because of his erratious assumption of a SiS302B bridge) tries to access them anyway. On the other hand, there are lots of wonderful LVDS tables in the files, but the driver simply ignores them after all - there is not a single reference to these tables! I can't imagine a single machine with a SiS630 (and possibly a LCD panel) where this driver does not crash! (Rene?) I believe, sisfb is the result of a lot of people fixing it for their very own machines only, breaking stuff for others. Who am I talking to by the way? I think I need some sleep. -- Thomas Winischhofer Vienna/Austria mailto:[EMAIL PROTECTED] *** http://www.webit.com/tw ___ Xpert mailing list [EMAIL PROTECTED] http://XFree86.Org/mailman/listinfo/xpert
[Xpert]Re: SiS630 - the neverending story
(Sorry for creating a monologue here...) Well, after porting Egbert's changes into the 4.1 driver, this situation is as follows: 1) Screen gets initialized correctly - as far as I can see. I have not yet recompiled the kernel to try without vesafb, but I can switch modes in X (CTRL-ALT-+/-). 640x480 flickers a little bit (looks like a CRT when the refresh rate is too low), but it works basically. 2) Switching between VTs and X causes the machine to somewhat freeze randomly when switching back to X, i.e. mouse and keyboard dead, network ok. The system seems alive and I can see the X screen, but I can only power down the box by pressing the power switch. 3) APM causes trouble, too. Suspend works, but during resume the machine freezes (for real this time)... resume process is never completed (PCMCIA does not come up again) and even the network is dead. Hm. The simularities seem to be point out a problem when re-initializing the screen (switching back from VT to X - resume). Furthermore, the problems are exactly the same for CVS version. Maybe I was too fast with my conclusions Thomas -- Thomas Winischhofer Vienna/Austria Check it out: mailto:[EMAIL PROTECTED] http://www.webit.com/tw ___ Xpert mailing list [EMAIL PROTECTED] http://XFree86.Org/mailman/listinfo/xpert
[Xpert]Re: SiS630 - the neverending story
Some further details on my testing: I have now compiled the current CVS driver for 4.1 (required just changing one line in sis_driver.c to get rid of xf86ReadDomainMemory() (if i recall correctly) and replacing it with (old) xf86ReadBIOS(). I don't know whether or not this is proper - but the driver does not complain about any unresolved symbols and comes up fine. I still see the following issues: 1) Disabling the VESA framebuffer for console mode did not change anything. The driver still makes the computer freeze every second or third time after switching to VTs and back (actually, the problem is switching back to X). I see green vertical lines of about 30 (?) pixels in height on top of the - otherwise correctly displayed - screen; mouse and keyboard dead, machine otherwise alive. (It seems what I see there is the text screen displayed in gfx mode.) I know when lockup it going to happen because the X screen shows up slightly quicker after pressing ALT-F7 than when it works. 2) APM: This works - sometimes. Resuming locks up the box about every second or third time. This seems to lock the machine hard, ie no network available any more. 3) I included Stuart Young's VesaFBHack patch and this makes the driver run correctly. I switched to VTs and suspended/resumed for about twenty times each now, flawlessly. I have not taken a closer look at the driver's current code yet, but I somewhat doubt that it's just are hardware problem. Even if the display doesn't get initialized correctly - and this is exactly what Stuart's patch skips - , this shouldn't cause a lock-up, am I right? Well, I'll keep testing. Thomas PS: Rene, the driver I mailed to you is the one I am talking about here, ie for 4.1 ___ Xpert mailing list [EMAIL PROTECTED] http://XFree86.Org/mailman/listinfo/xpert
Re: [Xpert]Re: SiS630 - the neverending story
Thanks for replying, Egbert! On Thursday 13 December 2001 16:06, you wrote: Thomas Winischhofer writes: Well, after porting Egbert's changes into the 4.1 driver, this situation is as follows: 1) Screen gets initialized correctly - as far as I can see. I have not yet recompiled the kernel to try without vesafb, but I can switch modes in X (CTRL-ALT-+/-). 640x480 flickers a little bit (looks like a CRT when the refresh rate is too low), but it works basically. 2) Switching between VTs and X causes the machine to somewhat freeze randomly when switching back to X, i.e. mouse and keyboard dead, network ok. The system seems alive and I can see the X screen, but I can only power down the box by pressing the power switch. Do you have the impression that X is frozen or could it also be gpm which is still running and blocks the input devices? I don't have gpm running, so I suppose that's not the reason. Can you kill X from remote? I am sure i could do this (am at work and have no proper network here). The harddisk seems to keep writing log entries, so I really believe that the System is alive. I will test pinging the box (at least that's what the network here is good enough for). Could you please run strace on the Xserver to see where it is spinning? Well, erm... I am not really a hacker but I'll try. Does this require any special environment, any debug modes and such? Recompiling? 3) APM causes trouble, too. Suspend works, but during resume the machine freezes (for real this time)... resume process is never completed (PCMCIA does not come up again) and even the network is dead. Hm. The simularities seem to be point out a problem when re-initializing the screen (switching back from VT to X - resume). Furthermore, the problems are exactly the same for CVS version. Maybe I was too fast with my conclusions Could you please try the server flag option noPM? OK, I will and write again. Thomas ___ Xpert mailing list [EMAIL PROTECTED] http://XFree86.Org/mailman/listinfo/xpert
[Xpert]Re: SiS630 - the neverending story
I wrote: Egbert, could you shortly describe what exactly you changed in the xfree drive a) for fixing that rectangle bug, Never mind, already found your len-- b) for making in work on LCD panels? I guess this is all in sis_bios, I just copied the CVS files over the 4.1 ones and started the creation of the world. We'll see.. Thomas -- Thomas Winischhofer Vienna/Austria Check it out: mailto:[EMAIL PROTECTED] *** http://www.webit.com/tw ICQ# 63288080 ___ Xpert mailing list [EMAIL PROTECTED] http://XFree86.Org/mailman/listinfo/xpert