On Mon, Nov 7, 2011 at 2:50 PM, Konrad Rzeszutek Wilk <konrad.wilk at oracle.com> wrote: > On Sun, Nov 06, 2011 at 04:03:21PM +0100, Tormod Volden wrote: >> From: Tormod Volden <debian.tormod at gmail.com> >> >> Some cards report that they support only 4x, in which case they >> should support 2x and 1x as well, according to the AGP spec. > > Have you tested it on other hardware besides your KN133?
No, I don't have access to other AGP hardware. Note that this will only affect the hardware & software/configuration combinations that currently result in the "0x" message. A web search on this message shows that also some radeon cards are bitten by this. So testing on these cards would be welcome. Tormod > >> >> Otherwise a requested 1x or 2x rate will result in 0 being set: >> >> agpgart-via 0000:00:00.0: putting AGP V2 device into 0x mode >> >> For instance ProSavage KN133 [5333:8d02] only reports 4x. >> >> Signed-off-by: Tormod Volden <debian.tormod at gmail.com> >> --- >> ?drivers/char/agp/generic.c | ? 18 ++++++++++++++++++ >> ?1 files changed, 18 insertions(+), 0 deletions(-) >> >> diff --git a/drivers/char/agp/generic.c b/drivers/char/agp/generic.c >> index b072648..c5d04e5 100644 >> --- a/drivers/char/agp/generic.c >> +++ b/drivers/char/agp/generic.c >> @@ -526,6 +526,24 @@ static void agp_v2_parse_one(u32 *requested_mode, u32 >> *bridge_agpstat, u32 *vga_ >> ? ? ? ? ? ? ? break; >> ? ? ? } >> >> + ? ? /* Some graphic cards report they only support 4x, however the AGP 2.0 >> spec >> + ? ? ?* (section 4.1.1) says components must support the lower speeds as >> well. >> + ? ? ?*/ >> + ? ? switch (*vga_agpstat & 7) { >> + ? ? case 4: >> + ? ? ? ? ? ? *vga_agpstat |= (AGPSTAT2_2X | AGPSTAT2_1X); >> + ? ? ? ? ? ? printk(KERN_INFO PFX "Graphics card claims to only support x4 >> rate. " >> + ? ? ? ? ? ? ? ? ? ? "Fixing up support for x2 & x1\n"); >> + ? ? ? ? ? ? break; >> + ? ? case 2: >> + ? ? ? ? ? ? *vga_agpstat |= AGPSTAT2_1X; >> + ? ? ? ? ? ? printk(KERN_INFO PFX "Graphics card claims to only support x2 >> rate. " >> + ? ? ? ? ? ? ? ? ? ? "Fixing up support for x1\n"); >> + ? ? ? ? ? ? break; >> + ? ? default: >> + ? ? ? ? ? ? break; >> + ? ? } >> + >> ? ? ? /* Check the speed bits make sense. Only one should be set. */ >> ? ? ? tmp = *requested_mode & 7; >> ? ? ? switch (tmp) { >> -- >> 1.7.5.4 >> >> _______________________________________________ >> dri-devel mailing list >> dri-devel at lists.freedesktop.org >> http://lists.freedesktop.org/mailman/listinfo/dri-devel >