summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvgeny M. Zubok <evgeny.zubok@tochka.ru>2009-06-25 19:48:34 +0400
committerEvgeny M. Zubok <evgeny.zubok@tochka.ru>2009-06-25 19:48:34 +0400
commit2b83d07b90efd15756cf8c4c80f7f60c0e7cee2a (patch)
tree84dfbe8f28fc39581c7818e2b9ee33fe12e766de
parentbf6bdcc1220f3ed8c636e869c4b13e27923a139e (diff)
Revert the using of BIOS defaults for the VRAM/DRAM timings
-rw-r--r--ChangeLog12
-rw-r--r--man/s3.man14
-rw-r--r--src/s3_driver.c25
3 files changed, 20 insertions, 31 deletions
diff --git a/ChangeLog b/ChangeLog
index a13d5b4..ad0b227 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2009-06-25 Evgeny M. zubok <evgeny.zubok@tochka.ru>
+
+ * src/s3_driver.c:
+ Revert the old behaviour when the BIOS settings are used for
+ intialization of DRAM/VRAM timings, i. e. we don't touch the
+ timings during initialization phase until any memory option (like
+ slow_edodram) is specified.
+
+ Add manual page.
+
2009-05-25 Evgeny M. Zubok <evgeny.zubok@tochka.ru>
* src/s3_driver.c:
@@ -20,7 +30,7 @@
* src/s3_shadow.c:
Add shadowFB option. It can be used to speedup drawing when
- hardware acceleration is unwanted or unavailable (for colour depth
+ hardware acceleration is undesirable or unavailable (for colour depth
24 with 24 bpp framebuffer, for example). shadowFB is disabled by
default. Enabling shadowFB option disables HW acceleration. Thanks
to Egor Ivanov for initial porting of shadowFB from s3virge.
diff --git a/man/s3.man b/man/s3.man
index acbd0c9..9109c2a 100644
--- a/man/s3.man
+++ b/man/s3.man
@@ -51,7 +51,7 @@ driver supports PCI video cards based on the following S3 chips:
.PP
Also driver supports the following RAMDACs:
.TP 12
-.B IBM 524A
+.B IBM 524, IBM 524A, IBM 526, IBM 526DB
.TP 12
.B TI ViewPoint 3025
@@ -163,9 +163,9 @@ lower either the resolution or framebuffer's depth or both before the
viewing, otherwise, you will get the allocation error and will not see
the video. For example, with 24 bpp framebuffer and the same
resolution 800x600 the offscreen area will be about 640 kB - it's
-enough for the 640x480 frame. 800x600 with the 16bpp framebuffer gives
-about 1110 kB of offscreen area - this allows to upscale up to 768x576
-movies. Note, that all movie resolutions in examples above are
+enough for the 640x480 frame. 800x600 with the 16 bpp framebuffer
+gives about 1110 kB of offscreen area - this allows to upscale up to
+768x576 movies. Note, that all movie resolutions in examples above are
provided as a reference; the movies can have the different aspect
ratios and non-standard dimensions. A total pixel amount is the main
consideration not the certain width and height.
@@ -212,12 +212,12 @@ cycle).
.BI "Option \*qslow_edodram\*q \*q" boolean \*q
Switch to 2-cycle EDO mode. Try this if you encounter pixel
corruption. Using this option will cause a decrease in
-performance. Default: off (1-cycle EDO mode).
+performance. Default: off (BIOS defaults).
.TP
.BI "Option \*qslow_dram\*q \*q" boolean \*q
For Trio and Aurora64V+ chips: increase -RAS Precharge Timing to 3.5
-MCLK. Try this option if you encounter pixel errors. Default: off (2.5
-MCLK).
+MCLK. Try this option if you encounter pixel errors. Default: off
+(BIOS defaults).
.TP
.BI "Option \*qslow_vram\*q \*q" boolean \*q
For Vision964, Vision968 chips: increase -RAS Low Timing to 4.5
diff --git a/src/s3_driver.c b/src/s3_driver.c
index 5d6623f..d5b01bf 100644
--- a/src/s3_driver.c
+++ b/src/s3_driver.c
@@ -1659,35 +1659,14 @@ static Bool S3ModeInit(ScrnInfoPtr pScrn, DisplayModePtr mode)
new->cr66 |= 0x80;
outb(vgaCRReg, new->cr66);
+
if (pS3->SlowDRAMRefresh)
new->cr3a = 0xb7;
- else
+ else
new->cr3a = 0xb5;
outb(vgaCRIndex, 0x3a);
outb(vgaCRReg, new->cr3a);
- /*
- Set 3.5 MCLKs for -RAS low, 2.5 MCLKs for -RAS precharge,
- disable -CAS/-OE adjustment. It seems that cr68 has different
- format for 96x and TRIOs
- */
- if (!((pS3->Chipset == PCI_CHIP_968) ||
- (pS3->Chipset == PCI_CHIP_964_0) ||
- (pS3->Chipset == PCI_CHIP_964_1))) {
-
- outb(vgaCRIndex, 0x39);
- outb(vgaCRReg, 0xa5);
-
- outb(vgaCRIndex, 0x68);
- tmp = inb(vgaCRReg) & ~0x0f;
- outb(vgaCRReg, tmp | 0x0f);
-
- /* Enable 1-cycle EDO access */
- outb(vgaCRIndex, 0x36);
- tmp = inb(vgaCRReg);
- outb(vgaCRReg, tmp & 0xf3);
- }
-
if (pS3->SlowVRAM) {
/*
* some Diamond Stealth 64 VRAM cards have a problem with