From mboxrd@z Thu Jan 1 00:00:00 1970 Message-Id: <5.1.0.14.0.20010826220745.00cf2cb0@pop.noos.fr> To: 9fans@cse.psu.edu From: Philippe Anel Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed Subject: [9fans] G4xx Driver Bundle, /lib/vgadb, Vesa DPMS, Howto and Help needed... Date: Sun, 26 Aug 2001 22:20:54 +0200 Topicbox-Message-UUID: e68cdb70-eac9-11e9-9e20-41e7f4b1d025 Dear Plan9 users You'll find attached the newest version of the G400 and G450 cards driver. Unfortunatly, the 2D accel feature isn't yet implemented for I wasn't home last week. I'm working on it and I ask you to be patient a little more In order to install this driver, you must run this bundle (man bundle) which will copy two files "vgamga4xx.c" in "/sys/src/9/pc" and "mga4xx" in "/sys/src/cmd/aux/vga". After that, you must do the following : In the directory /sys/src/cmd/aux/vga : in the file "data.c", you must add the two next lines to ctlrs[] : --------------------------------------------cut-here---- &mga4xx, &mga4xxhwgc, --------------------------------------------cut-here---- In the file "mkfile", you must add the line to OFILES : --------------------------------------------cut-here---- mga4xx.$O \ --------------------------------------------cut-here---- In the file "vga.h", ou must add the two next lines : --------------------------------------------cut-here---- extern Ctlr mga4xx; extern Ctlr mga4xxhwgc; --------------------------------------------cut-here---- In the directory /sys/src/9/pc (or alphapc - alpha not tested though): in your kernel config file ("pcdisk" for example) add the next line : --------------------------------------------cut-here---- vgamga4xx +cur --------------------------------------------cut-here---- Finally here are a few lines from my /lib/vgadb : --------------------------------------------cut-here---- ctlr 0xC002D="MATROX/Matrox G400" 0xC002D="MATROX/Matrox G450" link=vga ctlr=mga4xx linear=1 hwgc=mga4xxhwgc --------------------------------------------cut-here---- I hope everything will be all right on your config and I wait for any feedback. However, I found two bugs as of yet which I cant seem to be able to get rid off : First, the resolutions 1920x1440x8 and 1800x1350x8 don't work on my computer .. sounds like the hsync and vsync were badly set. But I took the following values (for my vgadb) with the help of xvidtune from X11R6. (Here are my vgadb monitor lines) # # IIYAMA Vision Master Pro 450 # a901ht videobw=300 alias=multisync a901ht = 1920x1440 defaultclock=297 shb=2064 ehb=2288 ht=2640 shs=2030 vrs=1441 vre=1444 vt=1500 hsync=- vsync=- a901ht = 1800x1350 # 60Hz, 89.4KHz defaultclock=220 # 219.5MHz @ 1800x1440 shb=1872 ehb=2128 ht=2248 shs=1824 ehs=1896 vrs=1356 vre=1368 vt=1394 a901ht = 1600x1200 # 72Hz, 90.0KHz defaultclock=200 # 195.9MHz shb=1664 ehb=2088 ht=2144 shs=1648 vrs=1202 vre=1208 vt=1240 a901ht = 1024x768 clock=79 include=1024x768 The driver features some code to take care of the blanking directly with the hardware. In order to take care of the various blanking modes, I've used a variable in plan9.ini, which can take the following values : *dpms=off *dpms=suspend *dpms=standby However, the 32 bits mode runs strangely. The CRTC seems correctly initialized since I can see the mouse cursor. But nothing's printed on the screen !. But when launching "rio", the screen becomes black (the frame buffer seems full) !. When I click on the right mouse button, the menu appears with the current selection on mauve/purple. So, it seems the CRTC and the DAC ( for the pixel clock at least) are correctly initialized. if someone happens to come by an idea, or a patch to fix one or both problems, please, tell me for I'm interested by any suggestion and/or comment. Philippe, PS: I've decided not to support 15 or 16 bits resolutions which I consider being fake modes and only for game addicts (no hard feeling there). If, however, some of you are interested by these color depth, I'll add them when the driver will be finished (after the bugs fix and after the 2d accel feature). PS2: a thousand apologizes to Kenji Okatomo and to Carl D. Todaro for not having replied faster than that. I hope this message will help them to forgive me.