On Tue, 2003-08-05 at 18:52, Ian Romanick wrote: > Keith Whitwell wrote: > > Ian Romanick wrote: > >> Michel Dänzer wrote: > >>> On Tue, 2003-07-29 at 22:41, Ian Romanick wrote: > >>> > >>>> 1. I don't like the hard-coding of 2*1024*1024 as the size of the > >>>> indirect buffers. This was copied directly from the R200 driver, > >>>> but I don't like it. We may want to change the size of this buffer > >>>> at some point, and hard-coding the value into the client-side driver > >>>> will make that difficult. > >>>> > >>>> 2. I don't like the hackish handing of the pre-1.3 DRM case. Are > >>>> there other PCI IDs that need the 128MB offset? Do we even support > >>>> the pre-1.3 DRM anymore? If we don't support the pre-1.3 DRM (and > >>>> don't intend to fix the support), I'd like to chop all the pre-1.3 > >>>> stuff out. That will make the Radeon driver "look" a lot more like > >>>> the R200 driver. That's a good thing IMHO. > >>> > >>> Why not always use > >>> ( ( INREG( RADEON_MC_AGP_LOCATION ) & 0xffff ) << 16 ) + > >>> dri_priv->agpTexOffset > >>> > >>> as discussed on IRC? This should work with any chip, memory layout, ... > >> > >> Here's my inner conflict about that. If there's a perfectly good way > >> to get this value with a simple INREG, why is there an ioctl to get it > >> as well? > > > > Oversight on my part. There are so many spaces that these things can be > > expressed in, I found one that I knew worked for sure (ie that value in > > the kernel) and ran with it. > > > > Anyway, is an ioctl really heavier-weight than an INREG? > > It probably depends on the platform, I guess. I mis-spoke a bit. The > ioctl and the INREG do result in different values. The ioctl gets the > base address of the indirect buffers and the INREG gives the base of AGP > memory. Either can be used to calculate the base of textures in AGP > memory. I think the INREG method is *better*, even for the R200 > drivers, because it avoids the hard-coded '+ 2*1024*1024'.
It's sure better than that, but maybe Keith meant RADEON_PARAM_AGP_BASE? > Michel, does that INREG work for PCIGART as well? No, good point, you need INREG( RADEON_AIC_LO_ADDR ) + dri_priv->agpTexOffset for that. -- Earthling Michel Dänzer \ Debian (powerpc), XFree86 and DRI developer Software libre enthusiast \ http://svcs.affero.net/rm.php?r=daenzer ------------------------------------------------------- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01 _______________________________________________ Dri-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/dri-devel