On Thu, May 12, 2005 at 10:59:50AM -0400, Adam Jackson wrote:
 > On Thursday 12 May 2005 03:13, Dave Airlie wrote:
 > > Just missed most of this, but we do have drm_device_is_agp(dev) in the
 > > drm, only the CVS radeon uses this at present as the DDX can tell it
 > > also...
 > >
 > > But on Linux it just does..
 > > pci_find_capability(dev->pdev, PCI_CAP_ID_AGP);
 > >
 > > which sounds like your chip says it is AGP but is connected over a PCI
 > > bus..
 > 
 > The PCI G450s are funky.  The chip itself is AGP, but the AGP bus it's on 
 > only 
 > extends out to the PCI-AGP bridge chip on the card itself.  In other words:
 > 
 > Host Bridge --[PCI]-- G450 Bridge ==[AGP]== G450
 > 
 > So pci_find_capability isn't right, because it really is an AGP device, 
 > there's just no accessible GART.  Fortunately the bridge chip is known to be 
 > sane (ie, appears topologically between the GPU chip and the host bridge), 
 > so 
 > he should be able to walk the bus towards the root, find his bridge, and 
 > fall 
 > back to PCI operation based on that.
 > 
 > Or at least that's how I remember the discussion going, right Ian?

This rang a bell.. The ATI FireGL drivers have some funky
agpgart workaround, though it looks prone to false-positives..

agp_generic_agp_v2_enable() contains this addition..

#ifdef FGL_FIX
            /* AGP 1x or 2x or 4x - at least one of this list */
            /* mga g450 pci can be uncovered this way */
            if (!(scratch & 7))
                continue;
#endif /* FGL_FIX */

...

#ifdef FGL_FIX
    /* set AGP enable bit - only if a valid mode was determined */
    /* (a way to unhide mga g450 pci) */
    if (command & 7)
#endif


                Dave



-------------------------------------------------------
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_id=7393&alloc_id=16281&op=click
--
_______________________________________________
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to