Greetings,
It appears that DRI does not quite support AGP 8x and AGP3.0
in general, please correct me if I'm wrong.
I've made this quick and dirty patch for Radeon driver only.
I understand that it is not perfect as it has to be copied
into every other driver. A better solution is needed IMHO.
As a side note I'm now getting a whooping 1% improvement with
AGP 8x according to ut2003 benchmark. I wonder is there is
something else I should look at. BTW I'm running Radeon 9200
with linux-2.6.0-test9 and the latest (as of today) DRI CVS.
Also AGPFastWrite locks up my machine hard, is this to be expected?
Regards,
Dmitri
diff -r -x CVS
DRI-CVS/xc/xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_dri.c
DRI-CVS.new/xc/xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_dri.c
723,726c723,758
< switch (info->agpMode) {
< case 4: mode |= RADEON_AGP_4X_MODE;
< case 2: mode |= RADEON_AGP_2X_MODE;
< case 1: default: mode |= RADEON_AGP_1X_MODE;
---
>
> if (mode & RADEON_AGP_MODE_3_0) {
> switch (info->agpMode) {
> case 8:
> mode |= RADEON_AGP3_8X_MODE;
> break;
> case 4:
> mode |= RADEON_AGP3_4X_MODE;
> break;
> default:
> xf86DrvMsg(pScreen->myNum, X_WARNING,
> "[agp] mode x%d not supported in AGP 3.0, forcing 4x mode\n",
> info->agpMode);
> mode |= RADEON_AGP3_4X_MODE;
> break;
> }
> } else {
> switch (info->agpMode) {
> case 4:
> mode |= RADEON_AGP2_4X_MODE;
> break;
> case 2:
> mode |= RADEON_AGP2_2X_MODE;
> break;
> case 1:
> mode |= RADEON_AGP2_1X_MODE;
> break;
> default:
> xf86DrvMsg(pScreen->myNum, X_WARNING,
> "[agp] mode x%d not supported in AGP `2.0, forcing 4x mode\n",
> info->agpMode);
> mode |= RADEON_AGP2_4X_MODE;
> break;
> }
diff -r -x CVS
DRI-CVS/xc/xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_dri.h
DRI-CVS.new/xc/xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_dri.h
55c55
< #define RADEON_AGP_MAX_MODE 4
---
> #define RADEON_AGP_MAX_MODE 8
diff -r -x CVS
DRI-CVS/xc/xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_reg.h
DRI-CVS.new/xc/xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_reg.h
73,75c73,78
< # define RADEON_AGP_1X_MODE 0x01
< # define RADEON_AGP_2X_MODE 0x02
< # define RADEON_AGP_4X_MODE 0x04
---
> # define RADEON_AGP2_1X_MODE 0x01
> # define RADEON_AGP2_2X_MODE 0x02
> # define RADEON_AGP2_4X_MODE 0x04
> # define RADEON_AGP3_4X_MODE 0x01
> # define RADEON_AGP3_8X_MODE 0x02
> # define RADEON_AGP_MODE_3_0 0x08
-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive? Does it
help you create better code? SHARE THE LOVE, and help us help
YOU! Click Here: http://sourceforge.net/donate/
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel